diff --git a/src/main/java/de/examples/StringTesterClass.java b/src/main/java/de/examples/StringTesterClass.java new file mode 100644 index 0000000..01d3972 --- /dev/null +++ b/src/main/java/de/examples/StringTesterClass.java @@ -0,0 +1,59 @@ +package de.examples; + +import de.nanoleaf.tools.panelconfig.MatrixInfo; +import de.tvo.tools.StringUtil; + +public class StringTesterClass { + + public StringTesterClass() { + String ref = "#{d.PanelConfigBean.paneRepeatList[1].panelInfoList[2].panelID}"; + + + MatrixInfo info = createMatrixInfo(ref); + } + + public static void main(String[] args) { + new StringTesterClass(); + + } + + + private MatrixInfo createMatrixInfo(String ref) { + MatrixInfo matrixInfo = null; + // #{d.PanelConfigBean.paneRepeatList[1].panelInfoList[2].panelID} + int x = -1; + int y = -1; + + int lastPointStart = 0; + int lastPointEnde = 0; + String lastString = ""; + int counterStart = 0; + int counterEnde = 0; + + counterStart = StringUtil.getCountLetter(ref, '['); + counterEnde = StringUtil.getCountLetter(ref, ']'); + + if (counterStart == counterEnde) { + for (int p = 0; p < counterStart; p++) { + lastPointStart = ref.indexOf("["); + lastPointEnde = ref.indexOf("]"); + + if (x == -1) { + lastString = ref.substring(lastPointStart +1, lastPointEnde); + + x = Integer.parseInt(lastString); + //System.out.println("X: " + x); + } else { + lastString = ref.substring(lastPointStart +1, lastPointEnde); + y = Integer.parseInt(lastString); + //System.out.println("Y: " + y); + } + ref = ref.substring(lastPointEnde +1); + //System.out.println(ref); + } + matrixInfo = new MatrixInfo(x, y); + } + return matrixInfo; + } + +} diff --git a/src/main/java/de/examples/components/DragDropPaneBean.java b/src/main/java/de/examples/components/DragDropPaneBean.java index 82e2041..9310503 100644 --- a/src/main/java/de/examples/components/DragDropPaneBean.java +++ b/src/main/java/de/examples/components/DragDropPaneBean.java @@ -1,48 +1,165 @@ package de.examples.components; import java.io.Serializable; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.concurrent.ThreadLocalRandom; + import org.eclnt.editor.annotations.CCGenClass; +import org.eclnt.jsfserver.defaultscreens.Statusbar; +import org.eclnt.jsfserver.elements.events.BaseActionEventDrop; +import org.eclnt.jsfserver.elements.events.BaseActionEventInvoke; import org.eclnt.jsfserver.pagebean.PageBean; -import org.eclnt.jsfserver.base.faces.event.ActionEvent; - @CCGenClass (expressionBase="#{d.DragDropPaneBean}") public class DragDropPaneBean extends PageBean implements Serializable { - public void onPaneSource(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { - - System.out.println("Hier"); + public void onDropSendPaneTarget(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + if (event instanceof BaseActionEventDrop) + { + + Statusbar.outputSuccess("Drop-Event was processed: " + event.getClass().getName()); + BaseActionEventDrop baed = (BaseActionEventDrop)event; + String dragInfo = baed.getDragInfo(); + + System.out.println(baed.getSourceReference()); + + if (dragInfo.startsWith("NANOLEAF:")) + { + String nanoID = dragInfo.substring("NANOLEAF:".length()); + System.out.println("NanoLeaf ID: " + nanoID); + int paneID = 0; + try { +// + paneID = getPaneIDSourceMap().get(nanoID); +// + } catch (Exception e) { + e.printStackTrace(); + } + + System.out.println("Pane ID " + paneID); +// + PaneInfoTest paneInfoTest = getPanelSourceList().get(paneID); + + int posX = 1; + int posY = 2; + + getPaneRepeatList().get(posX).getPaneInfoList().set(posY, paneInfoTest); + + System.out.println("Ziel: "); + System.out.println("Drop: " + dragInfo); + } + } } + + HashMap m_paneIDSourceMap = null; + + public HashMap getPaneIDSourceMap() { + if (m_paneIDSourceMap == null) { + m_paneIDSourceMap = new HashMap(); + } + return m_paneIDSourceMap; + } + + int m_yMatrix = 7; + public int getYMatrix() { return m_yMatrix; } + public void setYMatrix(int value) { this.m_yMatrix = value; } + + int m_xMatrix = 7; + public int getXMatrix() { return m_xMatrix; } + public void setXMatrix(int value) { this.m_xMatrix = value; } + + int m_countPanels = 15; + public int getCountPanels() { return m_countPanels; } + public void setCountPanels(int value) { this.m_countPanels = value; } + + List m_paneRepeatList = new ArrayList(); + public List getPaneRepeatList() { return m_paneRepeatList; } + + List m_panelSourceList = new ArrayList(); + public List getPanelSourceList() { return m_panelSourceList; } + + + - public class PaneInfo { - int i_paneNr; - public int getPaneNr() { return i_paneNr; } - public void setPaneNr(int value) { this.i_paneNr = value; } - int i_nanoleafID; - public int getNanoleafID() { return i_nanoleafID; } - public void setNanoleafID(int value) { this.i_nanoleafID = value; } - + // ------------------------------------------------------------------------ + // inner classes + // ------------------------------------------------------------------------ + + public class PaneRepeat { + private int i_paneRepeatID = 0; + private List i_paneInfoList = null; + public int getPaneRepeatID() { + return i_paneRepeatID; + } + public void setPaneRepeatID(int paneRepeatID) { + i_paneRepeatID = paneRepeatID; + } + public List getPaneInfoList() { + return i_paneInfoList; + } + public void setPaneInfoList(List paneInfoList) { + i_paneInfoList = paneInfoList; + } + + + + } + + public class PaneInfoTest { + + private int i_paneID = 0; + private String i_color = null; + private String i_border = null; + private String i_reference = null; + Integer i_nanoleafID; String i_drangsendSource; + + + public int getPaneID() { return i_paneID; } + public void setPaneID(int paneID) { i_paneID = paneID; } + + public String getColor() { return i_color; } + public void setColor(String color) { + i_color = color; + createBorder(); + } + + public String getBorder() { return i_border; } + public void setBorder(String border) { i_border = border; } + + public String getReference() { return i_reference; } + public void setReference(String reference) { i_reference = reference; } + + public Integer getNanoleafID() { return i_nanoleafID; } + public void setNanoleafID(Integer value) { this.i_nanoleafID = value; } + public String getDrangsendSource() { return i_drangsendSource; } public void setDrangsendSource(String value) { this.i_drangsendSource = value; } + + + public void createBorder() { + String border = "left:1;right:1;top:1;bottom:1;color:" + getColor(); + + setBorder(border); + } + + public PaneInfoTest(int paneID) { + this.i_paneID = paneID; + } + } - - - - - // ------------------------------------------------------------------------ - // inner classes - // ------------------------------------------------------------------------ - - /* Listener to the user of the page bean. */ + + /* Listener to the user of the page bean. */ public interface IListener extends Serializable { } @@ -57,11 +174,80 @@ public class DragDropPaneBean // constructors & initialization // ------------------------------------------------------------------------ - public DragDropPaneBean() - { + public DragDropPaneBean() { + + createSourcePanels(getCountPanels()); + try { + createDynTargetPanels(getXMatrix(), getYMatrix()); + } catch (Exception e) { + e.printStackTrace(); + } + } - public String getPageName() { return "/examples/componets/dragDropPane.xml"; } + + private void createDynTargetPanels(int matrixX, int matrixY) throws Exception { + System.out.println("createDynTargetPanels: " + matrixX + "-" + matrixY); + + List paneInfoList = null; + PaneRepeat paneRepeat = new PaneRepeat(); + int panelID = 0; + + for (int x = 0; x < matrixX; x++) { + + paneInfoList = new ArrayList(); + paneRepeat = new PaneRepeat(); + + for (int y = 0; y < matrixY; y++) { + PaneInfoTest paneInfoTest = new PaneInfoTest(panelID); + paneInfoTest.setReference("REF_XY|" + x + "|" + y); + paneInfoTest.setColor("#a5a5a5"); + paneInfoTest.setNanoleafID(panelID); + +// paneInfoTest.setDrangsendSource("#{d.DragDropPaneBean.onDragSendPaneSource}"); + + paneInfoList.add(paneInfoTest); + + + panelID++; + + } + paneRepeat.setPaneRepeatID(x); + paneRepeat.setPaneInfoList(paneInfoList); + + getPaneRepeatList().add(paneRepeat); + + } + } + + + + + + + private void createSourcePanels(int countPanels) { + + ThreadLocalRandom random = ThreadLocalRandom.current(); + + for (int p = 0; p < countPanels; p++) { + PaneInfoTest paneInfoTest = null; + Integer randomID = random.nextInt(100000, 999999); + paneInfoTest = new PaneInfoTest(p); + paneInfoTest.setNanoleafID(randomID); + paneInfoTest.setColor("#a5a5a5"); + paneInfoTest.setDrangsendSource("NANOLEAF:" + randomID); + + getPaneIDSourceMap().put(randomID.toString(), Integer.valueOf(p)); + + getPanelSourceList().add(paneInfoTest); + + } + + } + + + + public String getPageName() { return "/examples/componets/dragDropPane.xml"; } public String getRootExpressionUsedInPage() { return "#{d.DragDropPaneBean}"; } // ------------------------------------------------------------------------ diff --git a/src/main/java/de/nanoleaf/tools/panelconfig/MatrixInfo.java b/src/main/java/de/nanoleaf/tools/panelconfig/MatrixInfo.java index 0b07292..a7f2a1f 100644 --- a/src/main/java/de/nanoleaf/tools/panelconfig/MatrixInfo.java +++ b/src/main/java/de/nanoleaf/tools/panelconfig/MatrixInfo.java @@ -2,38 +2,32 @@ package de.nanoleaf.tools.panelconfig; public class MatrixInfo { - int m_matrixCountX = 0; - int m_matrixCountY = 0; - int m_countPanels = 1; - - public MatrixInfo(int countPanels, int matrixCountX, int matrixCountY) { - this.m_countPanels = countPanels; - this.m_matrixCountX = matrixCountX; - this.m_matrixCountY = matrixCountY; + int m_matrixX = 0; + int m_matrixY = 0; + //int m_Panels = 1; + + public MatrixInfo(int matrixX, int matrixY) { + //this.m_Panels = Panels; + this.m_matrixX = matrixX; + this.m_matrixY = matrixY; } - public int getMatrixCountX() { - return m_matrixCountX; + public int getMatrixX() { + return m_matrixX; } - public void setMatrixCountX(int matrixCountX) { - m_matrixCountX = matrixCountX; + public void setMatrixX(int matrixX) { + m_matrixX = matrixX; } - public int getMatrixCountY() { - return m_matrixCountY; + public int getMatrixY() { + return m_matrixY; } - public void setMatrixCountY(int matrixCountY) { - m_matrixCountY = matrixCountY; + public void setMatrixY(int matrixY) { + m_matrixY = matrixY; } - public int getCountPanels() { - return m_countPanels; - } - public void setCountPanels(int countPanels) { - m_countPanels = countPanels; - } } diff --git a/src/main/java/de/nanoleaf/tools/panelconfig/PanelConfigBean.java b/src/main/java/de/nanoleaf/tools/panelconfig/PanelConfigBean.java index 1923e93..d327417 100644 --- a/src/main/java/de/nanoleaf/tools/panelconfig/PanelConfigBean.java +++ b/src/main/java/de/nanoleaf/tools/panelconfig/PanelConfigBean.java @@ -3,32 +3,60 @@ package de.nanoleaf.tools.panelconfig; import java.io.Serializable; import java.util.ArrayList; import java.util.Hashtable; -import java.util.Iterator; import java.util.List; import org.eclnt.editor.annotations.CCGenClass; import org.eclnt.jsfserver.base.faces.event.ActionEvent; +import org.eclnt.jsfserver.defaultscreens.OKPopup; import org.eclnt.jsfserver.defaultscreens.Statusbar; -import org.eclnt.jsfserver.elements.BaseActionEvent; -import org.eclnt.jsfserver.elements.componentnodes.COLDISTANCENode; import org.eclnt.jsfserver.elements.componentnodes.PANENode; -import org.eclnt.jsfserver.elements.componentnodes.ROWNode; import org.eclnt.jsfserver.elements.events.BaseActionEventDrop; import org.eclnt.jsfserver.elements.events.BaseActionEventInvoke; -import org.eclnt.jsfserver.elements.impl.DYNAMICCONTENTBinding; import org.eclnt.jsfserver.elements.impl.ROWDYNAMICCONTENTBinding; import org.eclnt.jsfserver.elements.impl.ROWDYNAMICCONTENTBinding.ComponentNode; import org.eclnt.jsfserver.elements.util.ValidValuesBinding; import org.eclnt.jsfserver.pagebean.PageBean; +import de.examples.components.DragDropPaneBean.PaneInfoTest; +import de.examples.components.DragDropPaneBean.PaneRepeat; import de.nanoleaf.server.ColorEnum; import de.nanoleaf.server.NanoleafDeviceServer; +import de.tvo.tools.StringUtil; import io.github.rowak.nanoleafapi.Panel; import io.github.rowak.nanoleafapi.ShapeType; @CCGenClass (expressionBase="#{d.PanelConfigBean}") -public class PanelConfigBean extends PageBean implements Serializable { +public class PanelConfigBean extends PageBean implements Serializable { + public void onCheckZurodnung(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + + if (getColor() == null || getColor().equals("#000000") || getColor().equals(getDefaultPanelColor())) { + OKPopup.createInstance("Start Zuordnung Farbe", "Bitte wählen Sie eine Farbe für die Zuordnung der Panels."); + m_startZuordnung = false; + return; + } else { + selectNextPanel(); + + } + } + + private void selectNextPanel() { + if (getPanelInfoListSource().size() > 0) { + getPanelInfoListSource().get(0).setColor(getColor()); + } else { + setColor("#000000"); + m_startZuordnung = false; + } + } + + boolean m_startZuordnung; + public boolean getStartZuordnung() { return m_startZuordnung; } + public void setStartZuordnung(boolean value) { this.m_startZuordnung = value; } + + final String m_defaultPanelColor = "#a5a5a5"; + public String getDefaultPanelColor() { return m_defaultPanelColor; } + + String m_color = "#000000"; public String getColor() { return m_color; } @@ -147,20 +175,25 @@ public class PanelConfigBean extends PageBean implements Serializable { return getNanoPaneNodeList().get(id); } - DYNAMICCONTENTBinding m_dynPanelList = new DYNAMICCONTENTBinding(); - public DYNAMICCONTENTBinding getDynPanelList() { return m_dynPanelList; } - +// DYNAMICCONTENTBinding m_dynPanelList = new DYNAMICCONTENTBinding(); +// public DYNAMICCONTENTBinding getDynPanelList() { return m_dynPanelList; } + + + public void onPanelsCreate(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { List panelList = null; if (getNanoleafDeviceServer() != null) { panelList = getNanoleafDeviceServer().getNanoLeafPanels(); } + // TODO: createPanelsList(panelList); } - public void onCheckAndCreate(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + + public void onCheckAndCreate(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + // TODO: createPanelMatrix(getAnzahlPanels(), getMatrixX(), getMatrixY()); } @@ -221,33 +254,33 @@ public class PanelConfigBean extends PageBean implements Serializable { return m_panelIDPanelInfoSourceMap; } - Hashtable m_panelIDPanelInfoTargetMap = null; - public Hashtable getPanelIDPanelInfoTargetMap() { - if (m_panelIDPanelInfoTargetMap == null) { - m_panelIDPanelInfoTargetMap = new Hashtable(); - } - return m_panelIDPanelInfoTargetMap; - } +// Hashtable m_panelIDPanelInfoTargetMap = null; +// public Hashtable getPanelIDPanelInfoTargetMap() { +// if (m_panelIDPanelInfoTargetMap == null) { +// m_panelIDPanelInfoTargetMap = new Hashtable(); +// } +// return m_panelIDPanelInfoTargetMap; +// } - public NanoPANENode createNanoLeafNanoPANENode(int listNr, Panel panel) { - NanoPANENode nanoPANENode = null; - PanelInfo panelInfo = new PanelInfo(listNr, panel); - Integer panelID = panel.getId(); - - nanoPANENode = new NanoPANENode(panelInfo); - nanoPANENode.setActionListener("#{d.PanelConfigBean.onPanelSourceAction}"); - nanoPANENode.setInvokeevent("click"); - nanoPANENode.setHeight(60); - nanoPANENode.setWidth(60); - nanoPANENode.setBorder("left:2;right:2;top:2;bottom:2;color:#ff0000"); - nanoPANENode.setDragsend("NANOLEAF:" + panelID); - nanoPANENode.setReference(panelID.toString()); - - - - return nanoPANENode; - } +// public NanoPANENode createNanoLeafNanoPANENode(int listNr, Panel panel) { +// NanoPANENode nanoPANENode = null; +// PanelInfo panelInfo = new PanelInfo(listNr, panel); +// Integer panelID = panel.getId(); +// +// nanoPANENode = new NanoPANENode(panelInfo); +// nanoPANENode.setActionListener("#{d.PanelConfigBean.onPanelSourceAction}"); +// nanoPANENode.setInvokeevent("click"); +// nanoPANENode.setHeight(60); +// nanoPANENode.setWidth(60); +// nanoPANENode.setBorder("left:2;right:2;top:2;bottom:2;color:#ff0000"); +// nanoPANENode.setDragsend("NANOLEAF:" + panelID); +// nanoPANENode.setReference(panelID.toString()); +// +// +// +// return nanoPANENode; +// } private void createPanelsList(List panelList) { @@ -265,71 +298,70 @@ public class PanelConfigBean extends PageBean implements Serializable { setAnzahlPanels(panelList.size()); - ROWNode row = new ROWNode(); - COLDISTANCENode coldistanceNode = null; - NanoPANENode paneNode = null; - - + + PanelInfo panelInfo = null; int panelnr = 0; for (int p = 0; p < panelList.size(); p++) { Panel panel = panelList.get(p); - panelnr++; - paneNode = createNanoLeafNanoPANENode(panelnr, panel); + panelInfo = new PanelInfo(panelnr, panel); + panelInfo.setColor(getDefaultPanelColor()); - ROWNode rowInt = new ROWNode(); - paneNode.addSubNode(rowInt); + panelnr++; + + getPanelIDPanelInfoSourceMap().put(panelInfo.getPanelNanoleafID()+"", panelInfo); - row.addSubNode(paneNode); - coldistanceNode = new COLDISTANCENode(); - coldistanceNode.setWidth(10); - row.addSubNode(coldistanceNode); + getPanelInfoListSource().add(panelInfo); } - getDynPanelList().setContentNode(row); + } - - - private void createPanelMatrix(int anzahlPanels, int matrixX, int matrixY) { - - int anzahlPanelMatrix = 0; - + private void createPanelMatrix(int anzahlPanels, int matrixX, int matrixY) { + int anzahlPanelMatrix = 0; + PanelInfo panelInfo = null; anzahlPanelMatrix = matrixX * matrixY; - //List componentNodeList = new ArrayList(); - ROWNode row = null; - PANENode rootPaneNode = new PANENode(); - rootPaneNode.setRowdistance("5"); - NanoPANENode paneNode = null; - COLDISTANCENode coldistanceNode = null; - PanelInfo panelInfo = null; + if (getAnzahlPanels() > anzahlPanelMatrix) { + OKPopup.createInstance("Matrix", "Bitte vergrößern Sie die Matrix."); + return; + } + + + + List paneInfoList = null; + PaneRepeat paneRepeat = new PaneRepeat(); + int panelID = 0; + for (int x = 0; x < matrixX; x++) { - row = new ROWNode(); + + paneInfoList = new ArrayList(); + paneRepeat = new PaneRepeat(); + for (int y = 0; y < matrixY; y++) { panelInfo = new PanelInfo(); - paneNode = new NanoPANENode(panelInfo); - paneNode.setWidth(50); - paneNode.setHeight(50); - paneNode.setBorder("left:2;right:2;top:2;bottom:2;color:#000000"); - paneNode.setDropreceive("NANOLEAF"); - paneNode.setReference("REF_XY:" + x + "|" + y); + panelInfo.setPanelID(panelID); + panelInfo.setReference("REF_XY|" + x + "|" + y); + panelInfo.setColor(getDefaultPanelColor()); + panelInfo.setPanelNanoleafID(panelID); + +// paneInfoTest.setDrangsendSource("#{d.DragDropPaneBean.onDragSendPaneSource}"); - paneNode.setActionListener("#{d.PanelConfigBean.onDropPanelActions}"); - coldistanceNode = new COLDISTANCENode(); - coldistanceNode.setWidth(5); + paneInfoList.add(panelInfo); - row.addSubNode(paneNode); - row.addSubNode(coldistanceNode); + + panelID++; } + paneRepeat.setPaneRepeatID(x); + paneRepeat.setPanelInfoList(paneInfoList); - rootPaneNode.addSubNode(row); + getPaneRepeatList().add(paneRepeat); } - getDynMatrixPanels().setContentNode(rootPaneNode); - + } + public void onDropPanelActions(ActionEvent event) { if (event instanceof BaseActionEventDrop) @@ -339,17 +371,33 @@ public class PanelConfigBean extends PageBean implements Serializable { BaseActionEventDrop baed = (BaseActionEventDrop)event; String dragInfo = baed.getDragInfo(); + System.out.println(baed.getSourceReference()); + String ref = baed.getSourceReference(); + MatrixInfo matrixInfo = createMatrixInfo(ref); - - System.out.println(baed.getSourceReference()); - - if (dragInfo.startsWith("NANOLEAF:")) - { - System.out.println("Ziel: "); - System.out.println("Drop: " + dragInfo); + if (matrixInfo != null) { + + if (dragInfo.startsWith("NANOLEAF:")) + { + String nanoLeafID = dragInfo.substring("NANOLEAF:".length()); + + PanelInfo panelInfo = getPanelIDPanelInfoSourceMap().get(nanoLeafID); + panelInfo.setColor(getDefaultPanelColor()); + + getPaneRepeatList().get(matrixInfo.getMatrixX()).getPanelInfoList().set(matrixInfo.getMatrixY(), panelInfo); + + removeNanoLeafFromSource(nanoLeafID); + + selectNextPanel(); + + System.out.println("Source: " + nanoLeafID); + System.out.println("Ziel: "); + System.out.println("Drop: " + dragInfo); + } } + } else if (event instanceof BaseActionEventInvoke) { @@ -357,7 +405,242 @@ public class PanelConfigBean extends PageBean implements Serializable { } } + private void removeNanoLeafFromSource(String nanoLeafID) { + int aktId = 0; + int nanoID = 0; + + nanoID = Integer.parseInt(nanoLeafID); + + for (int p = 0; p < getPanelInfoListSource().size(); p++) { + PanelInfo panelInfo = getPanelInfoListSource().get(p); + + if (panelInfo.getPanelNanoleafID() == nanoID) { + aktId = p; + } + } + + getPanelInfoListSource().remove(aktId); + getPanelIDPanelInfoSourceMap().remove(nanoLeafID); + + + } + private MatrixInfo createMatrixInfo(String ref) { + MatrixInfo matrixInfo = null; + // #{d.PanelConfigBean.paneRepeatList[1].panelInfoList[2].panelID} + int x = -1; + int y = -1; + + int lastPointStart = 0; + int lastPointEnde = 0; + String lastString = ""; + int counterStart = 0; + int counterEnde = 0; + + counterStart = StringUtil.getCountLetter(ref, '['); + counterEnde = StringUtil.getCountLetter(ref, ']'); + + if (counterStart == counterEnde) { + for (int p = 0; p < counterStart; p++) { + lastPointStart = ref.indexOf("["); + lastPointEnde = ref.indexOf("]"); + + if (x == -1) { + lastString = ref.substring(lastPointStart +1, lastPointEnde); + + x = Integer.parseInt(lastString); + //System.out.println("X: " + x); + } else { + lastString = ref.substring(lastPointStart +1, lastPointEnde); + y = Integer.parseInt(lastString); + //System.out.println("Y: " + y); + } + ref = ref.substring(lastPointEnde +1); + //System.out.println(ref); + } + matrixInfo = new MatrixInfo(x, y); + } + return matrixInfo; + } + + + private List m_paneRepeatList = null; + public List getPaneRepeatList() { + if (m_paneRepeatList == null) { + m_paneRepeatList = new ArrayList(); + } + return m_paneRepeatList; + } + + private List m_panelInfoListSource = null; + public List getPanelInfoListSource() { + if (m_panelInfoListSource == null) { + m_panelInfoListSource = new ArrayList(); + } + return m_panelInfoListSource; + } + +// private List m_panelInfoListTarget = null; +// public List getPanelInfoListTarget() { +// if (m_panelInfoListTarget == null) { +// m_panelInfoListTarget = new ArrayList(); +// } +// return m_panelInfoListTarget; +// } + + + /** + * Inner Class + */ + + public class PaneRepeat { + private int i_paneRepeatID = 0; + private List i_panelInfoList = null; + public int getPaneRepeatID() { + return i_paneRepeatID; + } + public void setPaneRepeatID(int paneRepeatID) { + i_paneRepeatID = paneRepeatID; + } + public List getPanelInfoList() { + return i_panelInfoList; + } + public void setPanelInfoList(List panelInfoList) { + i_panelInfoList = panelInfoList; + } + + + + } + + public class PanelInfo { + String i_reference; + public String getReference() { return i_reference; } + public void setReference(String value) { this.i_reference = value; } + + String i_color; + public String getColor() { return i_color; } + public void setColor(String value) { + + this.i_color = value; + createBorder(); + } + + String i_drangsendSource; + public String getDrangsendSource() { return i_drangsendSource; } + public void setDrangsendSource(String value) { this.i_drangsendSource = value; } + + + int m_panelID = 0; + int m_panelNanoleafID = 0; + int m_panelMatrixPosX = 0; + int m_panelMatrixPosY = 0; + String m_panelColor = null; + boolean m_panelActiv = true; + boolean m_panelInit = false; + Panel m_panel; + String m_border = null; + + public PanelInfo() { + + } + + public void createBorder() { + String border = null; + if (getColor().equals(getDefaultPanelColor())) { + border = "left:1;right:1;top:1;bottom:1;color:" + getColor(); + } else { + border = "left:3;right:3;top:3;bottom:3;color:" + getColor(); + } + + setBorder(border); + } + + public PanelInfo(int panelnr, Panel panel) { + this.m_panelID = panelnr; + this.m_panel = panel; + this.m_panelNanoleafID = panel.getId(); + this.m_panelMatrixPosX = panel.getX(); + this.m_panelMatrixPosY = panel.getY(); + this.i_drangsendSource = "NANOLEAF:" + getPanelNanoleafID(); + } + + + public int getPanelID() { + return m_panelID; + } + public void setPanelID(int panelID) { + m_panelID = panelID; + } + + + public int getPanelNanoleafID() { + return m_panelNanoleafID; + } + public void setPanelNanoleafID(int panelNanoleafID) { + m_panelNanoleafID = panelNanoleafID; + } + + + public int getPanelMatrixPosX() { + return m_panelMatrixPosX; + } + public void setPanelMatrixPosX(int panelMatrixPosX) { + m_panelMatrixPosX = panelMatrixPosX; + } + + + public int getPanelMatrixPosY() { + return m_panelMatrixPosY; + } + public void setPanelMatrixPosY(int panelMatrixPosY) { + m_panelMatrixPosY = panelMatrixPosY; + } + + + public String getPanelColor() { + return m_panelColor; + } + public void setPanelColor(String panelColor) { + m_panelColor = panelColor; + } + + + public boolean getPanelActiv() { + return m_panelActiv; + } + public void setPanelActiv(boolean panelActiv) { + m_panelActiv = panelActiv; + } + + + public boolean getPanelInit() { + return m_panelInit; + } + public void setPanelInit(boolean panelInit) { + m_panelInit = panelInit; + } + + public Panel getPanel() { + return m_panel; + } + + public String getBorder() { + return m_border; + } + + public void setBorder(String border) { + m_border = border; + } + + + + } + + + + @Override public String getPageName() { return "/nanoleaf/tools/panelconfig/panelconfig.xml"; } + @Override public String getRootExpressionUsedInPage() { return "#{d.PanelConfigBean}"; } // ------------------------------------------------------------------------ diff --git a/src/main/java/de/nanoleaf/tools/panelconfig/PanelInfo.java b/src/main/java/de/nanoleaf/tools/panelconfig/PanelInfo.java index 9266d53..3aa852c 100644 --- a/src/main/java/de/nanoleaf/tools/panelconfig/PanelInfo.java +++ b/src/main/java/de/nanoleaf/tools/panelconfig/PanelInfo.java @@ -12,6 +12,7 @@ public class PanelInfo { boolean m_panelActiv = true; boolean m_panelInit = false; Panel m_panel; + String m_boarder = null; public PanelInfo() { @@ -84,6 +85,14 @@ public class PanelInfo { public Panel getPanel() { return m_panel; } + + public String getBoarder() { + return m_boarder; + } + + public void setBoarder(String boarder) { + m_boarder = boarder; + } diff --git a/src/main/resources/nanoleaf/literalsNanoleaf.properties b/src/main/resources/nanoleaf/literalsNanoleaf.properties new file mode 100644 index 0000000..9083e45 --- /dev/null +++ b/src/main/resources/nanoleaf/literalsNanoleaf.properties @@ -0,0 +1,4 @@ +#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) +#Created by org.eclnt.editor.resourceeditor.ResourceEditor +#Fri Aug 18 14:40:38 CEST 2017 + diff --git a/src/main/resources/nanoleaf/literalsNanoleaf_de_DE.properties b/src/main/resources/nanoleaf/literalsNanoleaf_de_DE.properties new file mode 100644 index 0000000..16b6ce8 --- /dev/null +++ b/src/main/resources/nanoleaf/literalsNanoleaf_de_DE.properties @@ -0,0 +1,5 @@ +#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) +#Created by cctranslate +#Tue Jul 04 07:04:10 CEST 2017 + + diff --git a/src/main/resources/nanoleaf/literalsNanoleaf_en_US.properties b/src/main/resources/nanoleaf/literalsNanoleaf_en_US.properties new file mode 100644 index 0000000..69aa854 --- /dev/null +++ b/src/main/resources/nanoleaf/literalsNanoleaf_en_US.properties @@ -0,0 +1,4 @@ +#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) +#Created by cctranslate +#Tue Jul 04 07:04:10 CEST 2017 + diff --git a/src/main/resources/pbc/literalsPbc_de_DE.properties b/src/main/resources/pbc/literalsPbc_de_DE.properties new file mode 100644 index 0000000..16b6ce8 --- /dev/null +++ b/src/main/resources/pbc/literalsPbc_de_DE.properties @@ -0,0 +1,5 @@ +#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) +#Created by cctranslate +#Tue Jul 04 07:04:10 CEST 2017 + + diff --git a/src/main/resources/pbc/literalsPbc_en_US.properties b/src/main/resources/pbc/literalsPbc_en_US.properties new file mode 100644 index 0000000..69aa854 --- /dev/null +++ b/src/main/resources/pbc/literalsPbc_en_US.properties @@ -0,0 +1,4 @@ +#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) +#Created by cctranslate +#Tue Jul 04 07:04:10 CEST 2017 + diff --git a/src/main/resources/pbc/literalsWorkplace.properties b/src/main/resources/pbc/literalsWorkplace.properties new file mode 100644 index 0000000..9083e45 --- /dev/null +++ b/src/main/resources/pbc/literalsWorkplace.properties @@ -0,0 +1,4 @@ +#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) +#Created by org.eclnt.editor.resourceeditor.ResourceEditor +#Fri Aug 18 14:40:38 CEST 2017 + diff --git a/src/main/webapp/eclntjsfserver/config/resources.xml b/src/main/webapp/eclntjsfserver/config/resources.xml index 95592a2..c4a3a33 100644 --- a/src/main/webapp/eclntjsfserver/config/resources.xml +++ b/src/main/webapp/eclntjsfserver/config/resources.xml @@ -2,5 +2,7 @@ + + diff --git a/src/main/webapp/examples/componets/dragDropPane.xml b/src/main/webapp/examples/componets/dragDropPane.xml index 17ceb78..a87a58d 100644 --- a/src/main/webapp/examples/componets/dragDropPane.xml +++ b/src/main/webapp/examples/componets/dragDropPane.xml @@ -5,31 +5,32 @@ - - - - - - - + + + + + + + - - - - - - + + - + + + + + + + + + - - - - - + + \ No newline at end of file diff --git a/src/main/webapp/nanoleaf/tools/panelconfig/panelconfig.xml b/src/main/webapp/nanoleaf/tools/panelconfig/panelconfig.xml index c9d7a7e..0e97d0e 100644 --- a/src/main/webapp/nanoleaf/tools/panelconfig/panelconfig.xml +++ b/src/main/webapp/nanoleaf/tools/panelconfig/panelconfig.xml @@ -42,6 +42,7 @@ + @@ -95,20 +96,35 @@ - - + + + + + + + + + + + - - - - - + + + + + + + + + + + \ No newline at end of file