Nano/Server
VogelT 11 months ago
parent 878a44b78d
commit 2f02138e39

@ -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;
}
}

@ -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<String, Integer> m_paneIDSourceMap = null;
public HashMap<String, Integer> getPaneIDSourceMap() {
if (m_paneIDSourceMap == null) {
m_paneIDSourceMap = new HashMap<String, Integer>();
}
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<PaneRepeat> m_paneRepeatList = new ArrayList<PaneRepeat>();
public List<PaneRepeat> getPaneRepeatList() { return m_paneRepeatList; }
List<PaneInfoTest> m_panelSourceList = new ArrayList<PaneInfoTest>();
public List<PaneInfoTest> 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<PaneInfoTest> i_paneInfoList = null;
public int getPaneRepeatID() {
return i_paneRepeatID;
}
public void setPaneRepeatID(int paneRepeatID) {
i_paneRepeatID = paneRepeatID;
}
public List<PaneInfoTest> getPaneInfoList() {
return i_paneInfoList;
}
public void setPaneInfoList(List<PaneInfoTest> 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<PaneInfoTest> paneInfoList = null;
PaneRepeat paneRepeat = new PaneRepeat();
int panelID = 0;
for (int x = 0; x < matrixX; x++) {
paneInfoList = new ArrayList<PaneInfoTest>();
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}"; }
// ------------------------------------------------------------------------

@ -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;
}
}

