Hostname, PortA und PortB in neuem Panel ConfigPanel konfigurierbar
authorfelix <felix@a944a559-bf0e-0410-8ddc-85264b264b6c>
Sat, 12 May 2007 22:15:43 +0000 (22:15 +0000)
committerfelix <felix@a944a559-bf0e-0410-8ddc-85264b264b6c>
Sat, 12 May 2007 22:15:43 +0000 (22:15 +0000)
git-svn-id: https://www.internetallee.de/svn/bytewurf@16 a944a559-bf0e-0410-8ddc-85264b264b6c

projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/ConfigPanel.java [new file with mode: 0644]
projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/Netzdose.java
projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdoseImpl.java [deleted file]
projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdosenApplet.java
projekte/netzschalter/test/de/bytewurf/projekte/netzschalter/NetzdosenMockup.java

diff --git a/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/ConfigPanel.java b/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/ConfigPanel.java
new file mode 100644 (file)
index 0000000..5c34c30
--- /dev/null
@@ -0,0 +1,88 @@
+/*
+ * Created on 12.05.2007
+ *
+ * To change this generated comment go to 
+ * Window>Preferences>Java>Code Generation>Code Template
+ */
+package de.bytewurf.projekte.netzschalter;
+
+import java.awt.GridLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import javax.swing.JButton;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+
+/**
+ * @author felix
+ */
+public class ConfigPanel extends JPanel {
+
+       private Netzdose netzdose;
+
+       private JTextField hostnameField;
+
+       private JTextField portAField;
+
+       private JTextField portBField;
+
+       private JButton applyButton;
+
+       private JButton resetButton;
+
+       public ConfigPanel(Netzdose netzdose) {
+               this.netzdose = netzdose;
+               setLayout(new GridLayout(4, 2));
+               add(new JLabel("Hostname: "));
+               hostnameField = new JTextField();
+               add(hostnameField);
+
+               add(new JLabel("portA"));
+               portAField = new JTextField();
+               add(portAField);
+
+               add(new JLabel("portB"));
+               portBField = new JTextField();
+               add(portBField);
+
+               applyButton = new JButton("Apply");
+               applyButton.addActionListener(new ActionListener() {
+                       public void actionPerformed(ActionEvent arg0) {
+                               apply();
+                       }
+               });
+
+               resetButton = new JButton("Reset");
+               resetButton.addActionListener(new ActionListener() {
+                       public void actionPerformed(ActionEvent e) {
+                               reset();
+                       }
+               });
+               
+               add(resetButton);
+               add(applyButton);
+               
+               reset();
+       }
+
+       private void apply() {
+               try {
+                       int portANumber = Integer.parseInt(portAField.getText());
+                       int portBNumber = Integer.parseInt(portBField.getText());
+                       netzdose.setHostname(hostnameField.getText());
+                       netzdose.setPortA(portANumber);
+                       netzdose.setPortB(portBNumber);
+               } catch (NumberFormatException e) {
+                       LogMediator.getInstance().log(
+                                       "Kann portnummer nicht parsen." + e.toString());
+               }
+       }
+
+       private void reset() {
+               hostnameField.setText(netzdose.getHostname());
+               portAField.setText(Integer.toString(netzdose.getPortA()));
+               portBField.setText(Integer.toString(netzdose.getPortB()));
+       }
+}
index aa1b04d..d10f01d 100644 (file)
@@ -16,5 +16,17 @@ public interface Netzdose {
        public int getRelais(int relaisNumber);
        
        public int getNumberOfRelais();
+       
+       public void setHostname(String hostname);
+       
+       public String getHostname();
+       
+       public void setPortA(int portNumber);
+       
+       public int getPortA();
+       
+       public void setPortB(int portNumber);
+       
+       public int getPortB();
 
 }
\ No newline at end of file
diff --git a/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdoseImpl.java b/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdoseImpl.java
deleted file mode 100644 (file)
index 739fe20..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Created on 12.05.2007
- *
- * To change this generated comment go to 
- * Window>Preferences>Java>Code Generation>Code Template
- */
-package de.bytewurf.projekte.netzschalter;
-
-/**
- * @author felix
- */
-public class NetzdoseImpl implements Netzdose {
-       /* (non-Javadoc)
-        * @see de.bytewurf.projekte.netzschalter.Netzdose#setRelais(int, int)
-        */
-       public void setRelais(int relaisNumber, int state) {
-       }
-       
-       public int getNumberOfRelais() {
-               // TODO Auto-generated method stub
-               return 0;
-       }
-
-       /* (non-Javadoc)
-        * @see de.bytewurf.projekte.netzschalter.Netzdose#getRelais(int)
-        */
-       public int getRelais(int relaisNumber) {
-               return NetzdoseKonstanten.STATE_OFF;
-       }
-}
index 4e68a09..c0ac2a1 100644 (file)
@@ -44,6 +44,7 @@ public class NetzdosenApplet extends Applet {
                JTabbedPane modePanel = new JTabbedPane();
 
                modePanel.add("LED", new NetzdosenLEDPanel(netzdose));
+               modePanel.add("Config", new ConfigPanel(netzdose));
                JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
                splitPane.add(modePanel, JSplitPane.TOP);
 
index bee3709..7211eff 100644 (file)
@@ -12,6 +12,9 @@ package de.bytewurf.projekte.netzschalter;
 public class NetzdosenMockup implements Netzdose {
 
        byte relaisState = 0;
+       String hostname = "";
+       int portA = 0;
+       int portB = 0;
 
        public int getNumberOfRelais() {
                return 8;
@@ -35,4 +38,29 @@ public class NetzdosenMockup implements Netzdose {
                        relaisState &= ~(1 << relaisNumber);
        }
 
+       public String getHostname() {
+               return hostname;
+       }
+
+       public void setHostname(String hostname) {
+               this.hostname = hostname;
+       }
+
+       public int getPortA() {
+               return portA;
+       }
+
+       public void setPortA(int portA) {
+               this.portA = portA;
+       }
+
+       public int getPortB() {
+               return portB;
+       }
+
+       public void setPortB(int portB) {
+               this.portB = portB;
+       }
+
+       
 }