Revision 32435 branches/v2_0_0_prep/extensions/org.gvsig.installer/org.gvsig.installer.swing/org.gvsig.installer.swing.impl/src/main/java/org/gvsig/installer/swing/impl/execution/panel/SelectInstallersPanel.java
SelectInstallersPanel.java | ||
---|---|---|
33 | 33 |
import java.awt.Insets; |
34 | 34 |
import java.awt.event.ItemEvent; |
35 | 35 |
import java.awt.event.ItemListener; |
36 |
import java.awt.event.KeyEvent; |
|
37 |
import java.awt.event.KeyListener; |
|
38 |
import java.beans.PropertyChangeEvent; |
|
39 |
import java.beans.PropertyChangeListener; |
|
36 | 40 |
import java.io.File; |
37 | 41 |
|
38 | 42 |
import javax.swing.ButtonGroup; |
39 | 43 |
import javax.swing.JPanel; |
40 | 44 |
import javax.swing.JRadioButton; |
41 | 45 |
import javax.swing.JTextField; |
46 |
import javax.swing.event.DocumentEvent; |
|
47 |
import javax.swing.event.DocumentListener; |
|
42 | 48 |
|
43 | 49 |
import org.gvsig.gui.beans.openfile.FileTextField; |
44 | 50 |
import org.gvsig.installer.swing.api.SwingInstallerLocator; |
... | ... | |
47 | 53 |
/** |
48 | 54 |
* @author <a href="mailto:jpiera@gvsig.org">Jorge Piera Llodrá</a> |
49 | 55 |
*/ |
50 |
public class SelectInstallersPanel extends JPanel implements ItemListener{ |
|
56 |
public class SelectInstallersPanel extends JPanel implements ItemListener, DocumentListener{
|
|
51 | 57 |
protected DefaultSwingInstallerManager swingInstallerManager = null; |
52 | 58 |
private JRadioButton fileRadioButton; |
53 | 59 |
private ButtonGroup buttonGroup; |
... | ... | |
66 | 72 |
private void initListeners() { |
67 | 73 |
standardRadionButton.addItemListener(this); |
68 | 74 |
fileRadioButton.addItemListener(this); |
75 |
Object obj = selectFileText.getComponent(0); |
|
76 |
if ((obj != null) && (obj instanceof JTextField)) { |
|
77 |
((JTextField)obj).getDocument().addDocumentListener(this); |
|
78 |
} |
|
69 | 79 |
} |
70 | 80 |
|
71 | 81 |
private void initComponents() { |
... | ... | |
109 | 119 |
} |
110 | 120 |
|
111 | 121 |
public void itemStateChanged(ItemEvent e) { |
112 |
selectFileText.setEnabled(fileRadioButton.isSelected()); |
|
122 |
selectFileText.setEnabled(fileRadioButton.isSelected()); |
|
123 |
checkNextButtonEnabled(); |
|
113 | 124 |
} |
114 | 125 |
|
115 |
public File getSelectedFile(){
|
|
126 |
protected File getSelectedFile(){
|
|
116 | 127 |
return selectFileText.getSelectedFile(); |
117 | 128 |
} |
118 | 129 |
|
119 |
public boolean isStandardSelected(){
|
|
130 |
protected boolean isStandardSelected(){
|
|
120 | 131 |
return standardRadionButton.isSelected(); |
121 | 132 |
} |
133 |
|
|
134 |
protected boolean isNextButtonEnabled(){ |
|
135 |
if (isStandardSelected()){ |
|
136 |
return true; |
|
137 |
} |
|
138 |
File file = selectFileText.getSelectedFile(); |
|
139 |
if (file == null){ |
|
140 |
return false; |
|
141 |
} |
|
142 |
return file.exists(); |
|
143 |
} |
|
144 |
|
|
145 |
protected void checkNextButtonEnabled(){ |
|
146 |
|
|
147 |
} |
|
148 |
|
|
149 |
public void changedUpdate(DocumentEvent e) { |
|
150 |
checkNextButtonEnabled(); |
|
151 |
} |
|
152 |
|
|
153 |
public void insertUpdate(DocumentEvent e) { |
|
154 |
checkNextButtonEnabled(); |
|
155 |
} |
|
156 |
|
|
157 |
public void removeUpdate(DocumentEvent e) { |
|
158 |
checkNextButtonEnabled(); |
|
159 |
} |
|
122 | 160 |
|
123 |
|
|
124 | 161 |
} |
125 | 162 |
|
Also available in: Unified diff