Revision 1064 org.gvsig.scripting/trunk/org.gvsig.scripting/org.gvsig.scripting.swing/org.gvsig.scripting.swing.impl/src/main/java/org/gvsig/scripting/swing/impl/tools/ScriptPickerController.java
ScriptPickerController.java | ||
---|---|---|
7 | 7 |
import java.awt.event.KeyEvent; |
8 | 8 |
import javax.swing.JButton; |
9 | 9 |
import javax.swing.JTextField; |
10 |
import static javax.swing.UIManager.getIcon;
|
|
10 |
import org.gvsig.scripting.ScriptingUnit;
|
|
11 | 11 |
import org.gvsig.scripting.swing.api.ScriptingSwingLocator; |
12 | 12 |
import org.gvsig.scripting.swing.api.ScriptingUIManager; |
13 |
import org.gvsig.scripting.swing.impl.tools.ScriptSwingManager.ScriptChooserPanel; |
|
14 | 13 |
import org.gvsig.tools.script.Script; |
14 |
import org.gvsig.tools.swing.api.ToolsSwingLocator; |
|
15 |
import org.gvsig.tools.swing.api.ToolsSwingManager; |
|
15 | 16 |
import org.gvsig.tools.swing.api.pickercontroller.AbstractPickerController; |
17 |
import org.gvsig.tools.swing.api.script.ScriptSwingManager.ScriptChooserPanel; |
|
16 | 18 |
import org.gvsig.tools.swing.api.windowmanager.WindowManager_v2; |
17 | 19 |
|
18 | 20 |
/** |
... | ... | |
23 | 25 |
private Script script; |
24 | 26 |
private final JTextField txtText; |
25 | 27 |
private final JButton btnChooser; |
26 |
private final JButton btnClear; |
|
27 | 28 |
|
28 | 29 |
public ScriptPickerController(JTextField text, JButton chooser) { |
29 | 30 |
this.txtText = text; |
30 | 31 |
this.btnChooser = chooser; |
31 | 32 |
|
33 |
this.txtText.setEditable(false); |
|
32 | 34 |
this.btnChooser.setEnabled(true); |
33 | 35 |
this.btnChooser.setIcon(this.getIcon("picker-script")); |
34 | 36 |
this.btnChooser.setText(""); |
... | ... | |
41 | 43 |
this.txtText.addKeyListener(new KeyAdapter() { |
42 | 44 |
@Override |
43 | 45 |
public void keyPressed(KeyEvent e) { |
44 |
doClearScriptSelection(); |
|
46 |
if( e.getKeyChar()==' ' || e.getKeyChar()==127 ) { |
|
47 |
doClearScriptSelection(); |
|
48 |
} |
|
45 | 49 |
} |
46 | 50 |
}); |
47 |
this.btnClear = new JButton(getIcon("picker-cleartext")); |
|
48 |
btnClear.setBorderPainted( false ); |
|
49 |
btnClear.setFocusPainted( false ); |
|
50 |
btnClear.setContentAreaFilled( false ); |
|
51 |
btnClear.setOpaque(false); |
|
52 |
btnClear.addActionListener(new ActionListener() { |
|
51 |
ToolsSwingManager manager = ToolsSwingLocator.getToolsSwingManager(); |
|
52 |
manager.addClearButton(this.txtText, new ActionListener() { |
|
53 | 53 |
@Override |
54 | 54 |
public void actionPerformed(ActionEvent e) { |
55 | 55 |
doClearScriptSelection(); |
56 | 56 |
} |
57 | 57 |
}); |
58 |
this.txtText.setEditable(false); |
|
59 |
this.txtText.setLayout(new BorderLayout()); |
|
60 |
this.txtText.add(btnClear, BorderLayout.EAST); |
|
58 |
manager.setDefaultPopupMenu(this.txtText, "Script"); |
|
61 | 59 |
} |
62 | 60 |
|
63 | 61 |
private void doClearScriptSelection() { |
... | ... | |
89 | 87 |
if( value == null ) { |
90 | 88 |
this.txtText.setText(""); |
91 | 89 |
} else { |
92 |
this.txtText.setText(script.getName()); |
|
90 |
if( this.script instanceof ScriptingUnit ) { |
|
91 |
this.txtText.setText(((ScriptingUnit)script).getUserPath()); |
|
92 |
} else { |
|
93 |
this.txtText.setText(script.getName()); |
|
94 |
} |
|
93 | 95 |
} |
94 | 96 |
} |
95 | 97 |
|
... | ... | |
109 | 111 |
@Override |
110 | 112 |
public void setEnabled(boolean enabled) { |
111 | 113 |
this.btnChooser.setEnabled(enabled); |
112 |
this.btnClear.setEnabled(enabled);
|
|
114 |
this.txtText.setEnabled(enabled);
|
|
113 | 115 |
} |
114 | 116 |
|
115 | 117 |
@Override |
Also available in: Unified diff