import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.URL;
import java.net.*;
import java.io.*;
import org.cups.*;
public class GLPserver implements ActionListener
{
private JPanel serverPanel = null;
private JPanel searchPanel = null;
private GLPjobTableModel tm = null;
private JTable table = null;
protected JLabel currentLabel;
protected JLabel currentLabelValue;
protected JLabel actionLabel;
protected JTextField serverTextField;
protected static final String serverFieldString = "New Server Name:";
protected static final String applyButtonString = "Apply Changes";
public GLPserver()
{
GLPvars.searchTM = new GLPjobTableModel(1,1);
GLPvars.searchTM.setColumnName( 0, "Search Results" );
GLPvars.searchTM.setValueAt("No search results",0,0);
GLPvars.searchTable = new JTable(GLPvars.searchTM);
load();
}
public void load()
{
GridBagLayout serverLayout;
GridBagConstraints serverConst;
serverPanel = new JPanel();
serverLayout = new GridBagLayout();
serverConst = new GridBagConstraints();
serverPanel.setLayout(serverLayout);
serverPanel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
serverPanel.setBackground(GLPcolors.backgroundColor);
serverTextField = new JTextField(32);
serverTextField.setActionCommand(serverFieldString);
serverTextField.addActionListener(this);
JLabel serverFieldLabel = new JLabel(serverFieldString);
serverFieldLabel.setForeground(GLPcolors.foregroundColor);
serverFieldLabel.setLabelFor(serverTextField);
currentLabel = new JLabel("Current Server Name: ");
currentLabel.setForeground(GLPcolors.foregroundColor);
currentLabelValue = new JLabel(GLPvars.getServerName());
serverConst.gridwidth = GridBagConstraints.RELATIVE;
serverConst.gridx = 0;
serverConst.gridy = 0;
serverConst.fill = GridBagConstraints.HORIZONTAL;
serverConst.weightx = 0.4;
serverConst.weighty = 0.0;
serverConst.ipadx = 4;
serverConst.ipady = 4;
serverLayout.setConstraints( currentLabel, serverConst );
serverPanel.add(currentLabel);
serverConst.gridwidth = GridBagConstraints.RELATIVE;
serverConst.gridx = 1;
serverConst.gridy = 0;
serverConst.fill = GridBagConstraints.HORIZONTAL;
serverConst.weightx = 0.4;
serverConst.weighty = 0.0;
serverConst.ipadx = 4;
serverConst.ipady = 4;
serverLayout.setConstraints( currentLabelValue, serverConst );
serverPanel.add(currentLabelValue);
serverConst.gridwidth = GridBagConstraints.RELATIVE;
serverConst.gridx = 0;
serverConst.gridy = 1;
serverConst.fill = GridBagConstraints.HORIZONTAL;
serverConst.weightx = 0.4;
serverConst.weighty = 0.0;
serverConst.ipadx = 4;
serverConst.ipady = 4;
serverLayout.setConstraints( serverFieldLabel, serverConst );
serverPanel.add(serverFieldLabel);
serverConst.gridwidth = GridBagConstraints.RELATIVE;
serverConst.gridx = 1;
serverConst.gridy = 1;
serverConst.fill = GridBagConstraints.HORIZONTAL;
serverConst.weightx = 0.4;
serverConst.weighty = 0.0;
serverConst.ipadx = 4;
serverConst.ipady = 4;
serverLayout.setConstraints( serverTextField, serverConst );
serverPanel.add(serverTextField);
JButton applyButton = new JButton(applyButtonString);
applyButton.setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createRaisedBevelBorder(),
BorderFactory.createEmptyBorder(5,5,5,5)));
applyButton.setActionCommand(applyButtonString);
applyButton.addActionListener(this);
serverConst.gridx = 1;
serverConst.gridy = 2;
serverConst.fill = GridBagConstraints.NONE;
serverLayout.setConstraints( applyButton, serverConst );
serverConst.weightx = 0.4;
serverConst.weighty = 0.0;
serverConst.ipadx = 4;
serverConst.ipady = 4;
serverPanel.add(applyButton);
GLPsearchProgressPanel progress = new GLPsearchProgressPanel();
searchPanel = progress.getPanel();
serverConst.gridx = 1;
serverConst.gridy = 3;
serverConst.fill = GridBagConstraints.HORIZONTAL;
serverConst.weightx = 0.6;
serverConst.weighty = 0.3;
serverConst.ipadx = 4;
serverConst.ipady = 4;
serverLayout.setConstraints( searchPanel, serverConst );
serverPanel.add(searchPanel);
serverConst.gridx = 1;
serverConst.gridy = 4;
serverConst.fill = GridBagConstraints.HORIZONTAL;
serverConst.weightx = 1.0;
serverConst.weighty = 0.5;
serverConst.ipadx = 4;
serverConst.ipady = 4;
serverLayout.setConstraints( GLPvars.searchTable, serverConst );
serverPanel.add(GLPvars.searchTable);
}
public void actionPerformed(ActionEvent e)
{
if (e.getActionCommand().equals(serverFieldString))
{
String s = serverTextField.getText();
if (s.length() > 1)
{
GLPvars.setServerName(s);
serverTextField.setText("");
currentLabelValue.setText(GLPvars.getServerName());
}
}
else if (e.getActionCommand().equals(applyButtonString))
{
String s = serverTextField.getText();
if (s.length() > 1)
{
GLPvars.setServerName(s);
serverTextField.setText("");
currentLabelValue.setText(GLPvars.getServerName());
}
}
}
public void updateServer( String server )
{
GLPvars.setServerName(server);
load();
serverTextField.setText("");
currentLabelValue.setText(GLPvars.getServerName());
}
public JPanel getPanel()
{
return(serverPanel);
}
}