From: felix Date: Sat, 12 May 2007 22:15:43 +0000 (+0000) Subject: Hostname, PortA und PortB in neuem Panel ConfigPanel konfigurierbar X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=5384cc109f9d81953ad69e2d73bf9f2f14ac5621;p=bytewurf.git Hostname, PortA und PortB in neuem Panel ConfigPanel konfigurierbar git-svn-id: https://www.internetallee.de/svn/bytewurf@16 a944a559-bf0e-0410-8ddc-85264b264b6c --- 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 index 0000000..5c34c30 --- /dev/null +++ b/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/ConfigPanel.java @@ -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())); + } +} diff --git a/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/Netzdose.java b/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/Netzdose.java index aa1b04d..d10f01d 100644 --- a/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/Netzdose.java +++ b/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/Netzdose.java @@ -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 index 739fe20..0000000 --- a/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdoseImpl.java +++ /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; - } -} diff --git a/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdosenApplet.java b/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdosenApplet.java index 4e68a09..c0ac2a1 100644 --- a/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdosenApplet.java +++ b/projekte/netzschalter/src/de/bytewurf/projekte/netzschalter/NetzdosenApplet.java @@ -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); diff --git a/projekte/netzschalter/test/de/bytewurf/projekte/netzschalter/NetzdosenMockup.java b/projekte/netzschalter/test/de/bytewurf/projekte/netzschalter/NetzdosenMockup.java index bee3709..7211eff 100644 --- a/projekte/netzschalter/test/de/bytewurf/projekte/netzschalter/NetzdosenMockup.java +++ b/projekte/netzschalter/test/de/bytewurf/projekte/netzschalter/NetzdosenMockup.java @@ -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; + } + + }