@ -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<Panel> 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<String, PanelInfo> m_panelIDPanelInfoTargetMap = null;
public Hashtable<String, PanelInfo> getPanelIDPanelInfoTargetMap() {
if (m_panelIDPanelInfoTargetMap == null) {
m_panelIDPanelInfoTargetMap = new Hashtable<String, PanelInfo>();
}
return m_panelIDPanelInfoTargetMap;
}
// Hashtable<String, PanelInfo> m_panelIDPanelInfoTargetMap = null;
// public Hashtable<String, PanelInfo> getPanelIDPanelInfoTargetMap() {
// if (m_panelIDPanelInfoTargetMap == null) {
// m_panelIDPanelInfoTargetMap = new Hashtable<String, PanelInfo>();
// }
// 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<Panel> 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<ComponentNode> componentNodeList = new ArrayList<ComponentNode>();
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<PanelInfo> paneInfoList = null;
PaneRepeat paneRepeat = new PaneRepeat();
int panelID = 0;
for (int x = 0; x < matrixX; x++) {
row = new ROWNode();
paneInfoList = new ArrayList<PanelInfo>();
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<PaneRepeat> m_paneRepeatList = null;
public List<PaneRepeat> getPaneRepeatList() {
if (m_paneRepeatList == null) {
m_paneRepeatList = new ArrayList<PaneRepeat>();
}
return m_paneRepeatList;
}
private List<PanelInfo> m_panelInfoListSource = null;
public List<PanelInfo> getPanelInfoListSource() {
if (m_panelInfoListSource == null) {
m_panelInfoListSource = new ArrayList<PanelInfo>();
}
return m_panelInfoListSource;
}
// private List<PanelInfo> m_panelInfoListTarget = null;
// public List<PanelInfo> getPanelInfoListTarget() {
// if (m_panelInfoListTarget == null) {
// m_panelInfoListTarget = new ArrayList<PanelInfo>();
// }
// return m_panelInfoListTarget;
// }
/**
* Inner Class
*/
public class PaneRepeat {
private int i_paneRepeatID = 0;
private List<PanelInfo> i_panelInfoList = null;
public int getPaneRepeatID() {
return i_paneRepeatID;
}
public void setPaneRepeatID(int paneRepeatID) {
i_paneRepeatID = paneRepeatID;
}
public List<PanelInfo> getPanelInfoList() {
return i_panelInfoList;
}
public void setPanelInfoList(List<PanelInfo> 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}"; }
// ------------------------------------------------------------------------

@ -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;
}

@ -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

@ -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

@ -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

@ -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

@ -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

@ -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

@ -2,5 +2,7 @@
<resource name="literals" package=""/>
<resource name="literalsTooltip" package="tooltip"/>
<resource name="literalsWorkplace" package="workplace"/>
<resource name="literalsNanoleaf" package="nanoleaf"/>
<resource name="literalsPbc" package="pbc"/>
</resources>

@ -5,31 +5,32 @@
<t:rowtitlebar id="g_2" />
<t:rowheader id="g_3" />
<t:rowbodypane id="g_4" >
<t:row id="g_6" >
<t:coldistance id="g_11" />
<t:pane id="g_8" actionListener="#{d.DragDropPaneBean.onPaneSource}" border="left:1;right:1;top:1;bottom:1;color:#a5a5a5" dragsend="NANO" height="60" invokeevent="click" width="60" >
<t:rowdistance id="g_9" />
<t:row id="g_17" >
<t:coldistance id="g_7" />
<t:label id="g_15" reference="584565" text="584565" />
<t:row id="g_7" >
<t:repeat id="g_8" listbinding="#{d.DragDropPaneBean.panelSourceList}" >
<t:pane id="g_9" border=".{border}" dragsend=".{drangsendSource}" height="60" reference=".{paneID}" width="60" >
<t:rowdistance id="g_13" />
<t:row id="g_10" >
<t:coldistance id="g_11" width="50%" />
<t:label id="g_12" text=".{nanoleafID}" />
</t:row>
</t:pane>
<t:coldistance id="g_13" />
<t:pane id="g_19" actionListener="#{d.DragDropPaneBean.onPaneSource}" border="left:1;right:1;top:1;bottom:1;color:#a5a5a5" height="60" invokeevent="click" width="60" >
<t:rowdistance id="g_20" />
<t:row id="g_21" >
<t:coldistance id="g_22" />
<t:label id="g_23" reference="484565" text="584565" />
<t:coldistance id="g_14" />
</t:repeat>
</t:row>
</t:pane>
<t:rowdistance id="g_43" height="40" />
<t:repeat id="g_45" listbinding="#{d.DragDropPaneBean.paneRepeatList}" >
<t:row id="g_47" >
<t:repeat id="g_49" listbinding=".{paneInfoList}" >
<t:pane id="g_51" actionListener="#{d.DragDropPaneBean.onDropSendPaneTarget}" border=".{border}" dragsend=".{drangsendSource}" dropreceive="NANOLEAF" height="60" reference=".{reference}" tooltip=".{reference}" width="60" >
<t:rowdistance id="g_52" />
<t:row id="g_53" >
<t:coldistance id="g_54" width="50%" />
<t:label id="g_55" text=".{nanoleafID}" />
</t:row>
<t:rowdistance id="g_10" height="40" />
<t:row id="g_25" >
<t:coldistance id="g_12" />
<t:pane id="g_27" >
<t:row id="g_14" />
</t:pane>
</t:repeat>
</t:row>
</t:repeat>
</t:rowbodypane>
</t:layoutdefinition>

@ -42,6 +42,7 @@
<t:label id="g_103" text="Color Setter:" width="100" />
<t:colorfield id="g_111" flush="true" value="#{d.PanelConfigBean.color}" width="100" />
<t:coldistance id="g_115" />
<t:toggle id="g_174" actionListener="#{d.PanelConfigBean.onCheckZurodnung}" flush="true" imagefalse="/eclntjsfserver.images.iconssvg.toggleoff.#ff0000.36x24.ccsvg" imagenull="/eclntjsfserver.images.iconssvg.toggleoff.#c0c0c0.36x24.ccsvg" imagetrue="/eclntjsfserver.images.iconssvg.toggleon.#00ff00.36x24.ccsvg" selected="#{d.PanelConfigBean.startZuordnung}" text="Start Zuordnung" />
<t:label id="g_109" width="60" />
</t:row>
</t:splitpanesplit>
@ -95,20 +96,35 @@
<t:row id="g_69" >
<t:scrollpane id="g_76" height="100" width="100%" >
<t:rowdistance id="g_79" />
<t:row id="g_77" >
<t:dynamiccontent id="g_80" contentbinding="#{d.PanelConfigBean.dynPanelList}" />
<t:row id="g_125" >
<t:repeat id="g_140" listbinding="#{d.PanelConfigBean.panelInfoListSource}" >
<t:pane id="g_141" border=".{border}" dragsend=".{drangsendSource}" height="60" reference=".{panelID}" width="60" >
<t:rowdistance id="g_142" />
<t:row id="g_143" >
<t:coldistance id="g_144" width="50%" />
<t:label id="g_145" text=".{panelNanoleafID}" />
</t:row>
</t:pane>
<t:coldistance id="g_146" />
</t:repeat>
</t:row>
<t:rowdistance id="g_81" />
</t:scrollpane>
</t:row>
<t:rowdistance id="g_71" height="15" />
<t:row id="g_51" >
<t:pane id="g_87" >
<t:row id="g_88" />
<t:rowdistance id="g_91" height="50%" />
<t:rowdynamiccontent id="g_89" contentbinding="#{d.PanelConfigBean.dynMatrixPanels}" />
<t:repeat id="g_165" listbinding="#{d.PanelConfigBean.paneRepeatList}" >
<t:row id="g_166" >
<t:repeat id="g_167" listbinding=".{panelInfoList}" >
<t:pane id="g_168" actionListener="#{d.PanelConfigBean.onDropPanelActions}" border=".{border}" dropreceive="NANOLEAF" height="60" reference=".{panelID}" width="60" >
<t:rowdistance id="g_169" />
<t:row id="g_170" >
<t:coldistance id="g_171" width="50%" />
<t:label id="g_172" text=".{panelNanoleafID}" />
</t:row>
</t:pane>
</t:repeat>
</t:row>
</t:repeat>
</t:rowbodypane>
</t:layoutdefinition>
Loading…
Cancel
Save