mirror of
https://github.com/ProjectSWGCore/ConversationScriptCreator.git
synced 2026-01-16 23:05:01 -05:00
Added basic saving, shortcuts & new buttons!
This commit is contained in:
@@ -2,8 +2,6 @@
|
||||
<project-private xmlns="http://www.netbeans.org/ns/project-private/1">
|
||||
<editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
|
||||
<open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">
|
||||
<group>
|
||||
<file>file:/C:/Users/Wave/Documents/NetBeansProjects/ConversationScriptCreator/ConversationCompiler/src/com/projectswg/tools/csc/compiler/Compiler.java</file>
|
||||
</group>
|
||||
<group/>
|
||||
</open-files>
|
||||
</project-private>
|
||||
|
||||
@@ -1,2 +1,5 @@
|
||||
javac.source=1.7
|
||||
javac.compilerargs=-Xlint -Xlint:-serial
|
||||
license.file=../LICENSE
|
||||
nbm.homepage=http://www.projectswg.com
|
||||
nbm.module.author=Waverunner
|
||||
|
||||
@@ -16,7 +16,6 @@ import javax.swing.JOptionPane;
|
||||
import org.netbeans.api.visual.widget.ConnectionWidget;
|
||||
import org.netbeans.api.visual.widget.Widget;
|
||||
import org.openide.windows.TopComponent;
|
||||
import org.openide.windows.WindowManager;
|
||||
|
||||
public class Compiler {
|
||||
|
||||
@@ -28,7 +27,7 @@ public class Compiler {
|
||||
|
||||
public void compile() throws IOException {
|
||||
|
||||
TopComponent component = WindowManager.getDefault().findTopComponent("EditorTopComponent");
|
||||
TopComponent component = TopComponent.getRegistry().getActivated();
|
||||
if (component == null || !(component instanceof EditorTopComponent))
|
||||
return;
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
build.xml.data.CRC32=90d565b1
|
||||
build.xml.data.CRC32=a42deb56
|
||||
build.xml.script.CRC32=af729615
|
||||
build.xml.stylesheet.CRC32=a56c6a5b@2.66.1
|
||||
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
|
||||
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
|
||||
nbproject/build-impl.xml.data.CRC32=90d565b1
|
||||
nbproject/build-impl.xml.data.CRC32=a42deb56
|
||||
nbproject/build-impl.xml.script.CRC32=b2a11926
|
||||
nbproject/build-impl.xml.stylesheet.CRC32=238281d1@2.66.1
|
||||
|
||||
@@ -2,11 +2,6 @@
|
||||
<project-private xmlns="http://www.netbeans.org/ns/project-private/1">
|
||||
<editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
|
||||
<open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">
|
||||
<group>
|
||||
<file>file:/C:/Users/Wave/Documents/NetBeansProjects/ConversationScriptCreator/ConversationEditor/src/com/projectswg/tools/csc/conversationeditor/ConversationConnectProvider.java</file>
|
||||
<file>file:/C:/Users/Wave/Documents/NetBeansProjects/ConversationScriptCreator/ConversationEditor/src/com/projectswg/tools/csc/conversationeditor/ConversationNode.java</file>
|
||||
<file>file:/C:/Users/Wave/Documents/NetBeansProjects/ConversationScriptCreator/ConversationEditor/src/com/projectswg/tools/csc/conversationeditor/ConversationWidget.java</file>
|
||||
<file>file:/C:/Users/Wave/Documents/NetBeansProjects/ConversationScriptCreator/ConversationEditor/src/com/projectswg/tools/csc/conversationeditor/actions/NewConvEnd.java</file>
|
||||
</group>
|
||||
<group/>
|
||||
</open-files>
|
||||
</project-private>
|
||||
|
||||
@@ -40,6 +40,14 @@
|
||||
<specification-version>7.61.2</specification-version>
|
||||
</run-dependency>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<code-name-base>org.openide.dialogs</code-name-base>
|
||||
<build-prerequisite/>
|
||||
<compile-dependency/>
|
||||
<run-dependency>
|
||||
<specification-version>7.36.1</specification-version>
|
||||
</run-dependency>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<code-name-base>org.openide.explorer</code-name-base>
|
||||
<build-prerequisite/>
|
||||
@@ -48,6 +56,14 @@
|
||||
<specification-version>6.56.1</specification-version>
|
||||
</run-dependency>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<code-name-base>org.openide.filesystems</code-name-base>
|
||||
<build-prerequisite/>
|
||||
<compile-dependency/>
|
||||
<run-dependency>
|
||||
<specification-version>8.10.1</specification-version>
|
||||
</run-dependency>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<code-name-base>org.openide.nodes</code-name-base>
|
||||
<build-prerequisite/>
|
||||
@@ -56,6 +72,14 @@
|
||||
<specification-version>7.38.1</specification-version>
|
||||
</run-dependency>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<code-name-base>org.openide.text</code-name-base>
|
||||
<build-prerequisite/>
|
||||
<compile-dependency/>
|
||||
<run-dependency>
|
||||
<specification-version>6.61.1</specification-version>
|
||||
</run-dependency>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<code-name-base>org.openide.util</code-name-base>
|
||||
<build-prerequisite/>
|
||||
|
||||
@@ -1,16 +1,20 @@
|
||||
package com.projectswg.tools.csc.conversationeditor;
|
||||
|
||||
import com.projectswg.tools.csc.conversationeditor.actions.SaveConversation;
|
||||
import java.awt.Point;
|
||||
import java.io.IOException;
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
import javax.xml.transform.TransformerException;
|
||||
import org.netbeans.api.settings.ConvertAsProperties;
|
||||
import org.openide.awt.ActionID;
|
||||
import org.openide.awt.ActionReference;
|
||||
import org.openide.explorer.ExplorerManager;
|
||||
import org.openide.explorer.ExplorerUtils;
|
||||
import org.openide.util.Exceptions;
|
||||
import org.openide.util.NbBundle.Messages;
|
||||
import org.openide.windows.TopComponent;
|
||||
import org.xml.sax.SAXException;
|
||||
|
||||
/**
|
||||
* Top component which displays something.
|
||||
*/
|
||||
@ConvertAsProperties(
|
||||
dtd = "-//com.projectswg.tools.csc.conversationeditor//Editor//EN",
|
||||
autostore = false
|
||||
@@ -24,7 +28,7 @@ import org.openide.windows.TopComponent;
|
||||
@ActionID(category = "Window", id = "com.projectswg.tools.csc.conversationeditor.EditorTopComponent")
|
||||
@ActionReference(path = "Menu/Window" /*, position = 333 */)
|
||||
@TopComponent.OpenActionRegistration(
|
||||
displayName = "Conversastion Editor",
|
||||
displayName = "Editor",
|
||||
preferredID = "EditorTopComponent"
|
||||
)
|
||||
@Messages({
|
||||
@@ -37,31 +41,40 @@ public final class EditorTopComponent extends TopComponent implements ExplorerMa
|
||||
private final ExplorerManager mgr = new ExplorerManager();
|
||||
private final SceneView scene;
|
||||
|
||||
// New Conversation
|
||||
public EditorTopComponent() {
|
||||
initComponents();
|
||||
setName(Bundle.CTL_EditorTopComponent());
|
||||
|
||||
setToolTipText(Bundle.HINT_EditorTopComponent());
|
||||
|
||||
SceneView scene = new SceneView(mgr);
|
||||
scrollPane.setViewportView(scene.createView());
|
||||
|
||||
scene.addNode(new ConversationNode("Begin Conversation", false, 1, false, true, 0));
|
||||
scene.addNode(new ConversationNode("", false, 1, true, false, 0));
|
||||
/*
|
||||
// Testing widgets!
|
||||
Widget n1 = scene.addNode(new ConversationNode("conversation/c_newbie_mentor:s_1063", false, 1, false));
|
||||
n1.setPreferredLocation(new Point(10, 100));
|
||||
|
||||
Widget n2 = scene.addNode(new ConversationNode("conversation/c_newbie_mentor:s_109", true, 2, false));
|
||||
n2.setPreferredLocation(new Point(480, 100));
|
||||
|
||||
Widget n3 = scene.addNode(new ConversationNode("conversation/c_newbie_mentor:s_1067", true, 3, false));
|
||||
n3.setPreferredLocation(new Point(480, 150));*/
|
||||
setName(Bundle.CTL_EditorTopComponent() + " - *New Conversation*");
|
||||
|
||||
scene.addNode(new ConversationNode("Begin Conversation", false, 0, false, true, 0));
|
||||
scene.addNode(new ConversationNode("End Conversation", false, 1, true, false, 0));
|
||||
|
||||
associateLookup(ExplorerUtils.createLookup(mgr, getActionMap()));
|
||||
this.scene = scene;
|
||||
}
|
||||
|
||||
// Open Conversation
|
||||
public EditorTopComponent(String convName) {
|
||||
initComponents();
|
||||
|
||||
setToolTipText(Bundle.HINT_EditorTopComponent());
|
||||
|
||||
SceneView scene = new SceneView(mgr);
|
||||
scene.setSceneName(convName);
|
||||
|
||||
scrollPane.setViewportView(scene.createView());
|
||||
|
||||
setName(Bundle.CTL_EditorTopComponent() + " - " + (scene.getSceneName().equals("") ? "*New Conversation*" : scene.getSceneName()));
|
||||
|
||||
associateLookup(ExplorerUtils.createLookup(mgr, getActionMap()));
|
||||
this.scene = scene;
|
||||
}
|
||||
/**
|
||||
* This method is called from within the constructor to initialize the form.
|
||||
* WARNING: Do NOT modify this code. The content of this method is always
|
||||
@@ -94,7 +107,11 @@ public final class EditorTopComponent extends TopComponent implements ExplorerMa
|
||||
|
||||
@Override
|
||||
public void componentClosed() {
|
||||
// TODO add custom code on component closing
|
||||
/*try {
|
||||
SaveConversation.save(scene);
|
||||
} catch (ParserConfigurationException | IOException | SAXException | TransformerException ex) {
|
||||
Exceptions.printStackTrace(ex);
|
||||
}*/
|
||||
}
|
||||
|
||||
void writeProperties(java.util.Properties p) {
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
package com.projectswg.tools.csc.conversationeditor;
|
||||
|
||||
import java.awt.Point;
|
||||
import javax.swing.SwingUtilities;
|
||||
import org.netbeans.api.visual.graph.GraphScene;
|
||||
import org.netbeans.api.visual.widget.Widget;
|
||||
import org.w3c.dom.Attr;
|
||||
import org.w3c.dom.DOMException;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.NamedNodeMap;
|
||||
import org.w3c.dom.Node;
|
||||
import org.w3c.dom.NodeList;
|
||||
|
||||
// Based off of http://bits.netbeans.org/dev/javadoc/org-netbeans-api-visual/org/netbeans/api/visual/widget/doc-files/documentation.html#Serialization
|
||||
public class SceneSaver {
|
||||
private static final String NODE_ELEMENT = "SceneNode"; // NOI18N
|
||||
private static final String VERSION_ATTR = "version"; // NOI18N
|
||||
private static final String NODE_NODE = "Node"; // NOI18N
|
||||
private static final String NODEID_ATTR = "nodeID"; // NOI18N
|
||||
private static final String X_NODE = "posX"; // NOI18N
|
||||
private static final String Y_NODE = "posY"; // NOI18N
|
||||
|
||||
private static final String VERSION_VALUE_1 = "1"; // NOI18N
|
||||
|
||||
// creates an sceneXMLNode that has to be placed to the XML file then
|
||||
public Node serializeData (GraphScene<ConversationNode, String> scene, Document file) {
|
||||
|
||||
Node sceneXMLNode = file.createElement(NODE_ELEMENT);
|
||||
setAttribute(file, sceneXMLNode, VERSION_ATTR, VERSION_VALUE_1); // NOI18N
|
||||
|
||||
for (ConversationNode node : scene.getNodes ()) {
|
||||
Widget widget = scene.findWidget(node);
|
||||
if (widget != null) {
|
||||
Point location = widget.getPreferredLocation();
|
||||
if (location != null) {
|
||||
Node dataXMLNode = file.createElement(NODE_NODE);
|
||||
|
||||
setAttribute(file, dataXMLNode, NODEID_ATTR, String.valueOf(node.getId()));
|
||||
setAttribute(file, dataXMLNode, X_NODE, Integer.toString(location.x));
|
||||
setAttribute(file, dataXMLNode, Y_NODE, Integer.toString(location.y));
|
||||
|
||||
sceneXMLNode.appendChild(dataXMLNode);
|
||||
}
|
||||
}
|
||||
}
|
||||
return sceneXMLNode;
|
||||
}
|
||||
|
||||
// Returns true if deserialization is successfull
|
||||
// sceneXMLNode has to be found in the XML file first
|
||||
public boolean deserializeData(final GraphScene<ConversationNode, String> scene, final Node sceneXMLNode) {
|
||||
if (!VERSION_VALUE_1.equals(getAttributeValue(sceneXMLNode, VERSION_ATTR)))
|
||||
return false;
|
||||
|
||||
SwingUtilities.invokeLater (new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
deserializeDataVersion1(scene, sceneXMLNode);
|
||||
scene.validate ();
|
||||
}
|
||||
});
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private void deserializeDataVersion1(GraphScene<ConversationNode, String> scene, Node data) {
|
||||
for (Node node : getChildNode (data)) {
|
||||
if(NODE_NODE.equals(node.getNodeName())) {
|
||||
String nodeID = getAttributeValue(node, NODEID_ATTR);
|
||||
int x = Integer.parseInt(getAttributeValue (node, X_NODE));
|
||||
int y = Integer.parseInt(getAttributeValue (node, Y_NODE));
|
||||
Widget widget = scene.findWidget(nodeID);
|
||||
if (widget != null)
|
||||
widget.setPreferredLocation (new Point (x, y));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static String getAttributeValue(Node node, String attr) {
|
||||
try {
|
||||
if (node != null) {
|
||||
NamedNodeMap map = node.getAttributes ();
|
||||
if (map != null) {
|
||||
node = map.getNamedItem (attr);
|
||||
if (node != null)
|
||||
return node.getNodeValue ();
|
||||
}
|
||||
}
|
||||
} catch (DOMException e) {
|
||||
//Debug.warning (e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private static void setAttribute(Document xml, Node node, String name, String value) {
|
||||
NamedNodeMap map = node.getAttributes ();
|
||||
Attr attribute = xml.createAttribute(name);
|
||||
attribute.setValue (value);
|
||||
map.setNamedItem (attribute);
|
||||
}
|
||||
|
||||
private static Node[] getChildNode (Node node) {
|
||||
NodeList childNodes = node.getChildNodes ();
|
||||
Node[] nodes = new Node[childNodes != null ? childNodes.getLength () : 0];
|
||||
for (int i = 0; i < nodes.length; i++)
|
||||
nodes[i] = childNodes.item (i);
|
||||
return nodes;
|
||||
}
|
||||
}
|
||||
@@ -2,7 +2,19 @@ package com.projectswg.tools.csc.conversationeditor;
|
||||
|
||||
import java.beans.PropertyChangeEvent;
|
||||
import java.beans.PropertyChangeListener;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.xml.parsers.DocumentBuilder;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
import javax.xml.transform.OutputKeys;
|
||||
import javax.xml.transform.Transformer;
|
||||
import javax.xml.transform.TransformerConfigurationException;
|
||||
import javax.xml.transform.TransformerException;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.transform.dom.DOMSource;
|
||||
import javax.xml.transform.stream.StreamResult;
|
||||
import org.netbeans.api.visual.action.ActionFactory;
|
||||
import org.netbeans.api.visual.graph.GraphScene;
|
||||
import org.netbeans.api.visual.widget.LayerWidget;
|
||||
@@ -10,6 +22,9 @@ import org.netbeans.api.visual.widget.Widget;
|
||||
import org.openide.explorer.ExplorerManager;
|
||||
import org.openide.windows.TopComponent;
|
||||
import org.openide.windows.WindowManager;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Node;
|
||||
import org.xml.sax.SAXException;
|
||||
|
||||
public class SceneView extends GraphScene<ConversationNode, String>{
|
||||
private final LayerWidget backgroundLayer;
|
||||
@@ -17,6 +32,8 @@ public class SceneView extends GraphScene<ConversationNode, String>{
|
||||
private final LayerWidget connectionLayer;
|
||||
private final ExplorerManager mgr;
|
||||
|
||||
private String name = "";
|
||||
|
||||
public SceneView(ExplorerManager mgr) {
|
||||
setLookFeel(new ConversationLookFeel());
|
||||
|
||||
@@ -91,4 +108,11 @@ public class SceneView extends GraphScene<ConversationNode, String>{
|
||||
return connectionLayer;
|
||||
}
|
||||
|
||||
public String getSceneName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setSceneName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
}
|
||||
@@ -16,7 +16,6 @@ import org.openide.awt.ActionReferences;
|
||||
import org.openide.awt.ActionRegistration;
|
||||
import org.openide.util.NbBundle.Messages;
|
||||
import org.openide.windows.TopComponent;
|
||||
import org.openide.windows.WindowManager;
|
||||
|
||||
@ActionID(
|
||||
category = "Edit",
|
||||
@@ -24,7 +23,7 @@ import org.openide.windows.WindowManager;
|
||||
)
|
||||
@ActionRegistration(
|
||||
iconBase = "com/projectswg/tools/csc/conversationeditor/actions/conversation_tb_end.png",
|
||||
displayName = "#CTL_NewConvEnd"
|
||||
displayName = "New End Conversation"
|
||||
)
|
||||
@ActionReferences({
|
||||
@ActionReference(path = "Menu/Edit", position = 1362),
|
||||
@@ -35,7 +34,7 @@ public final class NewConvEnd implements ActionListener {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
TopComponent component = WindowManager.getDefault().findTopComponent("EditorTopComponent");
|
||||
TopComponent component = TopComponent.getRegistry().getActivated();
|
||||
if (component == null || !(component instanceof EditorTopComponent))
|
||||
return;
|
||||
|
||||
@@ -45,7 +44,7 @@ public final class NewConvEnd implements ActionListener {
|
||||
if (scene == null)
|
||||
return;
|
||||
|
||||
int id = scene.getNodes().size() + 1;
|
||||
int id = scene.getNodes().size();
|
||||
scene.addNode(new ConversationNode("New End Conversation " + String.valueOf(id), false, id, true, false, 0));
|
||||
|
||||
scene.validate();
|
||||
|
||||
@@ -11,7 +11,6 @@ import org.openide.awt.ActionReferences;
|
||||
import org.openide.awt.ActionRegistration;
|
||||
import org.openide.util.NbBundle.Messages;
|
||||
import org.openide.windows.TopComponent;
|
||||
import org.openide.windows.WindowManager;
|
||||
|
||||
@ActionID(
|
||||
category = "File",
|
||||
@@ -30,7 +29,7 @@ public final class NewConvOption implements ActionListener {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
TopComponent component = WindowManager.getDefault().findTopComponent("EditorTopComponent");
|
||||
TopComponent component = TopComponent.getRegistry().getActivated();
|
||||
if (component == null || !(component instanceof EditorTopComponent))
|
||||
return;
|
||||
|
||||
@@ -40,7 +39,7 @@ public final class NewConvOption implements ActionListener {
|
||||
if (scene == null)
|
||||
return;
|
||||
|
||||
int id = scene.getNodes().size() + 1;
|
||||
int id = scene.getNodes().size();
|
||||
scene.addNode(new ConversationNode("New Conversation Option " + String.valueOf(id), true, id, false, false, 0));
|
||||
|
||||
scene.validate();
|
||||
|
||||
@@ -16,7 +16,6 @@ import org.openide.awt.ActionReferences;
|
||||
import org.openide.awt.ActionRegistration;
|
||||
import org.openide.util.NbBundle.Messages;
|
||||
import org.openide.windows.TopComponent;
|
||||
import org.openide.windows.WindowManager;
|
||||
|
||||
@ActionID(
|
||||
category = "File",
|
||||
@@ -35,7 +34,7 @@ public final class NewConvResponse implements ActionListener {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
TopComponent component = WindowManager.getDefault().findTopComponent("EditorTopComponent");
|
||||
TopComponent component = TopComponent.getRegistry().getActivated();
|
||||
if (component == null || !(component instanceof EditorTopComponent))
|
||||
return;
|
||||
|
||||
@@ -45,7 +44,7 @@ public final class NewConvResponse implements ActionListener {
|
||||
if (scene == null)
|
||||
return;
|
||||
|
||||
int id = scene.getNodes().size() + 1;
|
||||
int id = scene.getNodes().size();
|
||||
scene.addNode(new ConversationNode("New Conversation Response " + String.valueOf(id), false, id, false, false, 0));
|
||||
scene.validate();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
/*
|
||||
* To change this license header, choose License Headers in Project Properties.
|
||||
* To change this template file, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
package com.projectswg.tools.csc.conversationeditor.actions;
|
||||
|
||||
import com.projectswg.tools.csc.conversationeditor.EditorTopComponent;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import org.openide.awt.ActionID;
|
||||
import org.openide.awt.ActionReference;
|
||||
import org.openide.awt.ActionReferences;
|
||||
import org.openide.awt.ActionRegistration;
|
||||
import org.openide.util.NbBundle.Messages;
|
||||
|
||||
@ActionID(
|
||||
category = "File",
|
||||
id = "com.projectswg.tools.csc.conversationeditor.actions.NewConversation"
|
||||
)
|
||||
@ActionRegistration(
|
||||
iconBase = "com/projectswg/tools/csc/conversationeditor/actions/conversation_tb_new.png",
|
||||
displayName = "New Conversation"
|
||||
)
|
||||
@ActionReferences({
|
||||
@ActionReference(path = "Menu/File", position = -115),
|
||||
@ActionReference(path = "Toolbars/File", position = 400),
|
||||
@ActionReference(path = "Shortcuts", name = "D-N")
|
||||
})
|
||||
@Messages("CTL_NewConversation=New Conversation")
|
||||
public final class NewConversation implements ActionListener {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
EditorTopComponent newEditor = new EditorTopComponent();
|
||||
newEditor.open();
|
||||
newEditor.requestActive();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.projectswg.tools.csc.conversationeditor.actions;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.io.File;
|
||||
import org.openide.awt.ActionID;
|
||||
import org.openide.awt.ActionReference;
|
||||
import org.openide.awt.ActionReferences;
|
||||
import org.openide.awt.ActionRegistration;
|
||||
import org.openide.filesystems.FileChooserBuilder;
|
||||
import org.openide.util.NbBundle.Messages;
|
||||
|
||||
@ActionID(category = "File", id = "org.mycore.OpenFileAction")
|
||||
@ActionRegistration(displayName = "Open Conversation")
|
||||
@ActionReferences({
|
||||
@ActionReference(path = "Menu/File", position = 10, separatorAfter = 11),
|
||||
@ActionReference(path = "Shortcuts", name = "D-O")
|
||||
})
|
||||
@Messages("CTL_OpenFileAction=Open Conversation")
|
||||
public final class OpenConversation implements ActionListener {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
//The default dir to use if no value is stored
|
||||
File home = new File(System.getProperty("user.home"));
|
||||
|
||||
File toAdd = new FileChooserBuilder("user-dir").setTitle("Open Conversation").
|
||||
setDefaultWorkingDirectory(home).setApproveText("Open").showOpenDialog();
|
||||
//Result will be null if the user clicked cancel or closed the dialog w/o OK
|
||||
if (toAdd != null) {
|
||||
// TODO:
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
/*
|
||||
* To change this license header, choose License Headers in Project Properties.
|
||||
* To change this template file, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
package com.projectswg.tools.csc.conversationeditor.actions;
|
||||
|
||||
import com.projectswg.tools.csc.conversationeditor.EditorTopComponent;
|
||||
import com.projectswg.tools.csc.conversationeditor.SceneSaver;
|
||||
import com.projectswg.tools.csc.conversationeditor.SceneView;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.filechooser.FileFilter;
|
||||
import javax.xml.parsers.DocumentBuilder;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
import javax.xml.transform.OutputKeys;
|
||||
import javax.xml.transform.Transformer;
|
||||
import javax.xml.transform.TransformerConfigurationException;
|
||||
import javax.xml.transform.TransformerException;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.transform.dom.DOMSource;
|
||||
import javax.xml.transform.stream.StreamResult;
|
||||
import org.openide.awt.ActionID;
|
||||
import org.openide.awt.ActionReference;
|
||||
import org.openide.awt.ActionReferences;
|
||||
import org.openide.awt.ActionRegistration;
|
||||
import org.openide.filesystems.FileChooserBuilder;
|
||||
import org.openide.util.Exceptions;
|
||||
import org.openide.util.NbBundle.Messages;
|
||||
import org.openide.windows.TopComponent;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Node;
|
||||
import org.xml.sax.SAXException;
|
||||
|
||||
@ActionID(
|
||||
category = "File",
|
||||
id = "com.projectswg.tools.csc.conversationeditor.actions.SaveConversation"
|
||||
)
|
||||
@ActionRegistration(
|
||||
iconBase = "com/projectswg/tools/csc/conversationeditor/actions/conversation_tb_save.png",
|
||||
displayName = "Save Conversation"
|
||||
)
|
||||
@ActionReferences({
|
||||
@ActionReference(path = "Menu/File", position = -90, separatorBefore = -140),
|
||||
@ActionReference(path = "Toolbars/File", position = 500),
|
||||
@ActionReference(path = "Shortcuts", name = "D-S")
|
||||
})
|
||||
@Messages("CTL_SaveConversation=Save Conversation")
|
||||
public final class SaveConversation implements ActionListener {
|
||||
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
TopComponent component = TopComponent.getRegistry().getActivated();
|
||||
if (component == null || !(component instanceof EditorTopComponent))
|
||||
return;
|
||||
|
||||
EditorTopComponent editor = (EditorTopComponent) component;
|
||||
final SceneView scene = editor.getScene();
|
||||
|
||||
if (scene == null)
|
||||
return;
|
||||
|
||||
if (scene.getSceneName().equals("")) {
|
||||
File home = new File(System.getProperty("user.home"));
|
||||
|
||||
FileChooserBuilder builder = new FileChooserBuilder("user-dir").setTitle("Save Conversation").setDefaultWorkingDirectory(home).setApproveText("Save");
|
||||
builder.setAcceptAllFileFilterUsed(true);
|
||||
|
||||
final File file = builder.showSaveDialog();
|
||||
|
||||
if (file != null) {
|
||||
scene.setSceneName(file.getName().split(".xml")[0]);
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
save(scene, file.getAbsolutePath());
|
||||
} catch (ParserConfigurationException | IOException | SAXException | TransformerException ex) {
|
||||
Exceptions.printStackTrace(ex);
|
||||
}
|
||||
}
|
||||
});
|
||||
editor.setName("Conversation Editor - " + scene.getSceneName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void save(SceneView scene, String path) throws ParserConfigurationException, IOException, SAXException, TransformerConfigurationException, TransformerException {
|
||||
SceneSaver saver = new SceneSaver();
|
||||
|
||||
File xmlFile = new File(path + ".xml");
|
||||
if (!xmlFile.exists())
|
||||
xmlFile.createNewFile();
|
||||
|
||||
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
|
||||
DocumentBuilder builder = factory.newDocumentBuilder();
|
||||
Document document = builder.newDocument();
|
||||
|
||||
document.createElement("Properties");
|
||||
|
||||
Node xmlNode = saver.serializeData(scene, document);
|
||||
document.appendChild(xmlNode);
|
||||
|
||||
TransformerFactory transformerFactory = TransformerFactory.newInstance();
|
||||
Transformer transformer = transformerFactory.newTransformer();
|
||||
|
||||
DOMSource source = new DOMSource(document);
|
||||
StreamResult result = new StreamResult(xmlFile);
|
||||
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
|
||||
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
|
||||
|
||||
transformer.transform(source, result);
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
@@ -15,6 +15,7 @@
|
||||
</folder>
|
||||
</folder>
|
||||
<folder name="Menu">
|
||||
<file name="BuildProject_hidden"/>
|
||||
<folder name="Edit">
|
||||
<file name="Separator1.instance_hidden"/>
|
||||
<file name="Separator2.instance_hidden"/>
|
||||
@@ -31,12 +32,39 @@
|
||||
<file name="org-openide-actions-UndoAction.shadow_hidden"/>
|
||||
</folder>
|
||||
<folder name="File">
|
||||
<file name="Export_hidden"/>
|
||||
<file name="Import_hidden"/>
|
||||
<file name="Separator2.instance_hidden"/>
|
||||
<file name="Separator3.instance_hidden"/>
|
||||
<file name="Separator4.instance_hidden"/>
|
||||
<file name="SeparatorNew.instance_hidden"/>
|
||||
<file name="SeparatorOpen.instance_hidden"/>
|
||||
<file name="org-netbeans-modules-editor-ExportHtmlAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-openfile-OpenFileAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-openfile-RecentFileAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-print-action-PageSetupAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-print-action-PrintAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-CloseProject.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-CustomizeProject.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-NewFile.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-NewProject.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-OpenProject.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-RecentProjects.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-actions-CloseAllProjectsAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-actions-CloseOtherProjectsAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-groups-GroupsMenu.shadow_hidden"/>
|
||||
<file name="org-openide-actions-SaveAction.shadow_hidden"/>
|
||||
<file name="org-openide-actions-SaveAllAction.shadow_hidden"/>
|
||||
<file name="org-openide-actions-SaveAsAction.shadow_hidden"/>
|
||||
</folder>
|
||||
<file name="GoTo_hidden"/>
|
||||
<folder name="Help">
|
||||
<file name="netbeans-kb.url_hidden"/>
|
||||
<file name="shortcuts.xml_hidden"/>
|
||||
</folder>
|
||||
<file name="Refactoring_hidden"/>
|
||||
<file name="RunProject_hidden"/>
|
||||
<file name="Source_hidden"/>
|
||||
<folder name="Tools">
|
||||
<file name="Separator1.instance_hidden"/>
|
||||
<file name="Separator2.instance_hidden"/>
|
||||
@@ -45,6 +73,7 @@
|
||||
<file name="org-netbeans-modules-templates-actions-TemplatesAction.shadow_hidden"/>
|
||||
<file name="org-openide-actions-ToolsAction.shadow_hidden"/>
|
||||
</folder>
|
||||
<file name="Versioning_hidden"/>
|
||||
<folder name="View">
|
||||
<file name="Separator2.instance_hidden"/>
|
||||
<file name="Separator3.instance_hidden"/>
|
||||
@@ -54,17 +83,28 @@
|
||||
<file name="org-netbeans-core-windows-actions-ToolbarsListAction.shadow_hidden"/>
|
||||
</folder>
|
||||
<folder name="Window">
|
||||
<file name="CloseAllButThisAction.shadow_hidden"/>
|
||||
<file name="CloseAllDocumentsAction.shadow_hidden"/>
|
||||
<file name="Debug_hidden"/>
|
||||
<file name="DocumentsAction.shadow_hidden"/>
|
||||
<file name="GroupsMenuAction.shadow_hidden"/>
|
||||
<file name="SwitchToRecentDocumentAction.shadow_hidden"/>
|
||||
<file name="Tools_hidden"/>
|
||||
<file name="Web_hidden"/>
|
||||
<file name="org-netbeans-core-ide-ServicesTabAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-core-io-ui-IOWindowAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-core-windows-actions-GlobalPropertiesAction.shadow">
|
||||
<attr name="originalFile" stringvalue="Actions/Window/org-netbeans-core-windows-actions-GlobalPropertiesAction.instance"/>
|
||||
<attr intvalue="100" name="position"/>
|
||||
</file>
|
||||
<file name="org-netbeans-modules-favorites-View.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-navigator-ShowNavigatorAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-logical-tab-action.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-physical-tab-action.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-tasklist-ui-TaskListAction.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-tasks-ui-DashboardTopComponent.shadow_hidden"/>
|
||||
</folder>
|
||||
<file name="org-netbeans-modules-quicksearch-QuickSearchAction.shadow_hidden"/>
|
||||
</folder>
|
||||
<folder name="OptionsDialog">
|
||||
<file name="Advanced.instance_hidden"/>
|
||||
@@ -74,7 +114,16 @@
|
||||
<file name="Keywords_hidden"/>
|
||||
</folder>
|
||||
<folder name="Toolbars">
|
||||
<file name="Build_hidden"/>
|
||||
<file name="Clipboard_hidden"/>
|
||||
<file name="Debug_hidden"/>
|
||||
<file name="Debugging.xml_hidden"/>
|
||||
<folder name="File">
|
||||
<file name="org-netbeans-modules-project-ui-NewFile.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-NewProject.shadow_hidden"/>
|
||||
<file name="org-netbeans-modules-project-ui-OpenProject.shadow_hidden"/>
|
||||
<file name="org-openide-actions-SaveAllAction.shadow_hidden"/>
|
||||
</folder>
|
||||
<file name="Memory_hidden"/>
|
||||
<file name="UndoRedo_hidden"/>
|
||||
</folder>
|
||||
|
||||
@@ -1,18 +1,251 @@
|
||||
branding.token=conversationscriptcreator
|
||||
cluster.path=\
|
||||
${nbplatform.active.dir}/ide:\
|
||||
${nbplatform.active.dir}/platform
|
||||
disabled.modules=\
|
||||
com.jcraft.jsch,\
|
||||
com.jcraft.jzlib,\
|
||||
javaewah.dummy,\
|
||||
org.apache.commons.codec,\
|
||||
org.apache.commons.httpclient,\
|
||||
org.apache.commons.io,\
|
||||
org.apache.commons.lang,\
|
||||
org.apache.commons.logging,\
|
||||
org.apache.ws.commons.util,\
|
||||
org.apache.xml.resolver,\
|
||||
org.apache.xmlrpc,\
|
||||
org.eclipse.core.contenttype,\
|
||||
org.eclipse.core.jobs,\
|
||||
org.eclipse.core.net,\
|
||||
org.eclipse.core.runtime,\
|
||||
org.eclipse.core.runtime.compatibility.auth,\
|
||||
org.eclipse.equinox.app,\
|
||||
org.eclipse.equinox.common,\
|
||||
org.eclipse.equinox.preferences,\
|
||||
org.eclipse.equinox.registry,\
|
||||
org.eclipse.equinox.security,\
|
||||
org.eclipse.jgit,\
|
||||
org.eclipse.mylyn.bugzilla.core,\
|
||||
org.eclipse.mylyn.commons.core,\
|
||||
org.eclipse.mylyn.commons.net,\
|
||||
org.eclipse.mylyn.commons.repositories.core,\
|
||||
org.eclipse.mylyn.commons.xmlrpc,\
|
||||
org.eclipse.mylyn.tasks.core,\
|
||||
org.eclipse.mylyn.wikitext.confluence.core,\
|
||||
org.eclipse.mylyn.wikitext.core,\
|
||||
org.eclipse.mylyn.wikitext.textile.core,\
|
||||
org.jdesktop.layout,\
|
||||
org.netbeans.api.debugger,\
|
||||
org.netbeans.api.java.classpath,\
|
||||
org.netbeans.api.xml,\
|
||||
org.netbeans.core.browser,\
|
||||
org.netbeans.core.browser.webview,\
|
||||
org.netbeans.core.execution,\
|
||||
org.netbeans.core.ide,\
|
||||
org.netbeans.core.multitabs.project,\
|
||||
org.netbeans.lib.terminalemulator,\
|
||||
org.netbeans.libs.antlr3.runtime,\
|
||||
org.netbeans.libs.bytelist,\
|
||||
org.netbeans.libs.commons_net,\
|
||||
org.netbeans.libs.felix,\
|
||||
org.netbeans.libs.freemarker,\
|
||||
org.netbeans.libs.git,\
|
||||
org.netbeans.libs.ini4j,\
|
||||
org.netbeans.libs.javafx,\
|
||||
org.netbeans.libs.jaxb,\
|
||||
org.netbeans.libs.jsch.agentproxy,\
|
||||
org.netbeans.libs.json_simple,\
|
||||
org.netbeans.libs.jsr223,\
|
||||
org.netbeans.libs.jvyamlb,\
|
||||
org.netbeans.libs.lucene,\
|
||||
org.netbeans.libs.nashorn,\
|
||||
org.netbeans.libs.smack,\
|
||||
org.netbeans.libs.svnClientAdapter,\
|
||||
org.netbeans.libs.svnClientAdapter.javahl,\
|
||||
org.netbeans.libs.svnClientAdapter.svnkit,\
|
||||
org.netbeans.libs.swingx,\
|
||||
org.netbeans.libs.testng,\
|
||||
org.netbeans.libs.xerces,\
|
||||
org.netbeans.modules.autoupdate.cli,\
|
||||
org.netbeans.modules.autoupdate.services,\
|
||||
org.netbeans.modules.autoupdate.ui,\
|
||||
org.netbeans.modules.bugtracking,\
|
||||
org.netbeans.modules.bugtracking.bridge,\
|
||||
org.netbeans.modules.bugtracking.commons,\
|
||||
org.netbeans.modules.bugzilla,\
|
||||
org.netbeans.modules.code.analysis,\
|
||||
org.netbeans.modules.core.kit,\
|
||||
org.netbeans.modules.csl.api,\
|
||||
org.netbeans.modules.css.editor,\
|
||||
org.netbeans.modules.css.lib,\
|
||||
org.netbeans.modules.css.model,\
|
||||
org.netbeans.modules.css.prep,\
|
||||
org.netbeans.modules.css.visual,\
|
||||
org.netbeans.modules.db,\
|
||||
org.netbeans.modules.db.core,\
|
||||
org.netbeans.modules.db.dataview,\
|
||||
org.netbeans.modules.db.drivers,\
|
||||
org.netbeans.modules.db.kit,\
|
||||
org.netbeans.modules.db.metadata.model,\
|
||||
org.netbeans.modules.db.mysql,\
|
||||
org.netbeans.modules.db.sql.editor,\
|
||||
org.netbeans.modules.db.sql.visualeditor,\
|
||||
org.netbeans.modules.dbapi,\
|
||||
org.netbeans.modules.defaults,\
|
||||
org.netbeans.modules.derby,\
|
||||
org.netbeans.modules.diff,\
|
||||
org.netbeans.modules.dlight.nativeexecution,\
|
||||
org.netbeans.modules.dlight.terminal,\
|
||||
org.netbeans.modules.editor,\
|
||||
org.netbeans.modules.editor.actions,\
|
||||
org.netbeans.modules.editor.bookmarks,\
|
||||
org.netbeans.modules.editor.bracesmatching,\
|
||||
org.netbeans.modules.editor.breadcrumbs,\
|
||||
org.netbeans.modules.editor.codetemplates,\
|
||||
org.netbeans.modules.editor.completion,\
|
||||
org.netbeans.modules.editor.deprecated.pre65formatting,\
|
||||
org.netbeans.modules.editor.errorstripe,\
|
||||
org.netbeans.modules.editor.errorstripe.api,\
|
||||
org.netbeans.modules.editor.fold,\
|
||||
org.netbeans.modules.editor.fold.nbui,\
|
||||
org.netbeans.modules.editor.global.format,\
|
||||
org.netbeans.modules.editor.guards,\
|
||||
org.netbeans.modules.editor.indent,\
|
||||
org.netbeans.modules.editor.indent.project,\
|
||||
org.netbeans.modules.editor.kit,\
|
||||
org.netbeans.modules.editor.lib,\
|
||||
org.netbeans.modules.editor.lib2,\
|
||||
org.netbeans.modules.editor.macros,\
|
||||
org.netbeans.modules.editor.plain,\
|
||||
org.netbeans.modules.editor.plain.lib,\
|
||||
org.netbeans.modules.editor.search,\
|
||||
org.netbeans.modules.editor.settings,\
|
||||
org.netbeans.modules.editor.settings.storage,\
|
||||
org.netbeans.modules.editor.structure,\
|
||||
org.netbeans.modules.editor.tools.storage,\
|
||||
org.netbeans.modules.editor.util,\
|
||||
org.netbeans.modules.extbrowser,\
|
||||
org.netbeans.modules.extexecution,\
|
||||
org.netbeans.modules.extexecution.impl,\
|
||||
org.netbeans.modules.favorites,\
|
||||
org.netbeans.modules.git,\
|
||||
org.netbeans.modules.gototest,\
|
||||
org.netbeans.modules.gsf.codecoverage,\
|
||||
org.netbeans.modules.gsf.testrunner,\
|
||||
org.netbeans.modules.html,\
|
||||
org.netbeans.modules.html.angular,\
|
||||
org.netbeans.modules.html.custom,\
|
||||
org.netbeans.modules.html.editor,\
|
||||
org.netbeans.modules.html.editor.lib,\
|
||||
org.netbeans.modules.html.knockout,\
|
||||
org.netbeans.modules.html.lexer,\
|
||||
org.netbeans.modules.html.parser,\
|
||||
org.netbeans.modules.html.validation,\
|
||||
org.netbeans.modules.httpserver,\
|
||||
org.netbeans.modules.hudson,\
|
||||
org.netbeans.modules.hudson.git,\
|
||||
org.netbeans.modules.hudson.mercurial,\
|
||||
org.netbeans.modules.hudson.subversion,\
|
||||
org.netbeans.modules.hudson.tasklist,\
|
||||
org.netbeans.modules.hudson.ui,\
|
||||
org.netbeans.modules.ide.kit,\
|
||||
org.netbeans.modules.image,\
|
||||
org.netbeans.modules.javascript2.debug,\
|
||||
org.netbeans.modules.javascript2.editor,\
|
||||
org.netbeans.modules.javascript2.extjs,\
|
||||
org.netbeans.modules.javascript2.jquery,\
|
||||
org.netbeans.modules.javascript2.kit,\
|
||||
org.netbeans.modules.javascript2.knockout,\
|
||||
org.netbeans.modules.jellytools.ide,\
|
||||
org.netbeans.modules.jumpto,\
|
||||
org.netbeans.modules.languages,\
|
||||
org.netbeans.modules.languages.diff,\
|
||||
org.netbeans.modules.languages.manifest,\
|
||||
org.netbeans.modules.languages.yaml,\
|
||||
org.netbeans.modules.lexer,\
|
||||
org.netbeans.modules.lexer.nbbridge,\
|
||||
org.netbeans.modules.localhistory,\
|
||||
org.netbeans.modules.localtasks,\
|
||||
org.netbeans.modules.mercurial,\
|
||||
org.netbeans.modules.mylyn.util,\
|
||||
org.netbeans.modules.notifications,\
|
||||
org.netbeans.modules.options.editor,\
|
||||
org.netbeans.modules.parsing.api,\
|
||||
org.netbeans.modules.parsing.lucene,\
|
||||
org.netbeans.modules.parsing.ui,\
|
||||
org.netbeans.modules.print.editor,\
|
||||
org.netbeans.modules.project.ant,\
|
||||
org.netbeans.modules.project.indexingbridge,\
|
||||
org.netbeans.modules.project.libraries,\
|
||||
org.netbeans.modules.projectapi,\
|
||||
org.netbeans.modules.projectui,\
|
||||
org.netbeans.modules.projectui.buildmenu,\
|
||||
org.netbeans.modules.projectuiapi,\
|
||||
org.netbeans.modules.properties,\
|
||||
org.netbeans.modules.properties.syntax,\
|
||||
org.netbeans.modules.refactoring.api,\
|
||||
org.netbeans.modules.schema2beans,\
|
||||
org.netbeans.modules.server,\
|
||||
org.netbeans.modules.servletapi,\
|
||||
org.netbeans.modules.spellchecker,\
|
||||
org.netbeans.modules.spellchecker.apimodule,\
|
||||
org.netbeans.modules.spellchecker.bindings.htmlxml,\
|
||||
org.netbeans.modules.spellchecker.bindings.properties,\
|
||||
org.netbeans.modules.spellchecker.dictionary_en,\
|
||||
org.netbeans.modules.spellchecker.kit,\
|
||||
org.netbeans.modules.spi.actions,\
|
||||
org.netbeans.modules.subversion,\
|
||||
org.netbeans.modules.swing.validation,\
|
||||
org.netbeans.modules.target.iterator,\
|
||||
org.netbeans.modules.tasklist.kit,\
|
||||
org.netbeans.modules.tasklist.projectint,\
|
||||
org.netbeans.modules.tasklist.todo,\
|
||||
org.netbeans.modules.tasklist.ui,\
|
||||
org.netbeans.modules.team.commons,\
|
||||
org.netbeans.modules.team.ide,\
|
||||
org.netbeans.modules.templates,\
|
||||
org.netbeans.modules.terminal,\
|
||||
org.netbeans.modules.usersguide,\
|
||||
org.netbeans.modules.utilities.project,\
|
||||
org.netbeans.modules.versioning,\
|
||||
org.netbeans.modules.versioning.core,\
|
||||
org.netbeans.modules.versioning.indexingbridge,\
|
||||
org.netbeans.modules.versioning.masterfs,\
|
||||
org.netbeans.modules.versioning.system.cvss.installer,\
|
||||
org.netbeans.modules.versioning.ui,\
|
||||
org.netbeans.modules.versioning.util,\
|
||||
org.netbeans.modules.web.browser.api,\
|
||||
org.netbeans.modules.web.common,\
|
||||
org.netbeans.modules.web.indent,\
|
||||
org.netbeans.modules.web.webkit.debugging,\
|
||||
org.netbeans.modules.xml,\
|
||||
org.netbeans.modules.xml.axi,\
|
||||
org.netbeans.modules.xml.catalog,\
|
||||
org.netbeans.modules.xml.core,\
|
||||
org.netbeans.modules.xml.jaxb.api,\
|
||||
org.netbeans.modules.xml.lexer,\
|
||||
org.netbeans.modules.xml.multiview,\
|
||||
org.netbeans.modules.xml.retriever,\
|
||||
org.netbeans.modules.xml.schema.completion,\
|
||||
org.netbeans.modules.xml.schema.model,\
|
||||
org.netbeans.modules.xml.tax,\
|
||||
org.netbeans.modules.xml.text,\
|
||||
org.netbeans.modules.xml.tools,\
|
||||
org.netbeans.modules.xml.wsdl.model,\
|
||||
org.netbeans.modules.xml.xam,\
|
||||
org.netbeans.modules.xml.xdm,\
|
||||
org.netbeans.modules.xsl,\
|
||||
org.netbeans.spi.debugger.ui,\
|
||||
org.netbeans.spi.editor.hints,\
|
||||
org.netbeans.spi.editor.hints.projects,\
|
||||
org.netbeans.spi.navigator,\
|
||||
org.netbeans.spi.palette,\
|
||||
org.netbeans.spi.tasklist,\
|
||||
org.netbeans.spi.viewmodel,\
|
||||
org.netbeans.swing.dirchooser,\
|
||||
org.openide.compat,\
|
||||
org.openide.execution,\
|
||||
org.openide.options,\
|
||||
org.openide.util.enumerations
|
||||
org.openide.util.enumerations,\
|
||||
org.openidex.util
|
||||
nbplatform.active=default
|
||||
|
||||
Reference in New Issue
Block a user