Statistics
| Revision:

gvsig-scripting / org.gvsig.scripting / trunk / org.gvsig.scripting / org.gvsig.scripting.swing / org.gvsig.scripting.swing.impl / src / main / java / org / gvsig / scripting / swing / impl / composer / editors / SimpleScriptEditor.java @ 1486

History | View | Annotate | Download (2.49 KB)

1
/*
2
 * To change this license header, choose License Headers in Project Properties.
3
 * To change this template file, choose Tools | Templates
4
 * and open the template in the editor.
5
 */
6
package org.gvsig.scripting.swing.impl.composer.editors;
7

    
8
import java.awt.event.FocusListener;
9
import java.beans.PropertyChangeEvent;
10
import javax.swing.JComponent;
11
import javax.swing.event.ChangeListener;
12
import org.gvsig.scripting.ScriptingScript;
13
import org.gvsig.tools.script.Script;
14
import org.gvsig.tools.swing.api.ChangeListenerHelper;
15
import org.gvsig.tools.swing.api.ToolsSwingLocator;
16

    
17
/**
18
 *
19
 * @author jjdelcerro
20
 */
21
public class SimpleScriptEditor 
22
        extends BaseTextEditor 
23
        implements org.gvsig.tools.swing.api.script.ScriptSwingManager.ScriptEditor 
24
    {
25
    private final ChangeListenerHelper changeListener;
26
    
27
    public SimpleScriptEditor() {
28
        super();
29
        this.changeListener = ToolsSwingLocator.getToolsSwingManager().createChangeListenerHelper();
30
    }
31

    
32
    @Override
33
    protected void initComponent() {
34
        super.initComponent();
35
        super.addChangeListener((PropertyChangeEvent evt) -> {
36
            changeListener.fireEvent();
37
        });
38
    }
39
    
40
    @Override
41
    public void set(Script script) {
42
        ScriptingScript theScript = (ScriptingScript)script;
43
        this.setText(theScript.getMimeType(), theScript.getCode());
44
    }
45

    
46
    @Override
47
    public void fetch(Script script) {
48
        ScriptingScript theScript = (ScriptingScript)script;
49
        theScript.setCode(this.getText());
50
    }
51

    
52
    @Override
53
    public JComponent asJComponent() {
54
        return this;
55
    }
56

    
57
    @Override
58
    public void setEditable(boolean editable) {
59
        super.setEnabled(editable);
60
    }
61

    
62
    @Override
63
    public boolean isEditable() {
64
        return super.isEditable();
65
    }
66

    
67
    @Override
68
    public void addChangeListener(ChangeListener listener) {
69
        changeListener.addChangeListener(listener);
70
    }
71

    
72
    @Override
73
    public ChangeListener[] getChangeListeners() {
74
        return changeListener.getChangeListeners();
75
    }
76

    
77
    @Override
78
    public void removeChangeListener(ChangeListener listener) {
79
        changeListener.removeChangeListener(listener);
80
    }
81

    
82
    @Override
83
    public void removeAllChangeListener() {
84
        changeListener.removeAllChangeListener();
85
    }
86

    
87
    @Override
88
    public boolean hasChangeListeners() {
89
        return changeListener.hasChangeListeners();
90
    }
91

    
92
    public void addFocusListener(FocusListener l) {
93
        super.addFocusListener(l);
94
    }
95
    
96
}