]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - scripting/java/example/GLPprinters.java
Import CUPS 1.4svn-r7356.
[thirdparty/cups.git] / scripting / java / example / GLPprinters.java
diff --git a/scripting/java/example/GLPprinters.java b/scripting/java/example/GLPprinters.java
deleted file mode 100644 (file)
index 9a86a79..0000000
+++ /dev/null
@@ -1,509 +0,0 @@
-
-import java.awt.*;
-import java.awt.event.*;
-import javax.swing.*;
-import java.net.URL;
-import java.net.*;
-import java.io.*;
-import com.easysw.cups.*;
-
-public class GLPprinters implements ActionListener 
-{
-
-    private Cups   cups = null;
-    public  String cupsServerName = "";
-
-    private JScrollPane        scrollPane = null;
-    private JPanel             mainPanel = null;
-    private JPanel             serverPanel = null;
-    private JPanel             maskPanel = null;
-
-    private GridBagLayout      mainLayout = null;
-    private GridBagConstraints mainConst = null;
-    private GridBagLayout      maskLayout = null;
-    private GridBagConstraints maskConst = null;
-
-    private JLabel             serverLabel = null;
-
-    JTextField nameTextField = null;
-    protected static final String maskFieldString  = "Printer Name:";
-    protected static final String maskButtonString = "Apply";
-
-    private String currentMask = "";
-
-
-    // Constructor
-    public GLPprinters() 
-    {
-      cupsServerName = GLPvars.getServerName();
-      load();
-    }
-
-    public void load() 
-    {
-        String[]      printer_names;
-        String        default_printer;
-        int           num_printers = 0;
-        int           y = 0, i = 0;
-        URL           u;
-        CupsPrinter   cp;
-
-
-        //  -----------------------------------------------------------
-        //
-        //  First get a list of printer names.
-        //
-        try
-        {
-          u = new URL("http://" + GLPvars.getServerName() + ":631/");
-          cups = new Cups(u);
-
-          // If authorization is required ....
-          cups.setUser(GLPvars.cupsUser);
-          cups.setPasswd(GLPvars.cupsPasswd);
-
-          printer_names = cups.cupsGetPrinters();
-          if (printer_names != null)
-            num_printers  = printer_names.length;
-          else
-            num_printers = 0;
-        }
-        catch (IOException e)
-        {
-         mainPanel   = new JPanel();
-          mainPanel.setLayout(new BorderLayout());
-         mainPanel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
-          mainPanel.setBackground(GLPcolors.backgroundColor);
-          JLabel errorLabel = new JLabel("Error loading printers from " +
-                                         GLPvars.getServerName());
-          errorLabel.setForeground(Color.red);
-          mainPanel.add( errorLabel, BorderLayout.CENTER );
-          scrollPane = new JScrollPane(mainPanel);
-          return;
-        }
-
-        //  -----------------------------------------------------------
-        //
-        //  Now get the printer objects
-        //
-        CupsPrinter[] printers = new CupsPrinter[num_printers];
-        for (i=0; i < num_printers; i++)
-        {
-          try
-          {
-            u    = new URL("http://" + GLPvars.getServerName() + 
-                           ":631/printers/" + printer_names[i] );  
-            cups = new Cups(u);
-
-            // If authorization is required ....
-            cups.setUser(GLPvars.cupsUser);
-            cups.setPasswd(GLPvars.cupsPasswd);
-
-            printers[i] = new CupsPrinter( cups, printer_names[i] );
-          }
-          catch (IOException e)
-          {
-            // System.out.println("GLPprinters: IOException");
-            // return(null);
-          }
-        }
-
-
-        //
-        //  Keep track in case it changes.
-        //
-        cupsServerName = GLPvars.getServerName();
-
-        if (printer_names != null)
-          num_printers = printer_names.length;
-        else
-          num_printers = 0;
-
-        // default_printer = c.cupsGetDefault();
-
-       // Create the main panel to contain the two sub panels.
-       mainPanel   = new JPanel();
-        mainLayout  = new GridBagLayout();
-        mainConst   = new GridBagConstraints();
-
-       mainPanel.setLayout(mainLayout);
-       mainPanel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
-        mainPanel.setBackground(GLPcolors.backgroundColor);
-
-        //  --------------------------------------------------------------
-        //
-        //  Add the server name label
-        //
-       serverPanel   = new JPanel();
-        serverPanel.setLayout( new BorderLayout());
-        serverPanel.setBackground(GLPcolors.backgroundColor);
-        serverLabel = new JLabel("Printers on " + GLPvars.getServerName());
-        serverLabel.setForeground(GLPcolors.foregroundColor);
-        serverPanel.add(serverLabel, BorderLayout.NORTH );
-
-        mainConst.gridwidth = GridBagConstraints.RELATIVE;
-        mainConst.gridx     = 0;
-        mainConst.gridy     = y++;
-        mainConst.fill      = GridBagConstraints.BOTH;
-        mainConst.weightx   = 0.0;
-        mainConst.weighty   = 0.0;
-        mainConst.ipadx     = 4;
-        mainConst.ipady     = 4;
-        mainLayout.setConstraints( serverPanel, mainConst );
-        mainPanel.add(serverPanel);
-
-        //  --------------------------------------------------------------
-        //
-        //  Add the printer masking panel
-        //
-       maskPanel   = new JPanel();
-        maskLayout  = new GridBagLayout();
-        maskConst   = new GridBagConstraints();
-
-       maskPanel.setLayout(maskLayout);
-       maskPanel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
-        maskPanel.setBackground(GLPcolors.backgroundColor);
-
-        JPanel localMaskPanel = buildMaskPanel();
-        maskConst.gridwidth = GridBagConstraints.RELATIVE;
-        maskConst.gridx     = 0;
-        maskConst.gridy     = 0;
-        maskConst.fill      = GridBagConstraints.NONE;
-        maskConst.weightx   = 0.0;
-        maskConst.weighty   = 0.0;
-        maskConst.ipadx     = 4;
-        maskConst.ipady     = 4;
-        maskLayout.setConstraints( localMaskPanel, maskConst );
-        maskPanel.add(localMaskPanel);
-
-        //
-        //  Add the masking panel to the main panel.
-        //
-        mainConst.gridwidth = GridBagConstraints.RELATIVE;
-        mainConst.gridx     = 0;
-        mainConst.gridy     = y++;
-        mainConst.fill      = GridBagConstraints.BOTH;
-        mainConst.weightx   = 0.0;
-        mainConst.weighty   = 0.0;
-        mainConst.ipadx     = 4;
-        mainConst.ipady     = 4;
-        mainLayout.setConstraints( maskPanel, mainConst );
-        mainPanel.add(maskPanel);
-
-
-
-        //  --------------------------------------------------------------
-        //
-        //  Add the printers
-        //
-        double weight = 1.0 / (double)printers.length;
-        for (i=0; i < printers.length; i++)
-        {
-          JPanel subPanel = printerInfoPanel( printers[i] );
-          mainConst.gridwidth = GridBagConstraints.RELATIVE;
-          mainConst.gridx     = 0;
-          mainConst.gridy     = y++;
-          mainConst.fill      = GridBagConstraints.BOTH;
-          mainConst.weightx   = 1.0;
-          mainConst.weighty   = weight;
-          mainConst.ipady     = 4;
-          mainLayout.setConstraints( subPanel, mainConst );
-          mainPanel.add(subPanel);
-        }
-
-        //  ------------------------------------------------
-        //
-        //  Put the whole thing into a scroll pane.
-        //
-        scrollPane = new JScrollPane(mainPanel);
-    }
-
-
-
-    //  -----------------------------------------------------------
-    //
-    //  Build an info panel for an individual printer.
-    //
-    private JPanel printerInfoPanel( CupsPrinter cp ) 
-    {
-        JPanel             printerPanel = new JPanel();
-        BoxLayout          printerBox;
-
-        JPanel             leftHeader   = new JPanel();
-        JPanel             rightHeader  = new JPanel();
-
-        JPanel             leftPane     = new JPanel();
-        JPanel             rightPane    = new JPanel();
-
-        GridBagLayout      leftLayout   = new GridBagLayout();
-        GridBagLayout      rightLayout  = new GridBagLayout();
-
-        GridBagConstraints leftConst    = new GridBagConstraints();
-        GridBagConstraints rightConst   = new GridBagConstraints();
-
-
-        JLabel      printerIconLabel   = null;
-        JLabel      printerInfoLabel   = null;
-        JLabel      printerNameLabel   = null;
-        JLabel      printerMakeLabel   = null;
-
-        JTable      printerStatusTable = null;
-
-        printerBox = new BoxLayout(printerPanel, BoxLayout.X_AXIS);
-       printerPanel.setLayout(printerBox);
-       printerPanel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
-        printerPanel.setBackground(GLPcolors.backgroundColor);
-
-       // Add border around the panel.
-
-
-        //  ------------------------------------------------------------
-        //  Left pane
-        //  ------------------------------------------------------------
-        leftPane.setLayout(leftLayout);
-        leftPane.setBackground(GLPcolors.backgroundColor);
-
-        leftHeader.setLayout(new BorderLayout());
-        leftHeader.setBackground(GLPcolors.highlightColor);
-       leftHeader.setBorder(BorderFactory.createEmptyBorder(3,3,3,3));
-
-        printerNameLabel = new JLabel(cp.getPrinterName());
-        printerNameLabel.setForeground(Color.black);
-        leftHeader.add( printerNameLabel, BorderLayout.WEST);
-        leftConst.gridwidth = GridBagConstraints.RELATIVE;
-        leftConst.gridx     = 0;
-        leftConst.gridy     = 0;
-        leftConst.fill      = GridBagConstraints.HORIZONTAL;
-        leftConst.weightx   = 0.0;
-        leftConst.weighty   = 0.0;
-        leftConst.ipady     = 4;
-        leftLayout.setConstraints( leftHeader, leftConst );
-        leftPane.add(leftHeader);
-
-       String imageName = "./images/printer-" + cp.getStateText() + ".gif";
-       URL iconURL = ClassLoader.getSystemResource(imageName);
-       ImageIcon icon = new ImageIcon(iconURL);
-        JButton printerButton = new JButton( "<html><center><b>" + 
-                                             cp.getPrinterName() + 
-                                             "</b></center></html>",
-                                            icon );
-       printerButton.setBorder(BorderFactory.createEmptyBorder(3,3,3,3));
-        printerButton.setBackground(GLPcolors.backgroundColor);
-        printerButton.setActionCommand( cp.getPrinterName() );
-        printerButton.addActionListener(this);
-        printerButton.setToolTipText("Click to go to " + cp.getPrinterName() +
-                                     "'s extended informtion page.");
-
-        leftConst.gridwidth = GridBagConstraints.REMAINDER;
-        leftConst.gridx     = 0;
-        leftConst.gridy     = 1;
-        leftConst.fill      = GridBagConstraints.BOTH;
-        leftConst.weightx   = 1.0;
-        leftConst.weighty   = 1.0;
-        leftConst.ipady     = 4;
-        leftLayout.setConstraints( printerButton, leftConst );
-       leftPane.add(printerButton);
-
-
-        //  ------------------------------------------------------------
-        //  Right pane
-        //  ------------------------------------------------------------
-        rightPane.setLayout(rightLayout);
-        rightPane.setBackground(GLPcolors.backgroundColor);
-
-        rightHeader.setLayout(new BorderLayout());
-        rightHeader.setBackground(GLPcolors.highlightColor);
-       rightHeader.setBorder(BorderFactory.createEmptyBorder(3,3,3,3));
-
-        printerMakeLabel = new JLabel(cp.getMakeAndModel());
-        printerMakeLabel.setForeground(Color.black);
-        rightHeader.add( printerMakeLabel, BorderLayout.WEST);
-
-        rightConst.gridwidth = GridBagConstraints.RELATIVE;
-        rightConst.gridx     = 0;
-        rightConst.gridy     = 0;
-        rightConst.fill      = GridBagConstraints.HORIZONTAL;
-        rightConst.weightx   = 0.0;
-        rightConst.weighty   = 0.0;
-        rightConst.ipady     = 4;
-        rightLayout.setConstraints( rightHeader, rightConst );
-        rightPane.add(rightHeader);
-
-
-        Font   labelFont = new Font("Serif",Font.BOLD, 12 );
-        // Font   textFont = new Font("Serif", Font.NORMAL, 12 );
-        Font   messageFont = new Font("Serif", Font.ITALIC, 12 );
-
-        JLabel pdNameLabel     = new JLabel("Name");
-        JLabel pdLocationLabel = new JLabel("Location");
-        JLabel pdStatusLabel   = new JLabel("Status");
-        JLabel pdMessageLabel  = new JLabel("Message");
-
-        JLabel pdNameText     = new JLabel(cp.getPrinterName());
-        JLabel pdLocationText = new JLabel(cp.getLocation());
-        JLabel pdStatusText   = new JLabel(cp.getStateText());
-        JLabel pdMessageText  = new JLabel(cp.getStateReasons());
-
-        pdNameLabel.setFont(labelFont);
-        pdLocationLabel.setFont(labelFont);
-        pdStatusLabel.setFont(labelFont);
-        pdMessageLabel.setFont(labelFont);
-        pdMessageText.setFont(messageFont);
-
-        pdNameLabel.setForeground(Color.black);
-        pdLocationLabel.setForeground(Color.black);
-        pdStatusLabel.setForeground(Color.black);
-        pdMessageLabel.setForeground(Color.black);
-
-        JPanel tablePane;
-        if ((cp.getStateReasons().length() > 0) &&
-            (!cp.getStateReasons().equals("none")))
-        {
-          tablePane = new JPanel(new GridLayout(4,2,2,2));
-          tablePane.add(pdNameLabel);
-          tablePane.add(pdNameText);
-
-          tablePane.add(pdLocationLabel);
-          tablePane.add(pdLocationText);
-
-          tablePane.add(pdStatusLabel);
-          tablePane.add(pdStatusText);
-
-          tablePane.add(pdMessageLabel);
-          tablePane.add(pdMessageText);
-        }
-        else
-        {
-          tablePane = new JPanel(new GridLayout(3,2,2,2));
-          tablePane.add(pdNameLabel);
-          tablePane.add(pdNameText);
-
-          tablePane.add(pdLocationLabel);
-          tablePane.add(pdLocationText);
-
-          tablePane.add(pdStatusLabel);
-          tablePane.add(pdStatusText);
-
-        }
-        tablePane.setBackground(GLPcolors.backgroundColor);
-
-        // printerStatusTable.setShowGrid(false);
-        rightConst.gridwidth = GridBagConstraints.REMAINDER;
-        rightConst.gridx     = 0;
-        rightConst.gridy     = 1;
-        rightConst.fill      = GridBagConstraints.BOTH;
-        rightConst.weightx   = 1.0;
-        rightConst.weighty   = 1.0;
-        rightConst.ipady     = 4;
-        rightLayout.setConstraints( tablePane, rightConst );
-       rightPane.add(tablePane);
-
-        printerPanel.add(leftPane);
-        printerPanel.add(rightPane);
-
-        return(printerPanel);
-    }
-
-
-
-
-
-    public JPanel buildMaskPanel()
-    {
-
-      // Create the main panel to contain the two sub panels.
-      JPanel             namePanel   = new JPanel();
-      GridBagLayout      nameLayout  = new GridBagLayout();
-      GridBagConstraints nameConst   = new GridBagConstraints();
-
-      namePanel.setLayout(nameLayout);
-      namePanel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
-      namePanel.setBackground(GLPcolors.backgroundColor);
-
-
-      //Create a regular text field.
-      nameTextField = new JTextField(16);
-      nameTextField.setActionCommand(maskFieldString);
-      nameTextField.addActionListener(this);
-      nameTextField.setText("");
-
-      //Create some labels for the fields.
-      JLabel nameFieldLabel = new JLabel(maskFieldString);
-      nameFieldLabel.setForeground(GLPcolors.foregroundColor);
-      nameFieldLabel.setLabelFor(nameTextField);
-
-      //  Text
-      nameConst.gridwidth = GridBagConstraints.RELATIVE;
-      nameConst.gridx     = 0;
-      nameConst.gridy     = 0;
-      nameConst.fill      = GridBagConstraints.HORIZONTAL;
-      nameConst.weightx   = 0.0;
-      nameConst.weighty   = 0.0;
-      nameConst.ipadx     = 4;
-      nameConst.ipady     = 4;
-      nameLayout.setConstraints( nameFieldLabel, nameConst );
-      namePanel.add(nameFieldLabel);
-
-      nameConst.gridwidth = GridBagConstraints.RELATIVE;
-      nameConst.gridx     = 1;
-      nameConst.gridy     = 0;
-      nameConst.fill      = GridBagConstraints.HORIZONTAL;
-      nameConst.weightx   = 0.0;
-      nameConst.weighty   = 0.0;
-      nameConst.ipadx     = 4;
-      nameConst.ipady     = 4;
-      nameLayout.setConstraints( nameTextField, nameConst );
-      namePanel.add(nameTextField);
-
-      JButton applyButton = new JButton(maskButtonString);
-      applyButton.setBorder(BorderFactory.createCompoundBorder(
-                           BorderFactory.createRaisedBevelBorder(),
-                           BorderFactory.createEmptyBorder(2,2,2,2)));
-      applyButton.setActionCommand(maskButtonString);
-      applyButton.addActionListener(this);
-      nameConst.gridx     = 2;
-      nameConst.gridy     = 0;
-      nameConst.fill      = GridBagConstraints.NONE;
-      nameLayout.setConstraints( applyButton, nameConst );
-      nameConst.weightx   = 0.0;
-      nameConst.weighty   = 0.0;
-      nameConst.ipadx     = 4;
-      nameConst.ipady     = 4;
-      namePanel.add(applyButton);
-
-      return(namePanel);
-    }
-
-
-    public void actionPerformed(ActionEvent e) 
-    {
-        if (e.getActionCommand().equals(maskFieldString)) 
-        {
-          String s = nameTextField.getText();
-          if (s.length() > 1)
-          {
-            currentMask = s;
-          }
-        } 
-        else if (e.getActionCommand().equals(maskButtonString)) 
-        {
-          String s = nameTextField.getText();
-          if (s.length() > 1)
-          {
-            currentMask = s;
-          }
-        } 
-        else
-        {
-          GLPvars.selectedPrinterName = e.getActionCommand();
-          GLPvars.tabs.updateDetailPanel();
-          GLPvars.tabs.tabPanel.setSelectedIndex(2);
-        }
-    }
-
-
-    public JScrollPane getPanel()
-    {
-      return(scrollPane);
-    }
-}