2 |
26 Feb 07 |
jari |
1 |
/* |
2 |
26 Feb 07 |
jari |
* Created on Aug 23, 2005 |
2 |
26 Feb 07 |
jari |
3 |
* |
2 |
26 Feb 07 |
jari |
* TODO To change the template for this generated file go to |
2 |
26 Feb 07 |
jari |
* Window - Preferences - Java - Code Style - Code Templates |
2 |
26 Feb 07 |
jari |
6 |
*/ |
2 |
26 Feb 07 |
jari |
7 |
package org.tigr.microarray.mev.cluster.gui.impl.tease; |
2 |
26 Feb 07 |
jari |
8 |
|
2 |
26 Feb 07 |
jari |
9 |
import java.awt.BorderLayout; |
2 |
26 Feb 07 |
jari |
10 |
import java.awt.Color; |
2 |
26 Feb 07 |
jari |
11 |
import java.awt.Dimension; |
2 |
26 Feb 07 |
jari |
12 |
import java.awt.Font; |
2 |
26 Feb 07 |
jari |
13 |
import java.awt.Frame; |
2 |
26 Feb 07 |
jari |
14 |
import java.awt.GridBagConstraints; |
2 |
26 Feb 07 |
jari |
15 |
import java.awt.GridBagLayout; |
2 |
26 Feb 07 |
jari |
16 |
import java.awt.Insets; |
2 |
26 Feb 07 |
jari |
17 |
import java.awt.Toolkit; |
2 |
26 Feb 07 |
jari |
18 |
import java.awt.event.ActionEvent; |
2 |
26 Feb 07 |
jari |
19 |
import java.awt.event.KeyListener; |
2 |
26 Feb 07 |
jari |
20 |
import java.awt.event.WindowEvent; |
2 |
26 Feb 07 |
jari |
21 |
import java.util.Hashtable; |
2 |
26 Feb 07 |
jari |
22 |
|
2 |
26 Feb 07 |
jari |
23 |
import javax.swing.BorderFactory; |
2 |
26 Feb 07 |
jari |
24 |
import javax.swing.JButton; |
2 |
26 Feb 07 |
jari |
25 |
import javax.swing.JCheckBox; |
2 |
26 Feb 07 |
jari |
26 |
import javax.swing.JLabel; |
2 |
26 Feb 07 |
jari |
27 |
import javax.swing.JOptionPane; |
2 |
26 Feb 07 |
jari |
28 |
import javax.swing.JPanel; |
2 |
26 Feb 07 |
jari |
29 |
import javax.swing.JSeparator; |
2 |
26 Feb 07 |
jari |
30 |
import javax.swing.JSlider; |
2 |
26 Feb 07 |
jari |
31 |
import javax.swing.JTextField; |
2 |
26 Feb 07 |
jari |
32 |
import javax.swing.UIManager; |
2 |
26 Feb 07 |
jari |
33 |
import javax.swing.border.BevelBorder; |
2 |
26 Feb 07 |
jari |
34 |
import javax.swing.border.EtchedBorder; |
2 |
26 Feb 07 |
jari |
35 |
import javax.swing.border.TitledBorder; |
2 |
26 Feb 07 |
jari |
36 |
import javax.swing.event.ChangeListener; |
2 |
26 Feb 07 |
jari |
37 |
|
2 |
26 Feb 07 |
jari |
38 |
import org.tigr.microarray.mev.cluster.gui.impl.dialogs.AlgorithmDialog; |
2 |
26 Feb 07 |
jari |
39 |
import org.tigr.microarray.mev.cluster.gui.impl.dialogs.DialogListener; |
2 |
26 Feb 07 |
jari |
40 |
import org.tigr.microarray.mev.cluster.gui.impl.dialogs.dialogHelpUtil.HelpWindow; |
2 |
26 Feb 07 |
jari |
41 |
|
2 |
26 Feb 07 |
jari |
42 |
/** |
2 |
26 Feb 07 |
jari |
* @author Annie Liu |
2 |
26 Feb 07 |
jari |
* @version Aug 23, 2005 |
2 |
26 Feb 07 |
jari |
45 |
* |
2 |
26 Feb 07 |
jari |
* TODO To change the template for this generated type comment go to |
2 |
26 Feb 07 |
jari |
* Window - Preferences - Java - Code Style - Code Templates |
2 |
26 Feb 07 |
jari |
48 |
*/ |
2 |
26 Feb 07 |
jari |
49 |
public class TEASEConfigDialog extends AlgorithmDialog { |
2 |
26 Feb 07 |
jari |
50 |
|
2 |
26 Feb 07 |
jari |
51 |
private int result; |
2 |
26 Feb 07 |
jari |
52 |
private JTextField zeroTextField; |
2 |
26 Feb 07 |
jari |
53 |
private JTextField minTextField; |
2 |
26 Feb 07 |
jari |
54 |
private JTextField maxTextField; |
2 |
26 Feb 07 |
jari |
55 |
private JTextField numTerminalsField; |
2 |
26 Feb 07 |
jari |
56 |
|
2 |
26 Feb 07 |
jari |
57 |
private float zThr; |
2 |
26 Feb 07 |
jari |
58 |
private int minPixDist; |
2 |
26 Feb 07 |
jari |
59 |
private int maxPixDist; |
2 |
26 Feb 07 |
jari |
60 |
|
2 |
26 Feb 07 |
jari |
61 |
private float origZThr; |
2 |
26 Feb 07 |
jari |
62 |
private int origMinPixDist; |
2 |
26 Feb 07 |
jari |
63 |
private int origMaxPixDist; |
2 |
26 Feb 07 |
jari |
64 |
|
2 |
26 Feb 07 |
jari |
65 |
private float minDist; |
2 |
26 Feb 07 |
jari |
66 |
private float maxDist; |
2 |
26 Feb 07 |
jari |
67 |
private float distRange; |
2 |
26 Feb 07 |
jari |
68 |
private JButton applyButton; |
2 |
26 Feb 07 |
jari |
69 |
private JCheckBox createClusterViewsBox; |
2 |
26 Feb 07 |
jari |
70 |
private JSlider slider; |
2 |
26 Feb 07 |
jari |
71 |
private HCLTree tree; |
2 |
26 Feb 07 |
jari |
72 |
|
2 |
26 Feb 07 |
jari |
73 |
private TEASEViewer viewer; |
2 |
26 Feb 07 |
jari |
74 |
|
2 |
26 Feb 07 |
jari |
75 |
/** |
2 |
26 Feb 07 |
jari |
* Constructs the dialog. |
2 |
26 Feb 07 |
jari |
77 |
*/ |
2 |
26 Feb 07 |
jari |
78 |
public TEASEConfigDialog(Frame parent, TEASEViewer viewer, float zeroThreshold, int minPixelDistance, |
2 |
26 Feb 07 |
jari |
79 |
int maxPixelDistance, float minDist, float maxDist) { |
2 |
26 Feb 07 |
jari |
80 |
super(parent, "Tree Configuration", true); |
2 |
26 Feb 07 |
jari |
81 |
this.viewer = viewer; |
2 |
26 Feb 07 |
jari |
82 |
zThr = zeroThreshold; |
2 |
26 Feb 07 |
jari |
83 |
this.minDist = minDist; |
2 |
26 Feb 07 |
jari |
84 |
this.maxDist = maxDist; |
2 |
26 Feb 07 |
jari |
85 |
|
2 |
26 Feb 07 |
jari |
86 |
this.origZThr = zeroThreshold; |
2 |
26 Feb 07 |
jari |
87 |
this.origMinPixDist = minPixelDistance; |
2 |
26 Feb 07 |
jari |
88 |
this.origMaxPixDist = maxPixelDistance; |
2 |
26 Feb 07 |
jari |
89 |
|
2 |
26 Feb 07 |
jari |
90 |
this.distRange = maxDist - minDist; |
2 |
26 Feb 07 |
jari |
91 |
minPixDist = minPixelDistance; |
2 |
26 Feb 07 |
jari |
92 |
maxPixDist = maxPixelDistance; |
2 |
26 Feb 07 |
jari |
93 |
Listener listener = new Listener(); |
2 |
26 Feb 07 |
jari |
94 |
addWindowListener(listener); |
2 |
26 Feb 07 |
jari |
95 |
|
2 |
26 Feb 07 |
jari |
96 |
JPanel cutOffPanel = new JPanel(new GridBagLayout()); |
2 |
26 Feb 07 |
jari |
97 |
cutOffPanel.setBackground(Color.white); |
2 |
26 Feb 07 |
jari |
98 |
cutOffPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "Distance Treshold Adjustment", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, new Font("Dialog", Font.BOLD, 12), Color.black)); |
2 |
26 Feb 07 |
jari |
99 |
cutOffPanel.add(new JLabel("Distance threshold"), new GridBagConstraints(0,0,1,1,0,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(0,0,0,10),0,0)); |
2 |
26 Feb 07 |
jari |
100 |
|
2 |
26 Feb 07 |
jari |
101 |
String z = String.valueOf(zeroThreshold); |
2 |
26 Feb 07 |
jari |
102 |
z = z.substring(0, Math.min(5, z.length())); |
2 |
26 Feb 07 |
jari |
103 |
zeroTextField = new JTextField(z, 4); |
2 |
26 Feb 07 |
jari |
104 |
|
2 |
26 Feb 07 |
jari |
105 |
cutOffPanel.add(zeroTextField, new GridBagConstraints(1,0,1,1,0,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(0,0,0,0),0,0)); |
2 |
26 Feb 07 |
jari |
106 |
slider = new JSlider(JSlider.HORIZONTAL, 0, 1000, 0); |
2 |
26 Feb 07 |
jari |
107 |
slider.setBackground(Color.white); |
2 |
26 Feb 07 |
jari |
108 |
slider.setValue((int)(1000*((zThr-this.minDist)/(this.maxDist-this.minDist)))); |
2 |
26 Feb 07 |
jari |
109 |
|
2 |
26 Feb 07 |
jari |
110 |
Hashtable labelTable = new Hashtable(); |
2 |
26 Feb 07 |
jari |
111 |
labelTable.put( new Integer( 0 ), new JLabel("Min") ); |
2 |
26 Feb 07 |
jari |
112 |
labelTable.put( new Integer(500), new JLabel("(Distance Range)")); |
2 |
26 Feb 07 |
jari |
113 |
labelTable.put( new Integer( 1000 ), new JLabel("Max") ); |
2 |
26 Feb 07 |
jari |
114 |
slider.setLabelTable( labelTable ); |
2 |
26 Feb 07 |
jari |
115 |
slider.setPaintLabels(true); |
2 |
26 Feb 07 |
jari |
116 |
|
2 |
26 Feb 07 |
jari |
117 |
cutOffPanel.add(slider, new GridBagConstraints(0,1,2,1,0,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(10,0,10,0),0,0)); |
2 |
26 Feb 07 |
jari |
118 |
cutOffPanel.add(new JSeparator(JSeparator.VERTICAL), new GridBagConstraints(2,0,1,2,0,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(5,10,5,10),0,0)); |
2 |
26 Feb 07 |
jari |
119 |
cutOffPanel.add(new JLabel("# of Terminal Nodes:"), new GridBagConstraints(3,0,1,1,0,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(0,0,0,10),0,0)); |
2 |
26 Feb 07 |
jari |
120 |
numTerminalsField = new JTextField(6); |
2 |
26 Feb 07 |
jari |
121 |
|
2 |
26 Feb 07 |
jari |
122 |
numTerminalsField.setEditable(false); |
2 |
26 Feb 07 |
jari |
123 |
numTerminalsField.setSize(90,25); |
2 |
26 Feb 07 |
jari |
124 |
numTerminalsField.setPreferredSize(new Dimension(90,25)); |
2 |
26 Feb 07 |
jari |
125 |
cutOffPanel.add(numTerminalsField, new GridBagConstraints(4,0,1,1,0,0,GridBagConstraints.CENTER,GridBagConstraints.NONE, new Insets(0,0,0,0),0,0)); |
2 |
26 Feb 07 |
jari |
126 |
createClusterViewsBox = new JCheckBox("Create Cluster Viewers", false); |
2 |
26 Feb 07 |
jari |
127 |
createClusterViewsBox.setFocusPainted(false); |
2 |
26 Feb 07 |
jari |
128 |
createClusterViewsBox.setBackground(Color.white); |
2 |
26 Feb 07 |
jari |
129 |
createClusterViewsBox.setForeground(UIManager.getColor("Label.foreground")); |
2 |
26 Feb 07 |
jari |
130 |
cutOffPanel.add(createClusterViewsBox, new GridBagConstraints(3,1,2,1,0,0,GridBagConstraints.CENTER,GridBagConstraints.NONE, new Insets(0,0,0,0),0,0)); |
2 |
26 Feb 07 |
jari |
131 |
|
2 |
26 Feb 07 |
jari |
132 |
JPanel treeDimPanel = new JPanel(new GridBagLayout()); |
2 |
26 Feb 07 |
jari |
133 |
treeDimPanel.setBackground(Color.white); |
2 |
26 Feb 07 |
jari |
134 |
treeDimPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "Tree Dimension Parameters", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, new Font("Dialog", Font.BOLD, 12), Color.black)); |
2 |
26 Feb 07 |
jari |
135 |
|
2 |
26 Feb 07 |
jari |
136 |
treeDimPanel.add(new JLabel("Minimum pixel height"), new GridBagConstraints(0,0,1,1,0.3,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(0,20,0,10),0,0)); |
2 |
26 Feb 07 |
jari |
137 |
treeDimPanel.add(new JLabel("Maximum pixel height"), new GridBagConstraints(0,1,1,1,0.3,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(0,20,0,10),0,0)); |
2 |
26 Feb 07 |
jari |
138 |
|
2 |
26 Feb 07 |
jari |
139 |
minTextField = new JTextField(String.valueOf(minPixelDistance), 4); |
2 |
26 Feb 07 |
jari |
140 |
treeDimPanel.add(minTextField, new GridBagConstraints(1,0,1,1,0.3,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(0,0,0,0),0,0)); |
2 |
26 Feb 07 |
jari |
141 |
maxTextField = new JTextField(String.valueOf(maxPixelDistance), 4); |
2 |
26 Feb 07 |
jari |
142 |
treeDimPanel.add(maxTextField, new GridBagConstraints(1,1,1,1,0.3,0,GridBagConstraints.CENTER,GridBagConstraints.BOTH, new Insets(0,0,0,0),0,0)); |
2 |
26 Feb 07 |
jari |
143 |
applyButton = new JButton("Apply Dimensions"); |
2 |
26 Feb 07 |
jari |
144 |
applyButton.setActionCommand("apply-tree-dimensions-command"); |
2 |
26 Feb 07 |
jari |
145 |
applyButton.setFocusPainted(false); |
2 |
26 Feb 07 |
jari |
146 |
applyButton.setMargin(new Insets(5,15,5,15)); |
2 |
26 Feb 07 |
jari |
147 |
applyButton.setSize(110, 30); |
2 |
26 Feb 07 |
jari |
148 |
applyButton.setPreferredSize(new Dimension(120, 30)); |
2 |
26 Feb 07 |
jari |
149 |
applyButton.setBorder(BorderFactory.createBevelBorder(BevelBorder.RAISED, Color.lightGray, Color.gray)); |
2 |
26 Feb 07 |
jari |
150 |
treeDimPanel.add(applyButton, new GridBagConstraints(2,0,1,2,0.8,0,GridBagConstraints.CENTER,GridBagConstraints.NONE, new Insets(0,0,0,0),0,0)); |
2 |
26 Feb 07 |
jari |
151 |
|
2 |
26 Feb 07 |
jari |
152 |
JPanel panel3 = new JPanel(new BorderLayout()); |
2 |
26 Feb 07 |
jari |
153 |
panel3.setForeground(Color.white); |
2 |
26 Feb 07 |
jari |
154 |
panel3.setBorder(BorderFactory.createLineBorder(Color.gray)); |
2 |
26 Feb 07 |
jari |
155 |
|
2 |
26 Feb 07 |
jari |
156 |
panel3.setBackground(Color.white); |
2 |
26 Feb 07 |
jari |
157 |
panel3.add(cutOffPanel, BorderLayout.NORTH); |
2 |
26 Feb 07 |
jari |
158 |
panel3.add(treeDimPanel, BorderLayout.CENTER); |
2 |
26 Feb 07 |
jari |
159 |
|
2 |
26 Feb 07 |
jari |
160 |
JPanel panel1 = new JPanel(new BorderLayout()); |
2 |
26 Feb 07 |
jari |
161 |
|
2 |
26 Feb 07 |
jari |
162 |
panel1.add(panel3, BorderLayout.CENTER); |
2 |
26 Feb 07 |
jari |
163 |
addContent(panel1); |
2 |
26 Feb 07 |
jari |
164 |
slider.addChangeListener(listener); |
2 |
26 Feb 07 |
jari |
165 |
zeroTextField.addKeyListener(listener); |
2 |
26 Feb 07 |
jari |
166 |
applyButton.addActionListener(listener); |
2 |
26 Feb 07 |
jari |
167 |
setActionListeners(listener); |
2 |
26 Feb 07 |
jari |
168 |
this.pack(); |
2 |
26 Feb 07 |
jari |
// setResizable(false); |
2 |
26 Feb 07 |
jari |
170 |
} |
2 |
26 Feb 07 |
jari |
171 |
|
2 |
26 Feb 07 |
jari |
172 |
/** |
2 |
26 Feb 07 |
jari |
* Show the dialog in screen's center. |
2 |
26 Feb 07 |
jari |
174 |
*/ |
2 |
26 Feb 07 |
jari |
175 |
public int showModal() { |
2 |
26 Feb 07 |
jari |
176 |
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); |
2 |
26 Feb 07 |
jari |
177 |
setLocation((screenSize.width - getSize().width)/2, (screenSize.height - getSize().height)/2); |
2 |
26 Feb 07 |
jari |
178 |
show(); |
2 |
26 Feb 07 |
jari |
179 |
return result; |
2 |
26 Feb 07 |
jari |
180 |
} |
2 |
26 Feb 07 |
jari |
181 |
|
2 |
26 Feb 07 |
jari |
182 |
/** |
2 |
26 Feb 07 |
jari |
* Associate an HCLTree object with the Configuration Dialog |
2 |
26 Feb 07 |
jari |
184 |
*/ |
2 |
26 Feb 07 |
jari |
185 |
public void setTree(HCLTree tree){ |
2 |
26 Feb 07 |
jari |
186 |
this.tree = tree; |
2 |
26 Feb 07 |
jari |
187 |
this.numTerminalsField.setText(String.valueOf(this.tree.getNumberOfTerminalNodes())); |
2 |
26 Feb 07 |
jari |
188 |
} |
2 |
26 Feb 07 |
jari |
189 |
|
2 |
26 Feb 07 |
jari |
190 |
/** |
2 |
26 Feb 07 |
jari |
* Returns choosed zero threshold value. |
2 |
26 Feb 07 |
jari |
192 |
*/ |
2 |
26 Feb 07 |
jari |
193 |
public float getZeroThreshold() { |
2 |
26 Feb 07 |
jari |
194 |
float value = Float.parseFloat(zeroTextField.getText()); |
2 |
26 Feb 07 |
jari |
195 |
if(value <= minDist) return minDist; |
2 |
26 Feb 07 |
jari |
196 |
if(value >= maxDist) return maxDist; |
2 |
26 Feb 07 |
jari |
197 |
return value; |
2 |
26 Feb 07 |
jari |
198 |
} |
2 |
26 Feb 07 |
jari |
199 |
|
2 |
26 Feb 07 |
jari |
200 |
/** |
2 |
26 Feb 07 |
jari |
* Returns choosed min distance value. |
2 |
26 Feb 07 |
jari |
202 |
*/ |
2 |
26 Feb 07 |
jari |
203 |
public int getMinDistance() { |
2 |
26 Feb 07 |
jari |
204 |
return Integer.parseInt(minTextField.getText()); |
2 |
26 Feb 07 |
jari |
205 |
} |
2 |
26 Feb 07 |
jari |
206 |
|
2 |
26 Feb 07 |
jari |
207 |
/** |
2 |
26 Feb 07 |
jari |
* Returns choosed max distance value. |
2 |
26 Feb 07 |
jari |
209 |
*/ |
2 |
26 Feb 07 |
jari |
210 |
public int getMaxDistance() { |
2 |
26 Feb 07 |
jari |
211 |
return Integer.parseInt(maxTextField.getText()); |
2 |
26 Feb 07 |
jari |
212 |
} |
2 |
26 Feb 07 |
jari |
213 |
|
2 |
26 Feb 07 |
jari |
214 |
/** |
2 |
26 Feb 07 |
jari |
* Returns true if cluster views are to be created |
2 |
26 Feb 07 |
jari |
216 |
*/ |
2 |
26 Feb 07 |
jari |
217 |
public boolean isCreateClusterViews(){ |
2 |
26 Feb 07 |
jari |
218 |
return this.createClusterViewsBox.isSelected(); |
2 |
26 Feb 07 |
jari |
219 |
} |
2 |
26 Feb 07 |
jari |
220 |
|
2 |
26 Feb 07 |
jari |
221 |
/** |
2 |
26 Feb 07 |
jari |
* The class to listen to the dialog events. |
2 |
26 Feb 07 |
jari |
223 |
*/ |
2 |
26 Feb 07 |
jari |
224 |
private class Listener extends DialogListener implements ChangeListener, KeyListener{ |
2 |
26 Feb 07 |
jari |
225 |
|
2 |
26 Feb 07 |
jari |
226 |
public void actionPerformed(ActionEvent e) { |
2 |
26 Feb 07 |
jari |
227 |
int min, max; |
2 |
26 Feb 07 |
jari |
228 |
String command = e.getActionCommand(); |
2 |
26 Feb 07 |
jari |
229 |
if (command.equals("ok-command")) { |
2 |
26 Feb 07 |
jari |
230 |
try { |
2 |
26 Feb 07 |
jari |
231 |
zThr = Float.parseFloat(zeroTextField.getText()); |
2 |
26 Feb 07 |
jari |
232 |
minPixDist = Integer.parseInt(minTextField.getText()); |
2 |
26 Feb 07 |
jari |
233 |
maxPixDist = Integer.parseInt(maxTextField.getText()); |
2 |
26 Feb 07 |
jari |
234 |
tree.setProperties(zThr, minPixDist, maxPixDist); |
2 |
26 Feb 07 |
jari |
235 |
viewer.revalidateViewer(); |
2 |
26 Feb 07 |
jari |
236 |
viewer.repaint(); |
2 |
26 Feb 07 |
jari |
237 |
result = JOptionPane.OK_OPTION; |
2 |
26 Feb 07 |
jari |
238 |
dispose(); |
2 |
26 Feb 07 |
jari |
239 |
} catch (Exception exc) { |
2 |
26 Feb 07 |
jari |
240 |
result = JOptionPane.CANCEL_OPTION; |
2 |
26 Feb 07 |
jari |
241 |
dispose(); |
2 |
26 Feb 07 |
jari |
242 |
} |
2 |
26 Feb 07 |
jari |
243 |
} else if(command.equals("apply-tree-dimensions-command")){ |
2 |
26 Feb 07 |
jari |
244 |
try{ |
2 |
26 Feb 07 |
jari |
245 |
minPixDist = Integer.parseInt(minTextField.getText()); |
2 |
26 Feb 07 |
jari |
246 |
maxPixDist = Integer.parseInt(maxTextField.getText()); |
2 |
26 Feb 07 |
jari |
247 |
tree.setPixelHeightLimits(minPixDist, maxPixDist); |
2 |
26 Feb 07 |
jari |
248 |
viewer.revalidateViewer(); |
2 |
26 Feb 07 |
jari |
249 |
viewer.repaint(); |
2 |
26 Feb 07 |
jari |
250 |
} catch (NumberFormatException e1) { |
2 |
26 Feb 07 |
jari |
251 |
result = JOptionPane.CANCEL_OPTION; |
2 |
26 Feb 07 |
jari |
252 |
dispose(); |
2 |
26 Feb 07 |
jari |
253 |
} |
2 |
26 Feb 07 |
jari |
254 |
}else if (command.equals("cancel-command")) { |
2 |
26 Feb 07 |
jari |
//reset to inital values |
2 |
26 Feb 07 |
jari |
256 |
tree.setProperties(origZThr, origMinPixDist, origMaxPixDist); |
2 |
26 Feb 07 |
jari |
257 |
viewer.revalidateViewer(); |
2 |
26 Feb 07 |
jari |
258 |
viewer.repaint(); |
2 |
26 Feb 07 |
jari |
259 |
result = JOptionPane.CANCEL_OPTION; |
2 |
26 Feb 07 |
jari |
260 |
dispose(); |
2 |
26 Feb 07 |
jari |
261 |
} else if(command.equals("reset-command")){ |
2 |
26 Feb 07 |
jari |
//reset to inital values |
2 |
26 Feb 07 |
jari |
263 |
zeroTextField.setText(String.valueOf(origZThr)); |
2 |
26 Feb 07 |
jari |
264 |
minTextField.setText(String.valueOf(origMinPixDist)); |
2 |
26 Feb 07 |
jari |
265 |
maxTextField.setText(String.valueOf(origMaxPixDist)); |
2 |
26 Feb 07 |
jari |
266 |
tree.setProperties(origZThr, origMinPixDist, origMaxPixDist); |
2 |
26 Feb 07 |
jari |
267 |
slider.setValue(0); |
2 |
26 Feb 07 |
jari |
268 |
createClusterViewsBox.setSelected(false); |
2 |
26 Feb 07 |
jari |
269 |
viewer.revalidateViewer(); |
2 |
26 Feb 07 |
jari |
270 |
viewer.repaint(); |
2 |
26 Feb 07 |
jari |
271 |
} else if(command.equals("info-command")){ |
2 |
26 Feb 07 |
jari |
272 |
HelpWindow helpWindow = new HelpWindow(TEASEConfigDialog.this, "HCL Tree Properties"); |
2 |
26 Feb 07 |
jari |
273 |
if(helpWindow.getWindowContent()){ |
2 |
26 Feb 07 |
jari |
274 |
helpWindow.setSize(450, 500); |
2 |
26 Feb 07 |
jari |
275 |
helpWindow.setLocation(); |
2 |
26 Feb 07 |
jari |
276 |
helpWindow.show(); |
2 |
26 Feb 07 |
jari |
277 |
} |
2 |
26 Feb 07 |
jari |
278 |
else{ |
2 |
26 Feb 07 |
jari |
279 |
helpWindow.dispose(); |
2 |
26 Feb 07 |
jari |
280 |
} |
2 |
26 Feb 07 |
jari |
281 |
} |
2 |
26 Feb 07 |
jari |
282 |
|
2 |
26 Feb 07 |
jari |
283 |
} |
2 |
26 Feb 07 |
jari |
284 |
|
2 |
26 Feb 07 |
jari |
285 |
public void windowClosing(WindowEvent e) { |
2 |
26 Feb 07 |
jari |
286 |
result = JOptionPane.CLOSED_OPTION; |
2 |
26 Feb 07 |
jari |
287 |
dispose(); |
2 |
26 Feb 07 |
jari |
288 |
} |
2 |
26 Feb 07 |
jari |
289 |
|
2 |
26 Feb 07 |
jari |
290 |
public void stateChanged(javax.swing.event.ChangeEvent changeEvent) { |
2 |
26 Feb 07 |
jari |
291 |
if(changeEvent.getSource() == slider){ |
2 |
26 Feb 07 |
jari |
//float value = distRange * (float)((Math.log(slider.getValue())/Math.log(2.0d))/(Math.log(100f)/Math.log(2.0d))); |
2 |
26 Feb 07 |
jari |
// float value = distRange * (float)(Math.log((slider.getValue())/100f)/Math.log(2.0d)); |
2 |
26 Feb 07 |
jari |
294 |
float value = distRange * (float)(slider.getValue()/1000f) + minDist; |
2 |
26 Feb 07 |
jari |
295 |
if(tree != null){ |
2 |
26 Feb 07 |
jari |
296 |
zThr = value; |
2 |
26 Feb 07 |
jari |
297 |
tree.setZeroThreshold(value); |
2 |
26 Feb 07 |
jari |
298 |
zeroTextField.setText(String.valueOf(value)); |
2 |
26 Feb 07 |
jari |
299 |
numTerminalsField.setText(String.valueOf(tree.getNumberOfTerminalNodes())); |
2 |
26 Feb 07 |
jari |
300 |
|
2 |
26 Feb 07 |
jari |
301 |
tree.repaint(); |
2 |
26 Feb 07 |
jari |
// viewer.repaint(); |
2 |
26 Feb 07 |
jari |
303 |
} |
2 |
26 Feb 07 |
jari |
304 |
} |
2 |
26 Feb 07 |
jari |
305 |
} |
2 |
26 Feb 07 |
jari |
306 |
|
2 |
26 Feb 07 |
jari |
307 |
public void keyPressed(java.awt.event.KeyEvent keyEvent) { |
2 |
26 Feb 07 |
jari |
308 |
} |
2 |
26 Feb 07 |
jari |
309 |
|
2 |
26 Feb 07 |
jari |
310 |
public void keyReleased(java.awt.event.KeyEvent keyEvent) { |
2 |
26 Feb 07 |
jari |
311 |
if(keyEvent.getSource() == zeroTextField){ |
2 |
26 Feb 07 |
jari |
312 |
try{ |
2 |
26 Feb 07 |
jari |
313 |
float value = Float.parseFloat(zeroTextField.getText()); |
2 |
26 Feb 07 |
jari |
314 |
zThr = value; |
2 |
26 Feb 07 |
jari |
315 |
tree.setZeroThreshold(value); |
2 |
26 Feb 07 |
jari |
316 |
numTerminalsField.setText(String.valueOf(tree.getNumberOfTerminalNodes())); |
2 |
26 Feb 07 |
jari |
317 |
|
2 |
26 Feb 07 |
jari |
318 |
tree.repaint(); |
2 |
26 Feb 07 |
jari |
319 |
|
2 |
26 Feb 07 |
jari |
320 |
} catch (NumberFormatException e){ |
2 |
26 Feb 07 |
jari |
321 |
} |
2 |
26 Feb 07 |
jari |
322 |
} |
2 |
26 Feb 07 |
jari |
323 |
} |
2 |
26 Feb 07 |
jari |
324 |
|
2 |
26 Feb 07 |
jari |
325 |
public void keyTyped(java.awt.event.KeyEvent keyEvent) { |
2 |
26 Feb 07 |
jari |
326 |
} |
2 |
26 Feb 07 |
jari |
327 |
} |
2 |
26 Feb 07 |
jari |
328 |
|
2 |
26 Feb 07 |
jari |
329 |
public static void main(String [] args){ |
2 |
26 Feb 07 |
jari |
// HCLConfigDialog_1 d = new HCLConfigDialog_1(new Frame(), 2, 3, 4, 0, 1); |
2 |
26 Feb 07 |
jari |
// d.showModal(); |
2 |
26 Feb 07 |
jari |
// System.exit(0); |
2 |
26 Feb 07 |
jari |
333 |
} |
2 |
26 Feb 07 |
jari |
334 |
} |