import javax.swing.JFileChooser;
import javax.swing.JLabel;
import javax.swing.JPanel;
+import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JSpinner;
protected JLabel serverLabel2 = new JLabel();
+ protected JLabel proxyAuthUsernameLabel = new JLabel();
+
+ protected JLabel proxyAuthPasswordLabel = new JLabel();
+
protected JTextField proxyServerHttpTB = new JTextField();
protected JTextField proxyPortHttpTB = new JTextField();
protected JTextField proxyPortHttpsTB = new JTextField();
+ protected JCheckBox proxyAuth = new JCheckBox();
+
+ protected JTextField proxyAuthUsernameTB = new JTextField();
+
+ protected JTextField proxyAuthPasswordTB = new JPasswordField();
+
protected JTextField defaultBrowser = new JTextField();
protected ButtonGroup proxyType = new ButtonGroup();
proxyServerHttpsTB.setColumns(40);
proxyPortHttpsTB.setFont(LABEL_FONT);
proxyPortHttpsTB.setColumns(4);
+ proxyAuthUsernameTB.setFont(LABEL_FONT);
+ proxyAuthUsernameTB.setColumns(30);
+ proxyAuthPasswordTB.setFont(LABEL_FONT);
+ proxyAuthPasswordTB.setColumns(30);
// Label for Port text box
portLabel.setFont(LABEL_FONT);
httpsLabel.setFont(LABEL_FONT_BOLD);
httpsLabel.setHorizontalAlignment(SwingConstants.LEFT);
+ proxyAuthUsernameLabel
+ .setText(MessageManager.getString("label.username") + ": ");
+ proxyAuthUsernameLabel.setFont(LABEL_FONT);
+ proxyAuthUsernameLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+ proxyAuthPasswordLabel
+ .setText(MessageManager.getString("label.password") + ": ");
+ proxyAuthPasswordLabel.setFont(LABEL_FONT);
+ proxyAuthPasswordLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+
// Proxy type radio buttons
noProxy.setFont(LABEL_FONT);
noProxy.setHorizontalAlignment(SwingConstants.LEFT);
- // noProxy.setHorizontalTextPosition(SwingConstants.LEADING);
noProxy.setText(MessageManager.getString("label.no_proxy"));
systemProxy.setFont(LABEL_FONT);
systemProxy.setHorizontalAlignment(SwingConstants.LEFT);
- // systemProxy.setHorizontalTextPosition(SwingConstants.LEADING);
systemProxy.setText(MessageManager.formatMessage("label.system_proxy",
displayHostPort(Cache.startupProxyProperties[0],
Cache.startupProxyProperties[1]),
Cache.startupProxyProperties[3])));
customProxy.setFont(LABEL_FONT);
customProxy.setHorizontalAlignment(SwingConstants.LEFT);
- // customProxy.setHorizontalTextPosition(SwingConstants.LEADING);
- customProxy.addActionListener(new ActionListener()
+ customProxy.setText(
+ MessageManager.getString("label.use_proxy_server") + ":");
+ ActionListener al = new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
- customProxy_actionPerformed();
+ proxyType_actionPerformed();
}
- });
- customProxy.setText(
- MessageManager.getString("label.use_proxy_server") + ":");
+ };
+ noProxy.addActionListener(al);
+ systemProxy.addActionListener(al);
+ customProxy.addActionListener(al);
proxyType.add(noProxy);
proxyType.add(systemProxy);
proxyType.add(customProxy);
+ proxyAuth.setFont(LABEL_FONT);
+ proxyAuth.setHorizontalAlignment(SwingConstants.LEFT);
+ proxyAuth.setText(MessageManager.getString("label.auth_required"));
+ proxyAuth.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ proxyAuth_actionPerformed();
+ }
+ });
+
+ setCustomProxyEnabled();
+ setProxyAuthEnabled();
+
// Make proxy server panel
JPanel proxyPanel = new JPanel();
TitledBorder titledBorder1 = new TitledBorder(
gbc.weightx = 0.1;
proxyPanel.add(proxyPortHttpsTB, gbc);
- /*
- proxyPanel.add(serverLabel,
- new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0,
- GridBagConstraints.WEST, GridBagConstraints.NONE,
- new Insets(0, 2, 2, 0), 5, 0));
- proxyPanel.add(portLabel,
- new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0,
- GridBagConstraints.WEST, GridBagConstraints.NONE,
- new Insets(0, 0, 2, 0), 11, 0));
- proxyPanel.add(useProxy,
- new GridBagConstraints(0, 0, 2, 1, 0.0, 0.0,
- GridBagConstraints.WEST, GridBagConstraints.NONE,
- new Insets(0, 2, 5, 185), 2, -4));
- proxyPanel.add(proxyPortTB,
- new GridBagConstraints(3, 1, 1, 1, 1.0, 0.0,
- GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
- new Insets(0, 2, 2, 2), 54, 1));
- proxyPanel.add(proxyServerTB,
- new GridBagConstraints(1, 1, 1, 1, 1.0, 0.0,
- GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
- new Insets(0, 2, 2, 0), 263, 1));
- */
+ gbc.gridy++;
+ gbc.gridx = 0;
+ gbc.gridwidth = 5;
+ gbc.anchor = GridBagConstraints.WEST;
+ gbc.weightx = 0.1;
+ proxyPanel.add(proxyAuth, gbc);
+
+ gbc.gridy++;
+ gbc.gridx = 0;
+ gbc.gridwidth = 1;
+ gbc.anchor = GridBagConstraints.EAST;
+ proxyPanel.add(proxyAuthUsernameLabel, gbc);
+
+ gbc.gridx++;
+ gbc.gridwidth = 4;
+ gbc.anchor = GridBagConstraints.WEST;
+ proxyPanel.add(proxyAuthUsernameTB, gbc);
+
+ gbc.gridy++;
+ gbc.gridx = 0;
+ gbc.gridwidth = 1;
+ gbc.anchor = GridBagConstraints.EAST;
+ proxyPanel.add(proxyAuthPasswordLabel, gbc);
+
+ gbc.gridx++;
+ gbc.gridwidth = 4;
+ gbc.anchor = GridBagConstraints.WEST;
+ proxyPanel.add(proxyAuthPasswordTB, gbc);
return proxyPanel;
}
}
- public void customProxy_actionPerformed()
+ public void setProxyAuthEnabled()
+ {
+ boolean enabled = proxyAuth.isSelected() && proxyAuth.isEnabled();
+ proxyAuthUsernameLabel.setEnabled(enabled);
+ proxyAuthPasswordLabel.setEnabled(enabled);
+ proxyAuthUsernameTB.setEnabled(enabled);
+ proxyAuthPasswordTB.setEnabled(enabled);
+ }
+
+ public void setCustomProxyEnabled()
{
boolean enabled = customProxy.isSelected();
portLabel.setEnabled(enabled);
serverLabel.setEnabled(enabled);
+ portLabel2.setEnabled(enabled);
+ serverLabel2.setEnabled(enabled);
httpLabel.setEnabled(enabled);
httpsLabel.setEnabled(enabled);
proxyServerHttpTB.setEnabled(enabled);
proxyPortHttpTB.setEnabled(enabled);
proxyServerHttpsTB.setEnabled(enabled);
proxyPortHttpsTB.setEnabled(enabled);
+ proxyAuth.setEnabled(enabled);
+ setProxyAuthEnabled();
+ }
+
+ public void proxyType_actionPerformed()
+ {
+ setCustomProxyEnabled();
+ }
+
+ public void proxyAuth_actionPerformed()
+ {
+ setProxyAuthEnabled();
}
/**