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

View differences:

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