Revision 779

View differences:

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/DefaultJScriptingComposer.java
26 26
import javax.swing.AbstractAction;
27 27
import javax.swing.Action;
28 28
import static javax.swing.Action.ACCELERATOR_KEY;
29
import static javax.swing.Action.ACTION_COMMAND_KEY;
29 30
import javax.swing.BorderFactory;
30 31
import javax.swing.JButton;
31 32
import javax.swing.JComponent;
......
606 607
        }
607 608

  
608 609
    }
610
    
611
    private class NewFolderAction extends AbstractAction {
609 612

  
613
        private static final long serialVersionUID = 7889613706183211620L;
614

  
615
        public NewFolderAction() {
616
            super(uimanager.getTranslation("New folder"));
617
            putValue(Action.SMALL_ICON, uimanager.getIcon("folder-add"));
618
            putValue(Action.SHORT_DESCRIPTION, uimanager.getTranslation("New folder"));
619
            putValue(ACTION_COMMAND_KEY, "FolderNew");
620
        }
621

  
622
        @Override
623
        public void actionPerformed(ActionEvent e) {
624
            try {
625
                FolderNew();
626
            } catch (Exception e1) {
627
                logger.warn("Can't create a new folder", e1);
628
            }
629
        }
630

  
631
    }    
632

  
610 633
    private class ProjectEditAction extends AbstractAction {
611 634

  
612 635
        private static final long serialVersionUID = -3393464285985649074L;
......
781 804

  
782 805
        this.addMenu(_File, null);
783 806
        this.addMenu(_File, new NewDocumentAction());
807
        this.addMenu(_File, new NewFolderAction());
784 808
        this.addMenuSeparator(_File);
785 809
        this.addMenu(_File, new CloseDocumentAction());
786 810
        this.addMenu(_File, new CloseAllAction());
......
1230 1254
     *
1231 1255
     */
1232 1256
    public void scriptNew() throws Exception {
1257
        this.unitNew(false);
1258
    }
1259

  
1260
    public void FolderNew() throws Exception {
1261
        this.unitNew(true);
1262
    }
1263

  
1264
    public void unitNew(boolean folder) throws Exception {
1233 1265
        JNewScriptModel model = new JNewScriptModel(manager);
1234 1266
        model.setSelectionPath(this.getCurrentBrowser().getSelectionPath());
1235 1267
        JDialogContent dialog = new JDialogContent(
......
1237 1269
                "document-new",
1238 1270
                this.uimanager.getTranslation("New_Script"),
1239 1271
                this.uimanager.getTranslation("New_Script_Description"),
1240
                new JNewScriptPanel(uimanager, model)
1272
                new JNewScriptPanel(uimanager, model,folder)
1241 1273
        );
1242 1274
        dialog.showDialog();
1243 1275
        if (model.getAction() == JNewScriptModel.ACTION_ACCEPT) {
......
1256 1288
        }
1257 1289
    }
1258 1290

  
1291

  
1259 1292
    public void scriptClose(DockedPanel panel) {
1260 1293
        if (!panel.isModified()) {
1261 1294
            panel.remove();
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/JNewScriptPanel.java
30 30
    private final JNewScriptModel model;
31 31
    private final DefaultJScriptingBrowser jbrowser;
32 32

  
33
    public JNewScriptPanel(ScriptingUIManager uimanager, JNewScriptModel model) {
33
    public JNewScriptPanel(ScriptingUIManager uimanager, JNewScriptModel model, boolean folder) {
34 34
        super();
35 35
        this.uimanager = uimanager;
36 36
        this.manager = this.uimanager.getManager();
......
71 71
        });
72 72
        jbrowser.setSelectionPath(this.model.getSelectionPath());
73 73
        doFolderSelection();
74
        if( folder ) {
75
            this.units.setSelectedItem(ScriptingManager.UNIT_FOLDER);
76
            this.languages.setSelectedIndex(-1);
77
            this.units.setEnabled(false);
78
            this.languages.setEnabled(false);
79
            this.createdBy.setEditable(false);
80
            this.version.setEditable(false);            
81
        }
74 82
    }
75 83
    
76 84
    private void doFolderSelection() {

Also available in: Unified diff