Clover icon

jalviewX

  1. Project Clover database Wed Oct 31 2018 15:13:58 GMT
  2. Package jalview.jbgui

File GSliderPanel.java

 

Coverage histogram

../../img/srcFileCovDistChart8.png
19% of files have more coverage

Code metrics

0
60
11
1
224
151
13
0.22
5.45
11
1.18

Classes

Class Line # Actions
GSliderPanel 52 60 13 19
0.7323943473.2%
 

Contributing tests

This file is covered by 4 tests. .

Source view

1    /*
2    * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3    * Copyright (C) $$Year-Rel$$ The Jalview Authors
4    *
5    * This file is part of Jalview.
6    *
7    * Jalview is free software: you can redistribute it and/or
8    * modify it under the terms of the GNU General Public License
9    * as published by the Free Software Foundation, either version 3
10    * of the License, or (at your option) any later version.
11    *
12    * Jalview is distributed in the hope that it will be useful, but
13    * WITHOUT ANY WARRANTY; without even the implied warranty
14    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15    * PURPOSE. See the GNU General Public License for more details.
16    *
17    * You should have received a copy of the GNU General Public License
18    * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19    * The Jalview Authors are detailed in the 'AUTHORS' file.
20    */
21    package jalview.jbgui;
22   
23    import jalview.util.MessageManager;
24   
25    import java.awt.BorderLayout;
26    import java.awt.Color;
27    import java.awt.Dimension;
28    import java.awt.FlowLayout;
29    import java.awt.Font;
30    import java.awt.GridLayout;
31    import java.awt.event.ActionEvent;
32    import java.awt.event.ActionListener;
33    import java.awt.event.FocusAdapter;
34    import java.awt.event.FocusEvent;
35    import java.awt.event.MouseAdapter;
36    import java.awt.event.MouseEvent;
37   
38    import javax.swing.JButton;
39    import javax.swing.JCheckBox;
40    import javax.swing.JLabel;
41    import javax.swing.JPanel;
42    import javax.swing.JSlider;
43    import javax.swing.JTextField;
44    import javax.swing.SwingConstants;
45   
46    /**
47    * DOCUMENT ME!
48    *
49    * @author $author$
50    * @version $Revision$
51    */
 
