Save file before running when Run With Node invoked on a source file
authortboudreau@netbeans.org
Thu, 28 Jul 2011 20:34:45 -0400
changeset 17545c2c516fd96f1
parent 17498 a04f35d4d4c5
child 17546 c92bf8c58030
Save file before running when Run With Node invoked on a source file
nodejs/manifest.mf
nodejs/src/org/netbeans/modules/nodejs/PropertiesPanel.java
nodejs/src/org/netbeans/modules/nodejs/actions/RunAction.java
nodejs/src/org/netbeans/modules/nodejs/json/SimpleJSONParser.java
     1.1 --- a/nodejs/manifest.mf	Mon Jun 06 00:50:24 2011 -0400
     1.2 +++ b/nodejs/manifest.mf	Thu Jul 28 20:34:45 2011 -0400
     1.3 @@ -3,5 +3,5 @@
     1.4  OpenIDE-Module-Layer: org/netbeans/modules/nodejs/layer.xml
     1.5  OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/nodejs/Bundle.properties
     1.6  OpenIDE-Module-Requires: org.openide.modules.os.Unix
     1.7 -OpenIDE-Module-Specification-Version: 1.13
     1.8 +OpenIDE-Module-Specification-Version: 1.14
     1.9  
     2.1 --- a/nodejs/src/org/netbeans/modules/nodejs/PropertiesPanel.java	Mon Jun 06 00:50:24 2011 -0400
     2.2 +++ b/nodejs/src/org/netbeans/modules/nodejs/PropertiesPanel.java	Thu Jul 28 20:34:45 2011 -0400
     2.3 @@ -199,7 +199,11 @@
     2.4              props.setLicenseType(licenseField.getSelectedItem().toString());
     2.5          }
     2.6      }
     2.7 -
     2.8 +    
     2.9 +    boolean notEmpty (JTextComponent c) {
    2.10 +        return c.getText().trim().length() > 0;
    2.11 +    }
    2.12 +    
    2.13      public void showDialog() {
    2.14          DialogDescriptor d = new DialogDescriptor(this, props.project().getLookup().lookup(ProjectInformation.class).getDisplayName());
    2.15          DialogDescriptorAdapter adap = new DialogDescriptorAdapter(d);
     3.1 --- a/nodejs/src/org/netbeans/modules/nodejs/actions/RunAction.java	Mon Jun 06 00:50:24 2011 -0400
     3.2 +++ b/nodejs/src/org/netbeans/modules/nodejs/actions/RunAction.java	Thu Jul 28 20:34:45 2011 -0400
     3.3 @@ -44,6 +44,7 @@
     3.4  import java.awt.event.ActionListener;
     3.5  import java.awt.event.ActionEvent;
     3.6  import java.io.IOException;
     3.7 +import org.netbeans.api.actions.Savable;
     3.8  import org.netbeans.modules.nodejs.NodeJSExecutable;
     3.9  import org.openide.loaders.DataObject;
    3.10  
    3.11 @@ -78,6 +79,10 @@
    3.12      @Override
    3.13      public void run() {
    3.14          try {
    3.15 +            Savable save = context.getLookup().lookup(Savable.class);
    3.16 +            if (save != null) {
    3.17 +                save.save();
    3.18 +            }
    3.19              NodeJSExecutable.getDefault().run(context.getPrimaryFile(), null);
    3.20          } catch (IOException ex) {
    3.21              Exceptions.printStackTrace(ex);
     4.1 --- a/nodejs/src/org/netbeans/modules/nodejs/json/SimpleJSONParser.java	Mon Jun 06 00:50:24 2011 -0400
     4.2 +++ b/nodejs/src/org/netbeans/modules/nodejs/json/SimpleJSONParser.java	Thu Jul 28 20:34:45 2011 -0400
     4.3 @@ -543,7 +543,7 @@
     4.4          Arrays.fill(indentChars, ' ');
     4.5          String ind = new String(indentChars);
     4.6          String indl = ind + "    ";
     4.7 -        sb.append(ind).append('[').append('\n');
     4.8 +        sb.append('\n').append(ind).append('[').append('\n');
     4.9          for (Iterator<Object> it = l.iterator(); it.hasNext();) {
    4.10              Object o = it.next();
    4.11              if (o instanceof Map) {