Coverage details for ui.dialog.WorkstationDialog

LineHitsSource
1 /*******************************************************************************
2  * InternetCafe is a software solution that helps the management of Cybercafes
3  * according with the ITALIAN DECREE LAW ON ANTI-TERROR MEASURES, 27 JULY 2005.
4  * Copyright (C) 2006 Guido Angelo Ingenito
5  
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2
9  * of the License, or (at your option) any later version.
10  
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19  *******************************************************************************/
20 package ui.dialog;
21  
22 import java.awt.BorderLayout;
23 import java.awt.Dimension;
24 import java.awt.GridLayout;
25 import java.awt.Toolkit;
26 import java.awt.event.ActionEvent;
27 import java.awt.event.ActionListener;
28  
29 import javax.swing.ImageIcon;
30 import javax.swing.JButton;
31 import javax.swing.JDialog;
32 import javax.swing.JLabel;
33 import javax.swing.JPanel;
34 import javax.swing.border.TitledBorder;
35  
36 import org.apache.log4j.Logger;
37  
38 import ui.Messages;
39 import ui.command.CommandExecutor;
40 import ui.command.IO.SaveClientWorkstationCommand;
41 import ui.panel.WorkstationPanel;
42 import base.network.Workstation;
43  
440@SuppressWarnings("serial") //$NON-NLS-1$
450public class WorkstationDialog extends JDialog {
460 
470    private static final transient Logger logger = Logger
480            .getLogger(WorkstationDialog.class.getName());
49  
50     private JPanel contentPanel;
51  
52     private JPanel buttonPanel;
53  
54     private JButton saveWorkstationButton;
55  
56     private JButton clearWorkstationDataButton;
57  
58     private WorkstationPanel workstationPanel;
590 
600    private Workstation workstation;
610 
620    private boolean createWorkstation = false;
630 
640    public WorkstationDialog() {
650        createWorkstation = true;
660        initialize();
670    }
680 
690    public WorkstationDialog(Workstation workstation) {
700        this.workstation = workstation;
710        if (workstation == null)
720            createWorkstation = true;
730        initialize();
740    }
75  
760    protected void initialize() {
770        this.setResizable(false);
780        this.setSize(550, 600);
790        // Center the dialog
800        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
810        Dimension frameSize = this.getSize();
820        if (frameSize.height > screenSize.height) {
830            frameSize.height = screenSize.height;
840        }
850        if (frameSize.width > screenSize.width) {
860            frameSize.width = screenSize.width;
870        }
880        this.setLocation((screenSize.width - frameSize.width) / 2,
890                (screenSize.height - frameSize.height) / 2);
900 
910        this.setContentPane(getContentPanel());
920        this.setDefaultCloseOperation(JDialog.HIDE_ON_CLOSE);
930    }
94  
95     /**
96      * @return Returns the contentPanel.
97      */
980    protected JPanel getContentPanel() {
990        if (contentPanel == null) {
1000            contentPanel = new JPanel();
1010            contentPanel.setLayout(new BorderLayout());
1020            contentPanel.add(getWorkstationPanel(), BorderLayout.CENTER);
1030            contentPanel.add(getButtonPanel(), BorderLayout.SOUTH);
1040        }
1050        return contentPanel;
106     }
107  
108     /**
109      * @return Returns the buttonPanel.
110      */
1110    protected JPanel getButtonPanel() {
1120        if (buttonPanel == null) {
1130            buttonPanel = new JPanel();
1140            TitledBorder titledBorder = new TitledBorder(Messages.getString("dialog.availableactions")); //$NON-NLS-1$
1150            buttonPanel.setBorder(titledBorder);
1160            buttonPanel.setLayout(new GridLayout(1, 4));
1170            buttonPanel.add(new JLabel("")); //$NON-NLS-1$
1180            buttonPanel.add(getSaveWorkstationButton());
1190            buttonPanel.add(getClearWorkstationDataButton());
1200            buttonPanel.add(new JLabel("")); //$NON-NLS-1$
1210        }
1220        return buttonPanel;
123     }
124  
125     /**
126      * @return Returns the workstationPanel.
127      */
1280    protected WorkstationPanel getWorkstationPanel() {
1290        if (workstationPanel == null) {
1300            workstationPanel = new WorkstationPanel(workstation);
1310        }
1320        return workstationPanel;
133     }
134  
135     /**
136      * @return Returns the clearWorkstationDataButton.
137      */
1380    protected JButton getClearWorkstationDataButton() {
1390        if (clearWorkstationDataButton == null) {
1400            clearWorkstationDataButton = new JButton(Messages.getString("button.clear")); //$NON-NLS-1$
1410            clearWorkstationDataButton.setIcon(new ImageIcon(this.getClass()
1420                    .getResource("/icon/16x16/actions/view-refresh.png"))); //$NON-NLS-1$
1430 
1440            clearWorkstationDataButton.addActionListener(new ActionListener() {
145                 public void actionPerformed(ActionEvent arg0) {
146                     logger.debug("actionPerformed clearWorkstationDataButton"); //$NON-NLS-1$
147                     getWorkstationPanel().clearWorkstationData();
148                 }
149             });
1500        }
1510        return clearWorkstationDataButton;
152     }
153  
154     /**
155      * @return Returns the saveWorkstationButton.
156      */
1570    protected JButton getSaveWorkstationButton() {
1580        if (saveWorkstationButton == null) {
1590            saveWorkstationButton = new JButton(Messages.getString("button.save")); //$NON-NLS-1$
1600            saveWorkstationButton.setIcon(new ImageIcon(this.getClass()
1610                    .getResource("/icon/16x16/actions/document-save.png"))); //$NON-NLS-1$
1620 
1630            saveWorkstationButton.addActionListener(new ActionListener() {
164                 public void actionPerformed(ActionEvent arg0) {
165                     logger.debug("actionPerformed saveWorkstationButton"); //$NON-NLS-1$
166                     SaveClientWorkstationCommand saveWorkstationCommand = new SaveClientWorkstationCommand(
167                             getWorkstationPanel(), workstation,
168                             createWorkstation);
169                     CommandExecutor.getInstance().executeCommand(
170                             saveWorkstationCommand, true);
171                     if (saveWorkstationCommand.getStatus() == SaveClientWorkstationCommand.SUCCESS_STATUS)
172                         setVisible(false);
173                 }
174  
175             });
176  
1770        }
1780        return saveWorkstationButton;
179     }
180  
181 }

this report was generated by version 1.0.5 of jcoverage.
visit www.jcoverage.com for updates.

copyright © 2003, jcoverage ltd. all rights reserved.
Java is a trademark of Sun Microsystems, Inc. in the United States and other countries.