52    public class GSliderPanel extends JPanel
53    {
54    private static final Font VERDANA_11 = new java.awt.Font("Verdana", 0, 11);
55   
56    protected static final int FRAME_WIDTH = 420;
57   
58    protected static final int FRAME_HEIGHT = 120;
59   
60    // this is used for conservation colours, PID colours and redundancy threshold
61    protected JSlider slider = new JSlider();
62   
63    protected JTextField valueField = new JTextField();
64   
65    protected JLabel label = new JLabel();
66   
67    protected JPanel southPanel = new JPanel();
68   
69    protected JButton applyButton = new JButton();
70   
71    protected JButton undoButton = new JButton();
72   
73    protected JCheckBox allGroupsCheck = new JCheckBox();
74   
75    /**
76    * Creates a new GSliderPanel object.
77    */
 
78  17 toggle public GSliderPanel()
79    {
80  17 try
81    {
82  17 jbInit();
83    } catch (Exception e)
84    {
85  0 e.printStackTrace();
86    }
87    }
88   
89    /**
90    * Constructs and lays out the controls
91    */
 
92  17 toggle private void jbInit()
93    {
94  17 slider.setMajorTickSpacing(10);
95  17 slider.setMinorTickSpacing(1);
96  17 slider.setPaintTicks(true);
97  17 slider.setBackground(Color.white);
98  17 slider.setFont(VERDANA_11);
99  17 slider.setDoubleBuffered(true);
100  17 slider.addMouseListener(new MouseAdapter()
101    {
 
102  0 toggle @Override
103    public void mouseReleased(MouseEvent e)
104    {
105  0 slider_mouseReleased(e);
106    }
107    });
108  17 valueField.setFont(VERDANA_11);
109  17 valueField.setMinimumSize(new Dimension(6, 14));
110  17 valueField.setPreferredSize(new Dimension(50, 12));
111  17 valueField.setText("");
112  17 valueField.setHorizontalAlignment(SwingConstants.CENTER);
113  17 valueField.addActionListener(new ActionListener()
114    {
 
115  0 toggle @Override
116    public void actionPerformed(ActionEvent e)
117    {
118  0 valueField_actionPerformed();
119    }
120    });
121  17 valueField.addFocusListener(new FocusAdapter()
122    {
 
123  0 toggle @Override
124    public void focusLost(FocusEvent e)
125    {
126  0 valueField_actionPerformed();
127    }
128    });
129  17 label.setFont(VERDANA_11);
130  17 label.setOpaque(false);
131  17 label.setHorizontalAlignment(SwingConstants.CENTER);
132  17 label.setText(MessageManager.getString("label.set_this_label_text"));
133   
134  17 applyButton.setFont(VERDANA_11);
135  17 applyButton.setOpaque(false);
136  17 applyButton.setText(MessageManager.getString("action.apply"));
137  17 applyButton.addActionListener(new ActionListener()
138    {
 
139  0 toggle @Override
140    public void actionPerformed(ActionEvent e)
141    {
142  0 applyButton_actionPerformed(e);
143    }
144    });
145  17 undoButton.setEnabled(false);
146  17 undoButton.setFont(VERDANA_11);
147  17 undoButton.setOpaque(false);
148  17 undoButton.setText(MessageManager.getString("action.undo"));
149  17 undoButton.addActionListener(new ActionListener()
150    {
 
151  0 toggle @Override
152    public void actionPerformed(ActionEvent e)
153    {
154  0 undoButton_actionPerformed(e);
155    }
156    });
157  17 allGroupsCheck.setEnabled(false);
158  17 allGroupsCheck.setFont(VERDANA_11);
159  17 allGroupsCheck.setOpaque(false);
160  17 allGroupsCheck
161    .setText(MessageManager.getString("action.apply_all_groups"));
162   
163  17 this.setLayout(new GridLayout(2, 0));
164  17 this.setBackground(Color.white);
165   
166  17 JPanel firstRow = new JPanel(new FlowLayout());
167  17 firstRow.setOpaque(false);
168  17 firstRow.add(label);
169  17 firstRow.add(applyButton);
170  17 firstRow.add(undoButton);
171  17 this.add(firstRow);
172   
173  17 JPanel jPanel1 = new JPanel(new BorderLayout());
174  17 jPanel1.setOpaque(false);
175  17 jPanel1.add(valueField, BorderLayout.CENTER);
176  17 jPanel1.add(allGroupsCheck, BorderLayout.EAST);
177   
178  17 southPanel.setLayout(new BorderLayout());
179  17 southPanel.setOpaque(false);
180  17 southPanel.add(jPanel1, BorderLayout.EAST);
181  17 southPanel.add(slider, BorderLayout.CENTER);
182  17 this.add(southPanel);
183    }
184   
185    /**
186    * Action on changing the slider text field value
187    */
 
188  0 toggle protected void valueField_actionPerformed()
189    {
190  0 try
191    {
192  0 int i = Integer.valueOf(valueField.getText());
193  0 slider.setValue(i);
194    } catch (NumberFormatException ex)
195    {
196  0 valueField.setText(String.valueOf(slider.getValue()));
197    }
198    }
199   
200    /**
201    * DOCUMENT ME!
202    *
203    * @param e
204    * DOCUMENT ME!
205    */
 
206  0 toggle protected void applyButton_actionPerformed(ActionEvent e)
207    {
208    }
209   
210    /**
211    * DOCUMENT ME!
212    *
213    * @param e
214    * DOCUMENT ME!
215    */
 
216  0 toggle protected void undoButton_actionPerformed(ActionEvent e)
217    {
218    }
219   
 
220  0 toggle public void slider_mouseReleased(MouseEvent e)
221    {
222   
223    }
224    }