|
From: <fle...@us...> - 2007-11-09 11:56:30
|
Revision: 690
http://magicmap.svn.sourceforge.net/magicmap/?rev=690&view=rev
Author: flederohr
Date: 2007-11-09 03:56:27 -0800 (Fri, 09 Nov 2007)
Log Message:
-----------
Changed Connection-Dialog
Modified Paths:
--------------
trunk/magicmapclient/src/net/sf/magicmap/client/gui/dialogs/ConnectServerDialog.java
Modified: trunk/magicmapclient/src/net/sf/magicmap/client/gui/dialogs/ConnectServerDialog.java
===================================================================
--- trunk/magicmapclient/src/net/sf/magicmap/client/gui/dialogs/ConnectServerDialog.java 2007-11-08 13:33:19 UTC (rev 689)
+++ trunk/magicmapclient/src/net/sf/magicmap/client/gui/dialogs/ConnectServerDialog.java 2007-11-09 11:56:27 UTC (rev 690)
@@ -9,13 +9,17 @@
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JDialog;
+import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
+import javax.swing.JRadioButton;
+import javax.swing.JSeparator;
import javax.swing.JTextField;
import net.sf.magicmap.client.gui.MainGUI;
@@ -44,10 +48,18 @@
private JTextField clientname;
private JTextField port;
private JPasswordField password;
- private JCheckBox useNoServer;
+ private JRadioButton useNoServer;
private JButton ok;
private JButton cancel;
+ private JRadioButton useServer;
+
+ private JLabel useNoServerLabel;
+
+ private JSeparator seperator;
+
+ private ButtonGroup radioButtonGroup;
+
/**
* Static method to create and open a ConnectServerDialog
* @param owner - the owner frame for the dialog
@@ -78,52 +90,60 @@
}
});
- setSize(300, 300);
+ setSize(360, 300);
this.setResizable(false);
this.serverConnectionInfo = info;
RelativeLayout layout = new RelativeLayout();
RelativePanelBuilder builder = new RelativePanelBuilder(layout);
- // OK / Abbrechen
- if (info.useNoServer)
- ok = builder.createButton(GUIUtils.i18n("continue"), "OK", this);
- else
- ok = builder.createButton(GUIUtils.i18n("connect"), "OK", this);
- cancel = builder.createButton(GUIUtils.i18n("cancel"), "CANCEL", this);
+ // Kopf
+ builder
+ .addDialogHeader("<html><b>" + GUIUtils.i18n("createconnectiontopacwserver") + "</b><br>"
+ + GUIUtils.i18n("createconnectiontopacwserverhint") + "</html>", GUIConstants.ICON_SERVER_BIG,
+ "header");
+ builder.setTop("header", 0);
+ builder.setLeft("header", 0);
+ builder.setRightRightDistance("header", null, 0);
- builder.addOKCancelButtonBar(ok, cancel, "okcancel");
- builder.setLeftLeftDistance("okcancel", null, 10);
- builder.setRightRightDistance("okcancel", null, -10);
- builder.setBottomBottomDistance("okcancel", null, -10);
+ // RadioButton f\xFCr "lokale Verbindung"
+ useNoServer = new JRadioButton();
+ builder.add(useNoServer, "noserver");
+ useNoServer.setSelected(serverConnectionInfo.useNoServer);
+ builder.setLeft("noserver", 20);
+ builder.setTopBottomDistance("noserver", "header", 20);
+ useNoServer.setActionCommand("USENOSERVER");
+ useNoServer.addActionListener(this);
+
+ // Label f\xFCr "lokale Verbindung"
+ useNoServerLabel = builder.addLabel(GUIUtils.i18n("nonserverconnect"), "noserverlabel");
+ builder.setLeftRightDistance("noserverlabel", "noserver", 10);
+ builder.setTopTopDistance("noserverlabel", "noserver", 0);
+
+ // Trennlinie
+ seperator = builder.addSeparator("seperator");
+ builder.setLeft("seperator", 3);
+ builder.setRightRightDistance("seperator", null, -3);
+ builder.setTopBottomDistance("seperator", "noserver,noserverlabel", 10);
+
+ // RadioButton f\xFCr "Server-Verbindung"
+ useServer = new JRadioButton();
+ builder.add(useServer, "server");
+ useServer.setSelected(!serverConnectionInfo.useNoServer);
+ builder.setLeftLeftDistance("server", "noserver", 0);
+ builder.setTopBottomDistance("server", "seperator", 10);
+ useNoServer.setActionCommand("USESERVER");
+ useNoServer.addActionListener(this);
- // Clientname
- clientname = builder.addTextField("clientname");
- builder.addLabel(GUIUtils.i18n("clientname"), "clientlabel", clientname);
- builder.setLeft("clientlabel", 20);
- builder.setRightRightDistance("clientname", null, -20);
- builder.setTopBottomDistance("clientlabel", "header", 20);
- builder.setTopBottomDistance("clientname", "header", 20);
- clientname.setToolTipText(GUIUtils.i18n("clientnametooltip"));
-
- // Password
- password = new JPasswordField();
- builder.add(password, "password");
- builder.addLabel(GUIUtils.i18n("password"), "passwordlabel", password);
- builder.setLeft("passwordlabel", 20);
- builder.setRightRightDistance("password", null, -20);
- builder.setTopBottomDistance("passwordlabel", "clientlabel,clientname", 5);
- builder.setTopBottomDistance("password", "clientlabel,clientname", 5);
- password.setToolTipText(GUIUtils.i18n("passwordtooltip"));
-
// Hostname
hostname = builder.addComboBox(Settings.getDefaultServerList(), "hostcombo");
builder.addLabel(GUIUtils.i18n("hostname"), "hostlabel", hostname);
- builder.setLeft("hostlabel", 20);
+ builder.setLeftLeftDistance("hostlabel","noserverlabel", 0);
hostname.setEditable(true);
- builder.setRightRightDistance("hostcombo", null, -20);
- builder.setTopBottomDistance("hostlabel", "passwordlabel,password", 10);
- builder.setTopBottomDistance("hostcombo", "passwordlabel,password", 10);
+ builder.setLeftRightDistance("hostcombo", "hostlabel", 15);
+ builder.setRightLeftDistance("hostcombo", "hostcombo", 178);
+ builder.setTopTopDistance("hostcombo", "server", 0);
+ builder.setTopTopDistance("hostlabel", "server", 0);
hostname.setActionCommand("HOSTNAME");
hostname.addActionListener(this);
hostname.setToolTipText(GUIUtils.i18n("hostnametooltip"));
@@ -131,41 +151,58 @@
// Port
port = builder.addTextField("portedit");
builder.addLabel(GUIUtils.i18n("port"), "portlabel", port);
- builder.setLeft("portlabel", 20);
- builder.setTopBottomDistance("portlabel", "hostlabel,hostcombo", 5);
- builder.setRightRightDistance("portedit", null, -20);
- builder.setLeftRightDistance("portedit", "portlabel,hostlabel,clientlabel,passwordlabel", 5);
- builder.setTopBottomDistance("portedit", "hostlabel,hostcombo,clientlabel,passwordlabel", 5);
- builder.setLeftRightDistance("hostcombo", "portlabel,hostlabel,clientlabel,passwordlabel", 5);
- builder.setLeftRightDistance("clientname", "portlabel,hostlabel,clientlabel,passwordlabel", 5);
- builder.setLeftRightDistance("password", "portlabel,hostlabel,clientlabel,passwordlabel", 5);
+ builder.setLeftRightDistance("portlabel","hostcombo", 10);
+ builder.setLeftRightDistance("portedit", "portlabel", 5);
+ builder.setTopTopDistance("portlabel", "hostlabel,hostcombo", 0);
+ builder.setTopTopDistance("portedit", "hostlabel,hostcombo", 0);
+ builder.setRightRightDistance("portedit", null, -10);
port.setToolTipText(GUIUtils.i18n("porttooltip"));
- // CheckBox f\xFCr "lokale Verbindung"
- useNoServer = builder.addCheckBox(GUIUtils.i18n("nonserverconnect"), "nonserver",
- serverConnectionInfo.useNoServer);
- builder.setLeftLeftDistance("nonserver", "portedit", 0);
- builder.setTopBottomDistance("nonserver", "portlabel,portedit", 5);
- useNoServer.setActionCommand("USENOSERVER");
- useNoServer.addActionListener(this);
+ // Clientname
+ clientname = builder.addTextField("clientname");
+ builder.addLabel(GUIUtils.i18n("clientname"), "clientlabel", clientname);
+ builder.setLeftLeftDistance("clientlabel","hostlabel", 0);
+ builder.setLeftLeftDistance("clientname","hostcombo", 0);
+ builder.setRightRightDistance("clientname", "hostcombo", 0);
+ builder.setTopBottomDistance("clientlabel", "hostlabel,hostcombo", 10);
+ builder.setTopBottomDistance("clientname", "hostlabel,hostcombo", 10);
+ clientname.setToolTipText(GUIUtils.i18n("clientnametooltip"));
- // Kopf
- builder
- .addDialogHeader("<html><b>" + GUIUtils.i18n("createconnectiontopacwserver") + "</b><br>"
- + GUIUtils.i18n("createconnectiontopacwserverhint") + "</html>", GUIConstants.ICON_SERVER_BIG,
- "header");
- builder.setTop("header", 0);
- builder.setLeft("header", 0);
- builder.setRightRightDistance("header", null, 0);
+ // Password
+ password = new JPasswordField();
+ builder.add(password, "password");
+ builder.addLabel(GUIUtils.i18n("password"), "passwordlabel", password);
+ builder.setLeftLeftDistance("passwordlabel","clientlabel", 0);
+ builder.setLeftLeftDistance("password","clientname", 0);
+ builder.setRightRightDistance("password", "hostcombo", 0);
+ builder.setTopBottomDistance("passwordlabel", "clientlabel,clientname", 10);
+ builder.setTopBottomDistance("password", "clientlabel,clientname", 10);
+ password.setToolTipText(GUIUtils.i18n("passwordtooltip"));
+ // radioButtons
+ radioButtonGroup = new ButtonGroup();
+ radioButtonGroup.add(useNoServer);
+ radioButtonGroup.add(useServer);
+
+ // OK / Abbrechen
+ if (info.useNoServer)
+ ok = builder.createButton(GUIUtils.i18n("continue"), "OK", this);
+ else
+ ok = builder.createButton(GUIUtils.i18n("connect"), "OK", this);
+ cancel = builder.createButton(GUIUtils.i18n("cancel"), "CANCEL", this);
+
+ builder.addOKCancelButtonBar(ok, cancel, "okcancel");
+ builder.setLeftLeftDistance("okcancel", null, 10);
+ builder.setRightRightDistance("okcancel", null, -10);
+ builder.setBottomBottomDistance("okcancel", null, -10);
+
// Defaults setzen
this.password.setText(serverConnectionInfo.password);
this.clientname.setText(serverConnectionInfo.name);
this.hostname.setSelectedItem(serverConnectionInfo.hostname);
this.port.setText("" + serverConnectionInfo.port);
if (info.useNoServer) {
- this.hostname.setEnabled(false);
- this.port.setEnabled(false);
+ this.useNoServer.doClick();
}
mainPanel = builder.getPanel();
@@ -195,15 +232,24 @@
} else if ("CANCEL".equals(e.getActionCommand())) {
cancelConnect();
} else if ("USENOSERVER".equals(e.getActionCommand())) {
- // CheckBox angeklickt
+ // RadioButton angeklickt
boolean b = !useNoServer.isSelected();
this.hostname.setEnabled(b);
this.port.setEnabled(b);
- if (useNoServer.isSelected()) {
+ this.clientname.setEnabled(b);
+ this.password.setEnabled(b);
+ if (!b) {
this.ok.setText(GUIUtils.filterMnemonic(GUIUtils.i18n("continue")));
this.ok.setMnemonic(GUIUtils.getMnemonic(GUIUtils.i18n("continue")));
- } else {
- // GUIUtils.getMnemonic(title)
+ }
+ } else if ("USESERVER".equals(e.getActionCommand())) {
+ // RadioButton angeklickt
+ boolean b = useServer.isSelected();
+ this.hostname.setEnabled(b);
+ this.port.setEnabled(b);
+ this.clientname.setEnabled(b);
+ this.password.setEnabled(b);
+ if (b) {
this.ok.setText(GUIUtils.filterMnemonic(GUIUtils.i18n("connect")));
this.ok.setMnemonic(GUIUtils.getMnemonic(GUIUtils.i18n("connect")));
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|