diff --git a/src/main/java/de/games/nanoleaf/tictactoe/TicTacToeBean.java b/src/main/java/de/examples/components/DragDropPaneBean.java similarity index 60% rename from src/main/java/de/games/nanoleaf/tictactoe/TicTacToeBean.java rename to src/main/java/de/examples/components/DragDropPaneBean.java index 0e23f4f..82e2041 100644 --- a/src/main/java/de/games/nanoleaf/tictactoe/TicTacToeBean.java +++ b/src/main/java/de/examples/components/DragDropPaneBean.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.tictactoe; +package de.examples.components; import java.io.Serializable; import org.eclnt.editor.annotations.CCGenClass; @@ -6,12 +6,38 @@ import org.eclnt.jsfserver.pagebean.PageBean; import org.eclnt.jsfserver.base.faces.event.ActionEvent; -@CCGenClass (expressionBase="#{d.TicTacToeBean}") +@CCGenClass (expressionBase="#{d.DragDropPaneBean}") -public class TicTacToeBean +public class DragDropPaneBean extends PageBean implements Serializable { + public void onPaneSource(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + + System.out.println("Hier"); + } + + + 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; } + + + String i_drangsendSource; + public String getDrangsendSource() { return i_drangsendSource; } + public void setDrangsendSource(String value) { this.i_drangsendSource = value; } + + } + + + + + // ------------------------------------------------------------------------ // inner classes // ------------------------------------------------------------------------ @@ -31,12 +57,12 @@ public class TicTacToeBean // constructors & initialization // ------------------------------------------------------------------------ - public TicTacToeBean() + public DragDropPaneBean() { } - public String getPageName() { return "/games/nanoleaf/tictactoe/tictactoe.xml"; } - public String getRootExpressionUsedInPage() { return "#{d.TicTacToeBean}"; } + public String getPageName() { return "/examples/componets/dragDropPane.xml"; } + public String getRootExpressionUsedInPage() { return "#{d.DragDropPaneBean}"; } // ------------------------------------------------------------------------ // public usage diff --git a/src/main/java/de/examples/managedbeans.xml b/src/main/java/de/examples/managedbeans.xml index ec52e03..751ddf1 100644 --- a/src/main/java/de/examples/managedbeans.xml +++ b/src/main/java/de/examples/managedbeans.xml @@ -2,8 +2,11 @@ - + + \ No newline at end of file diff --git a/src/main/java/de/games/managedbeans.xml b/src/main/java/de/games/managedbeans.xml deleted file mode 100644 index 7ced9d4..0000000 --- a/src/main/java/de/games/managedbeans.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/src/main/java/de/games/nanoleaf/lightsswitch/LightsOnOffBean.java b/src/main/java/de/nanoleaf/games/lightswitch/LightsOnOffBean.java similarity index 98% rename from src/main/java/de/games/nanoleaf/lightsswitch/LightsOnOffBean.java rename to src/main/java/de/nanoleaf/games/lightswitch/LightsOnOffBean.java index 2e1f44b..f76681f 100644 --- a/src/main/java/de/games/nanoleaf/lightsswitch/LightsOnOffBean.java +++ b/src/main/java/de/nanoleaf/games/lightswitch/LightsOnOffBean.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.lightsswitch; +package de.nanoleaf.games.lightswitch; import java.io.Serializable; import java.util.ArrayList; @@ -76,7 +76,7 @@ public class LightsOnOffBean random = null; m_countSteps = 0; m_colorButton1 = null; - m_colorButton2= null; + m_colorButton2 = null; m_colorButton3 = null; m_colorButton4 = null; m_colorButton5 = null; @@ -397,7 +397,7 @@ public class LightsOnOffBean } @Override - public String getPageName() { return "/games/nanoleaf/lightswitch/lightsOnOff.jsp"; } + public String getPageName() { return "/nanoleaf/games/lightswitch/lightsOnOff.jsp"; } @Override public String getRootExpressionUsedInPage() { return "#{d.LightsOnOffBean}"; } diff --git a/src/main/java/de/nanoleaf/games/tictactoe/CheckTicTacToe.java b/src/main/java/de/nanoleaf/games/tictactoe/CheckTicTacToe.java new file mode 100644 index 0000000..d585d62 --- /dev/null +++ b/src/main/java/de/nanoleaf/games/tictactoe/CheckTicTacToe.java @@ -0,0 +1,119 @@ +package de.nanoleaf.games.tictactoe; + +import java.util.ArrayList; +import java.util.List; + +public class CheckTicTacToe { + + private class Fields { + + List fieldsList = null; + + + + + public List getFieldsList() { + return fieldsList; + } + + + + + public Fields(int field1, int field2, int field3) { + fieldsList = new ArrayList(); + fieldsList.add(field1); + fieldsList.add(field2); + fieldsList.add(field3); + } + } + + List m_checkList = null; + public List getCheckList() { + if (m_checkList == null) { + m_checkList = new ArrayList(); + } + return m_checkList; + } + + + public CheckTicTacToe() { + initCheckList(); + } + + + private void initCheckList() { + + /** + * ### + * ### + * ### + * + */ + + getCheckList().add(new Fields(1, 2, 3)); + getCheckList().add(new Fields(4, 5, 6)); + getCheckList().add(new Fields(7, 8, 9)); + + getCheckList().add(new Fields(1, 4, 7)); + getCheckList().add(new Fields(2, 5, 6)); + getCheckList().add(new Fields(3, 6, 9)); + + getCheckList().add(new Fields(1, 5, 9)); + getCheckList().add(new Fields(3, 5, 7)); + + } + + + public boolean checkFinal(int[] playerArray) { + + boolean finish = false; + Integer playerlast = 0; + boolean next = false; + //System.out.println("Start Check..."); + List playerList = new ArrayList(); + for (Fields fields: getCheckList()) { + next = false; + finish = false; + playerList = new ArrayList(); + //System.out.println("List: " + fields.getFieldsList().toString()); + for (int f = 0; f < fields.getFieldsList().size(); f++) { + int field = fields.getFieldsList().get(f).intValue(); + + int player = playerArray[field]; + //System.out.println("Find Player: " + player); + if (player == 0) { + next = true; + finish = false; + //System.out.println("NEXT"); + } else { + if (f == 0) { + playerlast = player; + playerList.add(playerlast); + } else { + if (playerlast == player) { + playerList.add(playerlast); + } else { + next = true; + } + + } + } + + if (next) { + break; + } + + } + if (next == false) { + //System.out.println("FINISH"); + finish = true; + //System.out.println("List: " + fields.getFieldsList().toString()); + break; + } + } + + + return finish; + } + +} diff --git a/src/main/java/de/nanoleaf/games/tictactoe/TicTacToeBean.java b/src/main/java/de/nanoleaf/games/tictactoe/TicTacToeBean.java new file mode 100644 index 0000000..94644d7 --- /dev/null +++ b/src/main/java/de/nanoleaf/games/tictactoe/TicTacToeBean.java @@ -0,0 +1,325 @@ +package de.nanoleaf.games.tictactoe; + +import java.io.Serializable; + +import org.eclnt.editor.annotations.CCGenClass; +import org.eclnt.jsfserver.base.faces.event.ActionEvent; +import org.eclnt.jsfserver.pagebean.PageBean; + +import de.tools.ReflectClass; + +@CCGenClass (expressionBase="#{d.TicTacToeBean}") + +public class TicTacToeBean extends PageBean implements Serializable { + + int[] playerArray = new int[10]; + + String m_colorButton1; + public String getColorButton1() { return m_colorButton1; } + public void setColorButton1(String value) { this.m_colorButton1 = value; } + + String m_colorButton2; + public String getColorButton2() { return m_colorButton2; } + public void setColorButton2(String value) { this.m_colorButton2 = value; } + + String m_colorButton3; + public String getColorButton3() { return m_colorButton3; } + public void setColorButton3(String value) { this.m_colorButton3 = value; } + + String m_colorButton4; + public String getColorButton4() { return m_colorButton4; } + public void setColorButton4(String value) { this.m_colorButton4 = value; } + + String m_colorButton5; + public String getColorButton5() { return m_colorButton5; } + public void setColorButton5(String value) { this.m_colorButton5 = value; } + + String m_colorButton6; + public String getColorButton6() { return m_colorButton6; } + public void setColorButton6(String value) { this.m_colorButton6 = value; } + + String m_colorButton7; + public String getColorButton7() { return m_colorButton7; } + public void setColorButton7(String value) { this.m_colorButton7 = value; } + + String m_colorButton8; + public String getColorButton8() { return m_colorButton8; } + public void setColorButton8(String value) { this.m_colorButton8 = value; } + + String m_colorButton9; + public String getColorButton9() { return m_colorButton9; } + public void setColorButton9(String value) { this.m_colorButton9 = value; } + + boolean m_enabledButton1; + public boolean getEnabledButton1() { return m_enabledButton1; } + public void setEnabledButton1(boolean value) { this.m_enabledButton1 = value; } + + boolean m_enabledButton2; + public boolean getEnabledButton2() { return m_enabledButton2; } + public void setEnabledButton2(boolean value) { this.m_enabledButton2 = value; } + + boolean m_enabledButton3; + public boolean getEnabledButton3() { return m_enabledButton3; } + public void setEnabledButton3(boolean value) { this.m_enabledButton3 = value; } + + boolean m_enabledButton4; + public boolean getEnabledButton4() { return m_enabledButton4; } + public void setEnabledButton4(boolean value) { this.m_enabledButton4 = value; } + + boolean m_enabledButton5; + public boolean getEnabledButton5() { return m_enabledButton5; } + public void setEnabledButton5(boolean value) { this.m_enabledButton5 = value; } + + boolean m_enabledButton6; + public boolean getEnabledButton6() { return m_enabledButton6; } + public void setEnabledButton6(boolean value) { this.m_enabledButton6 = value; } + + boolean m_enabledButton7; + public boolean getEnabledButton7() { return m_enabledButton7; } + public void setEnabledButton7(boolean value) { this.m_enabledButton7 = value; } + + boolean m_enabledButton8; + public boolean getEnabledButton8() { return m_enabledButton8; } + public void setEnabledButton8(boolean value) { this.m_enabledButton8 = value; } + + boolean m_enabledButton9; + public boolean getEnabledButton9() { return m_enabledButton9; } + public void setEnabledButton9(boolean value) { this.m_enabledButton9 = value; } + + private void changeColor() { + + if (getLightPlayerNext().equals(getLightPlayer1())) { + setLightPlayerNext(getLightPlayer2()); + setNextPlayer(2); + } else { + setLightPlayerNext(getLightPlayer1()); + setNextPlayer(1); + } + } + + public void onButton1(ActionEvent event) { + if (getEnabledButton1() == true) { + setColorButton1(getLightPlayerNext()); + setEnabledButton1(false); + playerArray[1] = getNextPlayer(); + changeColor(); + } + + + resultTextSetter(); + } + + + public void onButton2(ActionEvent event) { + if (getEnabledButton2() == true) { + setColorButton2(getLightPlayerNext()); + setEnabledButton2(false); + playerArray[2] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public void onButton3(ActionEvent event) { + if (getEnabledButton3() == true) { + setColorButton3(getLightPlayerNext()); + setEnabledButton3(false); + playerArray[3] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public void onButton4(ActionEvent event) { + if (getEnabledButton4() == true) { + setColorButton4(getLightPlayerNext()); + setEnabledButton4(false); + playerArray[4] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public void onButton5(ActionEvent event) { + if (getEnabledButton5() == true) { + setColorButton5(getLightPlayerNext()); + setEnabledButton5(false); + playerArray[5] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public void onButton6(ActionEvent event) { + if (getEnabledButton6() == true) { + setColorButton6(getLightPlayerNext()); + setEnabledButton6(false); + playerArray[6] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public void onButton7(ActionEvent event) { + if (getEnabledButton7() == true) { + setColorButton7(getLightPlayerNext()); + setEnabledButton7(false); + playerArray[7] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public void onButton8(ActionEvent event) { + if (getEnabledButton8() == true) { + setColorButton8(getLightPlayerNext()); + setEnabledButton8(false); + playerArray[8] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public void onButton9(ActionEvent event) { + if (getEnabledButton9() == true) { + setColorButton9(getLightPlayerNext()); + setEnabledButton9(false); + playerArray[9] = getNextPlayer(); + changeColor(); + } + + resultTextSetter(); + } + + public String m_lightPlayer1 = "#66FF00"; + public String getLightPlayer1() { return m_lightPlayer1; } + + public String m_lightPlayer2 = "#FF0000"; + public String getLightPlayer2() { return m_lightPlayer2; } + + public String m_lightPlayerNext = "#66FF00"; + public void setLightPlayerNext(String lightPlayerNext) { m_lightPlayerNext = lightPlayerNext; } + public String getLightPlayerNext() { return m_lightPlayerNext; } + + public int m_nextPlayer = 1; + public int getNextPlayer() { return m_nextPlayer; } + public void setNextPlayer(int nextPlayer) { m_nextPlayer = nextPlayer; } + + String m_resultText; + public String getResultText() { return m_resultText; } + public void setResultText(String value) { this.m_resultText = value; } + + public void onReset(ActionEvent event) { + + enabledAllButtons(true); + + playerArray = new int[10]; + for (int i = 0; i < 10; i++) { + playerArray[i] = 0; + } + + m_colorButton1 = null; + m_colorButton2 = null; + m_colorButton3 = null; + m_colorButton4 = null; + m_colorButton5 = null; + m_colorButton6 = null; + m_colorButton7 = null; + m_colorButton8 = null; + m_colorButton9 = null; + + setNextPlayer(1); + setLightPlayerNext(getLightPlayer1()); + + resultTextSetter(); + } + + private void enabledAllButtons(boolean enabled) { + for (int i = 1; i <= 9; i++) { + getReflectClass().setMethod("setEnabledButton" + i, enabled); + } + } + + CheckTicTacToe m_checkTicTacToe = new CheckTicTacToe(); + + public CheckTicTacToe getCheckTicTacToe() { + return m_checkTicTacToe; + } + private boolean checkFinish() { + boolean finish = false; + + finish = getCheckTicTacToe().checkFinal(playerArray); + + return finish; + } + + ReflectClass m_reflectClass; + public ReflectClass getReflectClass() { return m_reflectClass; } + + private void resultTextSetter() { + + if (checkFinish()) { + m_resultText = " GEWONNEN. :-)"; + enabledAllButtons(false); + + } else { + m_resultText = "Player "+ getNextPlayer(); + } + } + // ------------------------------------------------------------------------ + // inner classes + // ------------------------------------------------------------------------ + + /* Listener to the user of the page bean. */ + public interface IListener extends Serializable + { + } + + // ------------------------------------------------------------------------ + // members + // ------------------------------------------------------------------------ + + private IListener m_listener; + + // ------------------------------------------------------------------------ + // constructors & initialization + // ------------------------------------------------------------------------ + + public TicTacToeBean() { + m_reflectClass = new ReflectClass(this); + onReset(null); + } + + public TicTacToeBean(String lightPlayer1, String lightPlayer2) { + this.m_lightPlayer1 = lightPlayer1; + this.m_lightPlayer2 = lightPlayer2; + + m_reflectClass = new ReflectClass(this); + onReset(null); + } + + + public String getPageName() { return "/nanoleaf/games/tictactoe/tictactoe.xml"; } + public String getRootExpressionUsedInPage() { return "#{d.TicTacToeBean}"; } + + // ------------------------------------------------------------------------ + // public usage + // ------------------------------------------------------------------------ + + /* Initialization of the bean. Add any parameter that is required within your scenario. */ + public void prepare(IListener listener) + { + m_listener = listener; + } + + // ------------------------------------------------------------------------ + // private usage + // ------------------------------------------------------------------------ +} diff --git a/src/main/java/de/nanoleaf/managedbeans.xml b/src/main/java/de/nanoleaf/managedbeans.xml new file mode 100644 index 0000000..b4cc61a --- /dev/null +++ b/src/main/java/de/nanoleaf/managedbeans.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/de/nanoleaf/server/ChangeColorMod.java b/src/main/java/de/nanoleaf/server/ChangeColorMod.java new file mode 100644 index 0000000..022fa0b --- /dev/null +++ b/src/main/java/de/nanoleaf/server/ChangeColorMod.java @@ -0,0 +1,9 @@ +package de.nanoleaf.server; + +public class ChangeColorMod { + + public ChangeColorMod() { + // TODO Auto-generated constructor stub + } + +} diff --git a/src/main/java/de/nanoleaf/server/ColorEnum.java b/src/main/java/de/nanoleaf/server/ColorEnum.java new file mode 100644 index 0000000..8a34499 --- /dev/null +++ b/src/main/java/de/nanoleaf/server/ColorEnum.java @@ -0,0 +1,45 @@ +package de.nanoleaf.server; + +import io.github.rowak.nanoleafapi.Color; + +public enum ColorEnum { + + BLACK(Color.BLACK), + + WHITE(Color.WHITE), + + RED(Color.RED), + + GREEN(Color.GREEN), + + BLUE(Color.BLUE), + + MAGENTA(Color.MAGENTA), + + YELLOW(Color.YELLOW), + + CYAN(Color.CYAN), + + GRAY(Color.GRAY), + + LIGHT_GRAY(Color.LIGHT_GRAY), + + DARK_GRAY(Color.DARK_GRAY), + + PINK(Color.PINK), + + ORANGE(Color.ORANGE), + + ; + + private Color m_color; + public Color getColor() { return m_color; } + + ColorEnum(Color color) { + this.m_color = color; + } + + + + +} diff --git a/src/main/java/de/nanoleaf/server/ColorModEnum.java b/src/main/java/de/nanoleaf/server/ColorModEnum.java new file mode 100644 index 0000000..121f88f --- /dev/null +++ b/src/main/java/de/nanoleaf/server/ColorModEnum.java @@ -0,0 +1,14 @@ +package de.nanoleaf.server; + +public enum ColorModEnum { + + NANOLEAF_LIGHT_SWITCH_PANEL_9_GAME, + + NANOLEAF_TIC_TAC_TOE_PANEL_9_GAME, + + NANOLEAF_ON_OFF_TEST, + + + + ; +} diff --git a/src/main/java/de/nanoleaf/server/Funktionen.txt b/src/main/java/de/nanoleaf/server/Funktionen.txt new file mode 100644 index 0000000..99c9e3b --- /dev/null +++ b/src/main/java/de/nanoleaf/server/Funktionen.txt @@ -0,0 +1,3 @@ +Funktionen Nanoleaf Server + +- \ No newline at end of file diff --git a/src/main/java/de/nanoleaf/server/NanoleafDeviceServer.java b/src/main/java/de/nanoleaf/server/NanoleafDeviceServer.java new file mode 100644 index 0000000..f13353b --- /dev/null +++ b/src/main/java/de/nanoleaf/server/NanoleafDeviceServer.java @@ -0,0 +1,209 @@ +package de.nanoleaf.server; + +import java.io.IOException; +import java.util.List; + +import io.github.rowak.nanoleafapi.Color; +import io.github.rowak.nanoleafapi.NanoleafDevice; +import io.github.rowak.nanoleafapi.NanoleafException; +import io.github.rowak.nanoleafapi.Panel; +import io.github.rowak.nanoleafapi.event.DetailedTouchEvent; +import io.github.rowak.nanoleafapi.event.NanoleafTouchEventListener; +import io.github.rowak.nanoleafapi.event.TouchEvent; + +public class NanoleafDeviceServer { + + private String m_nanoleafHostname = "Canvas-72FA.fritz.box"; + public String getNanoleafHostname() { return m_nanoleafHostname; } + + private String m_nanoleafHostIP = ""; + public String getNanoleafHostIP() { return m_nanoleafHostIP; } + + private int m_nanoleafPort = 16021; + public int getNanoleafPort() { return m_nanoleafPort; } + + private String m_nanoleafApiLevel = "v1"; + public String getNanoleafApiLevel() { return m_nanoleafApiLevel; } + + private String m_nanoleafAccessToken = "LAG28BQWrXK2p79NbHMQsvcYYCN1TcD4"; + public String getNanoleafAccessToken() { return m_nanoleafAccessToken; } + + private NanoleafDevice m_nanoleafDevice = null; + public NanoleafDevice getNanoleafDevice() { return m_nanoleafDevice; } + + private int m_nanoleafTouchTimer = 50; + public int getNanoleafTouchTimer() { return m_nanoleafTouchTimer; } + public void setNanoleafTouchTimer(int nanoleafTouchTimer) { m_nanoleafTouchTimer = nanoleafTouchTimer; } + + private Integer m_nanoleafLastID = null; + public Integer getNanoleafLastID() { return m_nanoleafLastID; } + public void setNanoleafLastID(Integer nanoleafLastID) { m_nanoleafLastID = nanoleafLastID; } + + private List m_nanoLeafPanels = null; + public List getNanoLeafPanels() { return m_nanoLeafPanels; } + + + public NanoleafDeviceServer() { + + } + + public NanoleafDeviceServer(String nanoleafHostname, String nanoleafHostIP, int nanoleafPort, String nanoleafAccessToken) { + this.m_nanoleafHostname = nanoleafHostname; + this.m_nanoleafHostIP = nanoleafHostIP; + this.m_nanoleafPort = nanoleafPort; + this.m_nanoleafAccessToken = nanoleafAccessToken; + } + + public boolean deConnectNanoLeaf() throws NanoleafException, IOException { + boolean finish = false; + try { + getNanoleafDevice().closeEventListeners(); + getNanoleafDevice().closeTouchEventListeners(); + getNanoleafDevice().closeAsync(); + m_nanoleafDevice = null; + getNanoLeafPanels().clear(); + + finish = true; + } catch (Exception e) { + throw e; + } + + + return finish; + } + + public boolean connectNanoLeaf() throws NanoleafException, IOException { + boolean connected = false; + + try { + m_nanoleafDevice = NanoleafDevice.createDevice(getNanoleafHostname(), getNanoleafPort(), getNanoleafAccessToken()); + + if (m_nanoleafDevice != null) { + connected = true; + refreshPanels(); + } + } catch (Exception e) { + throw e; + } + return connected; + } + + private void refreshPanels() throws NanoleafException, IOException { + + if (getNanoleafDevice() != null) { + m_nanoLeafPanels = getNanoleafDevice().getPanels(); + } + } + + private boolean checkLastIdActiv(Integer lastID) { + + if (getNanoleafLastID() == null) { + return false; + } + + return getNanoleafLastID().equals(lastID); + } + + public void startNanoLeafEvent() { + + + + try { + getNanoleafDevice().setColor(Color.BLACK); + + getNanoleafDevice().enableExternalStreaming(); + + getNanoleafDevice().enableTouchEventStreaming(getNanoleafPort()); // You need to specify a port to listen on + getNanoleafDevice().registerTouchEventStreamingListener(new NanoleafTouchEventListener() { + @Override + public void onOpen() { + // Called when the listener is created + } + + @Override + public void onClosed() { + // Called when the listener is closed + } + + @Override + public void onEvent(DetailedTouchEvent[] events) { + // Called when a touch event occurs + //System.out.println("Events: " + events.length); + + DetailedTouchEvent event = events[0]; + + Integer lastID = event.getPanelId(); + + + + + //TouchEvent touch = event.getTouchType(); + + switch (event.getTouchType()) { + case TouchEvent.DOUBLE_TAP: + //System.out.println("DOUBLE_TAP"); + break; + + case TouchEvent.SINGLE_TAP: + //System.out.println("SINGLE_TAP"); + if (checkLastIdActiv(lastID)) { + return; + } else { + setNanoleafLastID(lastID); + + try { + + getNanoleafDevice().setPanelExternalStreaming(lastID, Color.RED, 1); + + + } catch (Exception e) { + e.printStackTrace(); + } + + + + System.out.println("ID: " + event.getPanelId()); + } + + + break; + + case TouchEvent.HOLD: + //System.out.println("HOLD"); + break; + + case TouchEvent.UNKNOWN_ATTRIBUTE: + //System.out.println("UNKNOWN_ATTRIBUTE"); + break; + + + default: + System.out.println("Unexpected value: " + event.getTouchType()); + } + } + + }); + } catch (Exception e) { + e.printStackTrace(); + } + + + } + + public static void main(String[] args) { + NanoleafDeviceServer nanoleafDeviceServer = new NanoleafDeviceServer(); + try { + boolean nanoLeafActiv = nanoleafDeviceServer.connectNanoLeaf(); + + if (nanoLeafActiv) { + nanoleafDeviceServer.startNanoLeafEvent(); + } + + } catch (Exception e) { + e.printStackTrace(); + } + + + } + +} diff --git a/src/main/java/de/games/nanoleaf/server/NanoLiefAPIExample.java b/src/main/java/de/nanoleaf/server/test/NanoLiefAPIExample.java similarity index 97% rename from src/main/java/de/games/nanoleaf/server/NanoLiefAPIExample.java rename to src/main/java/de/nanoleaf/server/test/NanoLiefAPIExample.java index f31ae8c..667e36e 100644 --- a/src/main/java/de/games/nanoleaf/server/NanoLiefAPIExample.java +++ b/src/main/java/de/nanoleaf/server/test/NanoLiefAPIExample.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.server; +package de.nanoleaf.server.test; import java.io.BufferedReader; import java.io.InputStreamReader; diff --git a/src/main/java/de/games/nanoleaf/server/NanoleafEventServer.java b/src/main/java/de/nanoleaf/server/test/NanoleafEventServer.java similarity index 93% rename from src/main/java/de/games/nanoleaf/server/NanoleafEventServer.java rename to src/main/java/de/nanoleaf/server/test/NanoleafEventServer.java index ab3cac2..307a2c9 100644 --- a/src/main/java/de/games/nanoleaf/server/NanoleafEventServer.java +++ b/src/main/java/de/nanoleaf/server/test/NanoleafEventServer.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.server; +package de.nanoleaf.server.test; import java.util.List; diff --git a/src/main/java/de/games/nanoleaf/server/NanoleafMonitoring.java b/src/main/java/de/nanoleaf/server/test/NanoleafMonitoring.java similarity index 97% rename from src/main/java/de/games/nanoleaf/server/NanoleafMonitoring.java rename to src/main/java/de/nanoleaf/server/test/NanoleafMonitoring.java index fc9cc07..c339da9 100644 --- a/src/main/java/de/games/nanoleaf/server/NanoleafMonitoring.java +++ b/src/main/java/de/nanoleaf/server/test/NanoleafMonitoring.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.server; +package de.nanoleaf.server.test; import java.util.List; diff --git a/src/main/java/de/games/nanoleaf/server/NanoleafPanelExample.java b/src/main/java/de/nanoleaf/server/test/NanoleafPanelExample.java similarity index 95% rename from src/main/java/de/games/nanoleaf/server/NanoleafPanelExample.java rename to src/main/java/de/nanoleaf/server/test/NanoleafPanelExample.java index f4ed2ec..a130db8 100644 --- a/src/main/java/de/games/nanoleaf/server/NanoleafPanelExample.java +++ b/src/main/java/de/nanoleaf/server/test/NanoleafPanelExample.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.server; +package de.nanoleaf.server.test; import io.github.rowak.nanoleafapi.Aurora; diff --git a/src/main/java/de/games/nanoleaf/server/NanoleafServer.java b/src/main/java/de/nanoleaf/server/test/NanoleafServer.java similarity index 98% rename from src/main/java/de/games/nanoleaf/server/NanoleafServer.java rename to src/main/java/de/nanoleaf/server/test/NanoleafServer.java index ba0f845..1b08bd3 100644 --- a/src/main/java/de/games/nanoleaf/server/NanoleafServer.java +++ b/src/main/java/de/nanoleaf/server/test/NanoleafServer.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.server; +package de.nanoleaf.server.test; import java.util.HashMap; import java.util.HashSet; @@ -51,7 +51,7 @@ public class NanoleafServer { // for (Panel panel: panelList) { // System.out.println("Panel: " + panel.getId()); // } - device.setColor(Color.WHITE); + device.setColor(Color.BLACK); device.enableTouchEventStreaming(port); // You need to specify a port to listen on device.registerTouchEventStreamingListener(new NanoleafTouchEventListener() { diff --git a/src/main/java/de/games/nanoleaf/panelconfig/MatrixInfo.java b/src/main/java/de/nanoleaf/tools/panelconfig/MatrixInfo.java similarity index 94% rename from src/main/java/de/games/nanoleaf/panelconfig/MatrixInfo.java rename to src/main/java/de/nanoleaf/tools/panelconfig/MatrixInfo.java index 4daf985..0b07292 100644 --- a/src/main/java/de/games/nanoleaf/panelconfig/MatrixInfo.java +++ b/src/main/java/de/nanoleaf/tools/panelconfig/MatrixInfo.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.panelconfig; +package de.nanoleaf.tools.panelconfig; public class MatrixInfo { diff --git a/src/main/java/de/games/nanoleaf/panelconfig/NanoPANENode.java b/src/main/java/de/nanoleaf/tools/panelconfig/NanoPANENode.java similarity index 65% rename from src/main/java/de/games/nanoleaf/panelconfig/NanoPANENode.java rename to src/main/java/de/nanoleaf/tools/panelconfig/NanoPANENode.java index a5f50b6..3621afc 100644 --- a/src/main/java/de/games/nanoleaf/panelconfig/NanoPANENode.java +++ b/src/main/java/de/nanoleaf/tools/panelconfig/NanoPANENode.java @@ -1,4 +1,4 @@ -package de.games.nanoleaf.panelconfig; +package de.nanoleaf.tools.panelconfig; import org.eclnt.jsfserver.elements.componentnodes.COLDISTANCENode; import org.eclnt.jsfserver.elements.componentnodes.LABELNode; @@ -13,6 +13,15 @@ public class NanoPANENode extends PANENode { public PanelInfo getPanelInfo() { return m_panelInfo; } + + public String getBorderColor() { + String color = "#e7e6e6"; + + if (getPanelInfo() != null && getPanelInfo().getPanelColor() != null) { + color = getPanelInfo().getPanelColor(); + } + return color; + } public void setPanelInfo(PanelInfo panelInfo) { m_panelInfo = panelInfo; @@ -26,9 +35,9 @@ public class NanoPANENode extends PANENode { private void createInnerPane() { - this.setDragsend("NANOLEAF:ID_" + getPanelInfo().getPanelID()); - this.setHeight(80); - this.setWidth(80); + this.setDragsend("NANOLEAF:" + getPanelInfo().getPanelID()); + this.setHeight(60); + this.setWidth(60); this.setBorder("left:2;right:2;top:2;bottom:2;color:#ff0000"); ROWDISTANCENode rowdistanceNode = new ROWDISTANCENode(); this.addSubNode(rowdistanceNode); @@ -36,6 +45,7 @@ public class NanoPANENode extends PANENode { ROWNode row = new ROWNode(); COLDISTANCENode coldistanceNode = new COLDISTANCENode(); + coldistanceNode.setWidth("50%"); row.addSubNode(coldistanceNode); LABELNode labelPaneID = new LABELNode(); @@ -46,23 +56,24 @@ public class NanoPANENode extends PANENode { this.addSubNode(row); row = new ROWNode(); - coldistanceNode = new COLDISTANCENode(); - row.addSubNode(coldistanceNode); - labelPaneID = new LABELNode(); - labelPaneID.setText("Nano ID: "); - - row.addSubNode(labelPaneID); +// coldistanceNode = new COLDISTANCENode(); +// row.addSubNode(coldistanceNode); +// labelPaneID = new LABELNode(); +// labelPaneID.setText("Nr: " + getPanelInfo().getPanelID()); +// +// row.addSubNode(labelPaneID); this.addSubNode(row); row = new ROWNode(); coldistanceNode = new COLDISTANCENode(); + coldistanceNode.setWidth("50%"); row.addSubNode(coldistanceNode); labelPaneID = new LABELNode(); - if (getPanelInfo().getPanelNanoleafID() == null) { + if (getPanelInfo().getPanelNanoleafID() == 0) { labelPaneID.setText("unbek."); } else { - labelPaneID.setText(getPanelInfo().getPanelNanoleafID()); + labelPaneID.setText(getPanelInfo().getPanelNanoleafID() +""); } row.addSubNode(labelPaneID); diff --git a/src/main/java/de/games/nanoleaf/panelconfig/PanelConfigBean.java b/src/main/java/de/nanoleaf/tools/panelconfig/PanelConfigBean.java similarity index 51% rename from src/main/java/de/games/nanoleaf/panelconfig/PanelConfigBean.java rename to src/main/java/de/nanoleaf/tools/panelconfig/PanelConfigBean.java index f2712bd..1923e93 100644 --- a/src/main/java/de/games/nanoleaf/panelconfig/PanelConfigBean.java +++ b/src/main/java/de/nanoleaf/tools/panelconfig/PanelConfigBean.java @@ -1,31 +1,122 @@ -package de.games.nanoleaf.panelconfig; +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.Statusbar; +import org.eclnt.jsfserver.elements.BaseActionEvent; import org.eclnt.jsfserver.elements.componentnodes.COLDISTANCENode; -import org.eclnt.jsfserver.elements.componentnodes.LABELNode; 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.nanoleaf.server.ColorEnum; +import de.nanoleaf.server.NanoleafDeviceServer; +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 { + + String m_color = "#000000"; + public String getColor() { return m_color; } + public void setColor(String value) { this.m_color = value; } + + + ValidValuesBinding m_colorCombo = new ValidValuesBinding(); + public ValidValuesBinding getColorCombo() { return m_colorCombo; } + + + + public void onPanelSourceAction(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + //System.out.println(event); + BaseActionEventInvoke actionEvent = (BaseActionEventInvoke) event; + + System.out.println("SourceAction: " + actionEvent.getSourceReference()); + +// PanelInfo panelInfo = getPanelIDNanoPANENodeSourceMap().get(actionEvent.getSourceReference()); +// +// if (panelInfo != null) { +// Panel panel = panelInfo.getPanel(); +// +// System.out.println("PanelID: " + panel.getId()); +// } + + + } + + boolean m_nanoleafConnected = false; + public boolean getNanoleafConnected() { return m_nanoleafConnected; } + public void setNanoleafConnected(boolean value) { this.m_nanoleafConnected = value; } + + public void onNanoleafDeconnect(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + boolean deconnected = false; + // TODO: Pruefen: Host IP Tocken port + + try { + if (getNanoleafDeviceServer() != null) { + deconnected = getNanoleafDeviceServer().deConnectNanoLeaf(); + } + } catch (Exception e) { + e.printStackTrace(); + } + setNanoleafConnected(false); + } + + public void onNanoleafConnect(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + boolean connected = false; + // TODO: Pruefen: Host IP Tocken port + + try { + m_nanoleafDeviceServer = new NanoleafDeviceServer(getHostname(), getIpAdresse(), getPort(), getNanoleafToken()); + + connected = m_nanoleafDeviceServer.connectNanoLeaf(); + + setAnzahlPanels(m_nanoleafDeviceServer.getNanoLeafPanels().size()); + } catch (Exception e) { + e.printStackTrace(); + } + setNanoleafConnected(true); + + } + + + private NanoleafDeviceServer m_nanoleafDeviceServer = null; + public NanoleafDeviceServer getNanoleafDeviceServer() { return m_nanoleafDeviceServer; } + + ROWDYNAMICCONTENTBinding m_dynMatrixPanels = new ROWDYNAMICCONTENTBinding(); public ROWDYNAMICCONTENTBinding getDynMatrixPanels() { return m_dynMatrixPanels; } - public void onPanelsOff(org.eclnt.jsfserver.base.faces.event.ActionEvent event) {} + public void onPanelsOff(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + List componentNodes = getDynMatrixPanels().getContentNodes(); + + System.out.println("List: " + componentNodes.size()); + List paneList = new ArrayList(); + for (ComponentNode componentNode: componentNodes) { + System.out.println(componentNode); + if (componentNode instanceof PANENode) { + paneList.add((PANENode)componentNode); + } + + } + } - public void onPanelsOn(org.eclnt.jsfserver.base.faces.event.ActionEvent event) {} + public void onPanelsOn(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { + + } String m_nanoleafToken = "LAG28BQWrXK2p79NbHMQsvcYYCN1TcD4"; @@ -60,7 +151,12 @@ public class PanelConfigBean extends PageBean implements Serializable { public DYNAMICCONTENTBinding getDynPanelList() { return m_dynPanelList; } public void onPanelsCreate(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { - createPanelsList(getAnzahlPanels()); + List panelList = null; + if (getNanoleafDeviceServer() != null) { + panelList = getNanoleafDeviceServer().getNanoLeafPanels(); + + } + createPanelsList(panelList); } public void onCheckAndCreate(org.eclnt.jsfserver.base.faces.event.ActionEvent event) { @@ -105,36 +201,87 @@ public class PanelConfigBean extends PageBean implements Serializable { // ------------------------------------------------------------------------ public PanelConfigBean() { - createPanelsList(1); + initColorCombo(); + } - private void createPanelsList(int countPanels) { + private void initColorCombo() { + + for (ColorEnum colorEnum: ColorEnum.values()) { + getColorCombo().addValidValue(colorEnum.name(), colorEnum.name()); + } + + } + + Hashtable m_panelIDPanelInfoSourceMap = null; + public Hashtable getPanelIDPanelInfoSourceMap() { + if (m_panelIDPanelInfoSourceMap == null) { + m_panelIDPanelInfoSourceMap = new Hashtable(); + } + return m_panelIDPanelInfoSourceMap; + } + + 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; + } + + + private void createPanelsList(List panelList) { + + if (panelList != null && panelList.size() > 0) { + System.out.println("Panels: " + panelList.size()); + } else { + panelList = new ArrayList(); + Panel panel = new Panel(58456, 1, 2, 2, ShapeType.rhythm()); + panelList.add(panel); + panel = new Panel(43456, 1, 2, 2, ShapeType.rhythm()); + + panelList.add(panel); + } + setAnzahlPanels(panelList.size()); + ROWNode row = new ROWNode(); COLDISTANCENode coldistanceNode = null; - PANENode paneNode = null; - PanelInfo panelInfo = null; - LABELNode labelNode = null; - - for (int p = 0; p < countPanels; p++) { - panelInfo = new PanelInfo(p); - paneNode = new NanoPANENode(panelInfo); - paneNode.setHeight(60); - paneNode.setWidth(60); - paneNode.setBorder("left:2;right:2;top:2;bottom:2;color:#ff0000"); - paneNode.setDragsend("Nanoleaf:" + panelInfo.getPanelID()); + NanoPANENode paneNode = null; + + + int panelnr = 0; + for (int p = 0; p < panelList.size(); p++) { + Panel panel = panelList.get(p); + panelnr++; + paneNode = createNanoLeafNanoPANENode(panelnr, panel); + ROWNode rowInt = new ROWNode(); paneNode.addSubNode(rowInt); - coldistanceNode = new COLDISTANCENode(); - coldistanceNode.setWidth("50%"); - rowInt.addSubNode(coldistanceNode); - labelNode = new LABELNode(); - labelNode.setText(panelInfo.getPanelID() + ""); - rowInt.addSubNode(labelNode); row.addSubNode(paneNode); coldistanceNode = new COLDISTANCENode(); - coldistanceNode.setWidth(20); + coldistanceNode.setWidth(10); row.addSubNode(coldistanceNode); } @@ -143,6 +290,7 @@ public class PanelConfigBean extends PageBean implements Serializable { } + private void createPanelMatrix(int anzahlPanels, int matrixX, int matrixY) { int anzahlPanelMatrix = 0; @@ -153,19 +301,22 @@ public class PanelConfigBean extends PageBean implements Serializable { ROWNode row = null; PANENode rootPaneNode = new PANENode(); rootPaneNode.setRowdistance("5"); - PANENode paneNode = null; + NanoPANENode paneNode = null; COLDISTANCENode coldistanceNode = null; + PanelInfo panelInfo = null; for (int x = 0; x < matrixX; x++) { row = new ROWNode(); for (int y = 0; y < matrixY; y++) { - paneNode = new PANENode(); + 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); - paneNode.setActionListener("#{d.PanelConfigBean.onCashierActions}"); + + paneNode.setActionListener("#{d.PanelConfigBean.onDropPanelActions}"); coldistanceNode = new COLDISTANCENode(); coldistanceNode.setWidth(5); @@ -180,12 +331,20 @@ public class PanelConfigBean extends PageBean implements Serializable { } - public void onCashierActions(ActionEvent event) { + public void onDropPanelActions(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:")) { System.out.println("Ziel: "); @@ -198,7 +357,7 @@ public class PanelConfigBean extends PageBean implements Serializable { } } - public String getPageName() { return "/games/nanoleaf/panelconfig/panelconfig.xml"; } + public String getPageName() { return "/nanoleaf/tools/panelconfig/panelconfig.xml"; } public String getRootExpressionUsedInPage() { return "#{d.PanelConfigBean}"; } // ------------------------------------------------------------------------ diff --git a/src/main/java/de/games/nanoleaf/panelconfig/PanelInfo.java b/src/main/java/de/nanoleaf/tools/panelconfig/PanelInfo.java similarity index 69% rename from src/main/java/de/games/nanoleaf/panelconfig/PanelInfo.java rename to src/main/java/de/nanoleaf/tools/panelconfig/PanelInfo.java index c989ec5..9266d53 100644 --- a/src/main/java/de/games/nanoleaf/panelconfig/PanelInfo.java +++ b/src/main/java/de/nanoleaf/tools/panelconfig/PanelInfo.java @@ -1,18 +1,28 @@ -package de.games.nanoleaf.panelconfig; +package de.nanoleaf.tools.panelconfig; + +import io.github.rowak.nanoleafapi.Panel; public class PanelInfo { int m_panelID = 0; - String m_panelNanoleafID = null; + 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; + public PanelInfo() { + + } - public PanelInfo(int panelID) { - this.m_panelID = panelID; + 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(); } @@ -24,10 +34,10 @@ public class PanelInfo { } - public String getPanelNanoleafID() { + public int getPanelNanoleafID() { return m_panelNanoleafID; } - public void setPanelNanoleafID(String panelNanoleafID) { + public void setPanelNanoleafID(int panelNanoleafID) { m_panelNanoleafID = panelNanoleafID; } @@ -70,6 +80,10 @@ public class PanelInfo { public void setPanelInit(boolean panelInit) { m_panelInit = panelInit; } + + public Panel getPanel() { + return m_panel; + } diff --git a/src/main/java/de/nanoleaf/tools/panelconfig/TestClass.java b/src/main/java/de/nanoleaf/tools/panelconfig/TestClass.java new file mode 100644 index 0000000..05173e6 --- /dev/null +++ b/src/main/java/de/nanoleaf/tools/panelconfig/TestClass.java @@ -0,0 +1,33 @@ +package de.nanoleaf.tools.panelconfig; + +import java.util.List; + +import de.tools.ReflectClass; +import io.github.rowak.nanoleafapi.Color; + +public class TestClass { + + public TestClass() { + + Color color = new Color(); + + ReflectClass reflectClass = new ReflectClass(color); + + List fieldsList = reflectClass.getAllFields(); + + for (String field: fieldsList) { + + System.out.println(field); + + } + + Color farbe = Color.BLUE; + + System.out.println(farbe); + } + + public static void main(String[] args) { + new TestClass(); + } + +} diff --git a/src/main/java/de/tools/ReflectClass.java b/src/main/java/de/tools/ReflectClass.java index 42da6b7..b312bb7 100644 --- a/src/main/java/de/tools/ReflectClass.java +++ b/src/main/java/de/tools/ReflectClass.java @@ -216,7 +216,7 @@ public class ReflectClass { } - public List getAllFields() { + public List getAllDeclaredFields() { List resultList = new ArrayList(); Field[] fields = getWorkObject().getClass().getDeclaredFields(); @@ -226,6 +226,16 @@ public class ReflectClass { return resultList; } + public List getAllFields() { + List resultList = new ArrayList(); + Field[] fields = getWorkObject().getClass().getFields(); + + for (Field field : fields) { + resultList.add(field.getName()); + } + return resultList; + } + public String getType(String fieldname) { String result = null; try { diff --git a/src/main/java/de/tvo/workplace/DefaultWorkplaceBean.java b/src/main/java/de/tvo/workplace/DefaultWorkplaceBean.java index c31f809..2a74f4a 100644 --- a/src/main/java/de/tvo/workplace/DefaultWorkplaceBean.java +++ b/src/main/java/de/tvo/workplace/DefaultWorkplaceBean.java @@ -10,7 +10,7 @@ import org.eclnt.workplace.IWorkpageDispatcher; import org.eclnt.workplace.WorkpageDispatchedPageBean; import org.eclnt.workplace.WorkpageStarterFactory; -import de.geis.portal.workplace.layout.DefaultLayout; +import de.tvo.workplace.layout.DefaultLayout; import jakarta.servlet.http.HttpSession; @CCGenClass (expressionBase="#{d.DefaultWorkplaceBean}") diff --git a/src/main/java/de/tvo/workplace/MainPage.java b/src/main/java/de/tvo/workplace/MainPage.java index 3beb6d4..01f8446 100644 --- a/src/main/java/de/tvo/workplace/MainPage.java +++ b/src/main/java/de/tvo/workplace/MainPage.java @@ -9,8 +9,8 @@ import org.eclnt.jsfserver.util.HttpSessionAccess; import org.eclnt.workplace.IWorkpageDispatcher; import org.eclnt.workplace.WorkpageDispatchedPageBean; -import de.geis.portal.workplace.layout.DefaultLayout; -import de.geis.portal.workplace.layout.LayoutManager; +import de.tvo.workplace.layout.DefaultLayout; +import de.tvo.workplace.layout.LayoutManager; import jakarta.servlet.http.HttpSession; @CCGenClass (expressionBase="#{d.MainPage}") diff --git a/src/main/java/de/geis/portal/workplace/layout/DefaultLayout.java b/src/main/java/de/tvo/workplace/layout/DefaultLayout.java similarity index 98% rename from src/main/java/de/geis/portal/workplace/layout/DefaultLayout.java rename to src/main/java/de/tvo/workplace/layout/DefaultLayout.java index ee25f8c..0307c68 100644 --- a/src/main/java/de/geis/portal/workplace/layout/DefaultLayout.java +++ b/src/main/java/de/tvo/workplace/layout/DefaultLayout.java @@ -1,4 +1,4 @@ -package de.geis.portal.workplace.layout; +package de.tvo.workplace.layout; import java.io.Serializable; diff --git a/src/main/java/de/geis/portal/workplace/layout/LayoutInterface.java b/src/main/java/de/tvo/workplace/layout/LayoutInterface.java similarity index 90% rename from src/main/java/de/geis/portal/workplace/layout/LayoutInterface.java rename to src/main/java/de/tvo/workplace/layout/LayoutInterface.java index 1b26171..df40a2f 100644 --- a/src/main/java/de/geis/portal/workplace/layout/LayoutInterface.java +++ b/src/main/java/de/tvo/workplace/layout/LayoutInterface.java @@ -1,4 +1,4 @@ -package de.geis.portal.workplace.layout; +package de.tvo.workplace.layout; public interface LayoutInterface { diff --git a/src/main/java/de/geis/portal/workplace/layout/LayoutManager.java b/src/main/java/de/tvo/workplace/layout/LayoutManager.java similarity index 96% rename from src/main/java/de/geis/portal/workplace/layout/LayoutManager.java rename to src/main/java/de/tvo/workplace/layout/LayoutManager.java index 92708a5..d3a39c1 100644 --- a/src/main/java/de/geis/portal/workplace/layout/LayoutManager.java +++ b/src/main/java/de/tvo/workplace/layout/LayoutManager.java @@ -1,4 +1,4 @@ -package de.geis.portal.workplace.layout; +package de.tvo.workplace.layout; import java.io.Serializable; diff --git a/src/main/java/managedbeans/dispatcherinfo.xml b/src/main/java/managedbeans/dispatcherinfo.xml index 1026811..24b5cb0 100644 --- a/src/main/java/managedbeans/dispatcherinfo.xml +++ b/src/main/java/managedbeans/dispatcherinfo.xml @@ -2,7 +2,10 @@ + + - + + \ No newline at end of file diff --git a/src/main/webapp/examples/componets/dragDropPane.xml b/src/main/webapp/examples/componets/dragDropPane.xml new file mode 100644 index 0000000..17ceb78 --- /dev/null +++ b/src/main/webapp/examples/componets/dragDropPane.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/webapp/games/nanoleaf/tictactoe/tictactoe.xml b/src/main/webapp/games/nanoleaf/tictactoe/tictactoe.xml deleted file mode 100644 index 28d10d8..0000000 --- a/src/main/webapp/games/nanoleaf/tictactoe/tictactoe.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/src/main/webapp/games/nanoleaf/lightswitch/lightsOnOffPage.xml b/src/main/webapp/nanoleaf/games/lightswitch/lightsOnOffPage.xml similarity index 100% rename from src/main/webapp/games/nanoleaf/lightswitch/lightsOnOffPage.xml rename to src/main/webapp/nanoleaf/games/lightswitch/lightsOnOffPage.xml diff --git a/src/main/webapp/nanoleaf/games/tictactoe/tictactoe.xml b/src/main/webapp/nanoleaf/games/tictactoe/tictactoe.xml new file mode 100644 index 0000000..f143603 --- /dev/null +++ b/src/main/webapp/nanoleaf/games/tictactoe/tictactoe.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/webapp/games/nanoleaf/panelconfig/panelconfig.xml b/src/main/webapp/nanoleaf/tools/panelconfig/panelconfig.xml similarity index 83% rename from src/main/webapp/games/nanoleaf/panelconfig/panelconfig.xml rename to src/main/webapp/nanoleaf/tools/panelconfig/panelconfig.xml index 92a8a01..c9d7a7e 100644 --- a/src/main/webapp/games/nanoleaf/panelconfig/panelconfig.xml +++ b/src/main/webapp/nanoleaf/tools/panelconfig/panelconfig.xml @@ -20,7 +20,7 @@ - + @@ -37,6 +37,13 @@ + + + + + + + @@ -72,7 +79,9 @@ - + + + @@ -93,7 +102,6 @@ -