30 |
30 |
import org.gvsig.andami.plugins.Extension;
|
31 |
31 |
import org.gvsig.scripting.ScriptingLocator;
|
32 |
32 |
import org.gvsig.scripting.ScriptingManager;
|
|
33 |
import org.gvsig.scripting.swing.api.JScriptingComposer;
|
33 |
34 |
import org.gvsig.scripting.swing.api.ScriptingSwingLocator;
|
34 |
35 |
import org.gvsig.scripting.swing.api.ScriptingUIManager;
|
|
36 |
import org.gvsig.tools.dynobject.DynObject;
|
35 |
37 |
import org.gvsig.tools.swing.api.ToolsSwingLocator;
|
36 |
38 |
import org.gvsig.tools.swing.api.windowmanager.WindowManager;
|
|
39 |
import org.gvsig.tools.swing.impl.windowmanager.DefaultWindowManager;
|
37 |
40 |
|
38 |
41 |
public class ScriptingExtension extends Extension {
|
39 |
42 |
|
|
43 |
// private static Logger LOG = LoggerFactory.getLogger(ScriptingExtension.class);
|
|
44 |
|
40 |
45 |
public void execute(String actionCommand) {
|
41 |
46 |
|
42 |
47 |
ScriptingUIManager uimanager = ScriptingSwingLocator.getUIManager();
|
... | ... | |
45 |
50 |
if(actionCommand.toString().equals("Launcher")){
|
46 |
51 |
winmanager.showWindow(uimanager.createLauncher(), "Scripting Launcher", WindowManager.MODE.TOOL);
|
47 |
52 |
} else { // Composer
|
48 |
|
winmanager.showWindow(uimanager.createComposer(), "Scripting Composer", WindowManager.MODE.WINDOW);
|
|
53 |
DynObject preferences = this.getPlugin().getPluginProperties();
|
|
54 |
Boolean composerUseHisWindowManager = (Boolean) preferences.getDynValue("ComposerUseHisWindowManager");
|
|
55 |
JScriptingComposer composer = uimanager.createComposer();
|
|
56 |
if( composerUseHisWindowManager.booleanValue() ) {
|
|
57 |
winmanager = new DefaultWindowManager();
|
|
58 |
composer.setWindowManager(winmanager);
|
|
59 |
winmanager.showWindow(composer, "Scripting Composer", WindowManager.MODE.WINDOW);
|
|
60 |
} else {
|
|
61 |
winmanager.showWindow(composer, "Scripting Composer", WindowManager.MODE.WINDOW);
|
|
62 |
}
|
49 |
63 |
}
|
50 |
64 |
|
51 |
65 |
}
|
... | ... | |
62 |
76 |
ScriptingManager manager = ScriptingLocator.getManager();
|
63 |
77 |
PluginsManager pluginManager = PluginsLocator.getManager();
|
64 |
78 |
|
65 |
|
File home = pluginManager.getApplicationHomeFolder();
|
66 |
|
File scriptsUserFolder = new File(home,"scripts");
|
67 |
|
if( !scriptsUserFolder.exists() ) {
|
68 |
|
scriptsUserFolder.mkdirs();
|
69 |
|
}
|
70 |
|
manager.setRootUserFolder(scriptsUserFolder.getAbsolutePath());
|
|
79 |
File home = this.getPlugin().getPluginHomeFolder();
|
|
80 |
manager.setHomeFolder(home);
|
|
81 |
|
|
82 |
File[] folders = pluginManager.getPluginsFolder().listFiles();
|
|
83 |
for (File folder : folders) {
|
|
84 |
File scriptsFolder = new File(folder,"scripting/scripts");
|
|
85 |
if( scriptsFolder.exists() ) {
|
|
86 |
manager.registerSystemFolder(folder.getName(), scriptsFolder);
|
|
87 |
}
|
|
88 |
File libFolder = new File(folder,"scripting/lib");
|
|
89 |
if( libFolder.exists() ) {
|
|
90 |
manager.addLibFolder(libFolder);
|
|
91 |
}
|
|
92 |
}
|
71 |
93 |
}
|
72 |
94 |
|
73 |
95 |
public boolean isEnabled() {
|