diff --git a/lib/flamingo-6.3-javadoc.jar b/lib/flamingo-6.3-javadoc.jar new file mode 100644 index 0000000..cf7a175 Binary files /dev/null and b/lib/flamingo-6.3-javadoc.jar differ diff --git a/lib/trident-6.3.jar b/lib/trident-6.3.jar new file mode 100644 index 0000000..52b5bfd Binary files /dev/null and b/lib/trident-6.3.jar differ diff --git a/src/net/apocalypselabs/symat/Editor.java b/src/net/apocalypselabs/symat/Editor.java index 206be53..4c1e3a3 100644 --- a/src/net/apocalypselabs/symat/Editor.java +++ b/src/net/apocalypselabs/symat/Editor.java @@ -45,7 +45,6 @@ */ package net.apocalypselabs.symat; -import java.awt.Color; import java.awt.Component; import java.awt.Font; import java.io.BufferedReader; @@ -86,9 +85,9 @@ public class Editor extends javax.swing.JInternalFrame { private File filedata; /** - * Creates new form CodeEditor + * @param python If true sets to Python */ - public Editor() { + public Editor(boolean python) { initComponents(); FileFilter filter = new FileNameExtensionFilter("SyMAT JavaScript (.syjs)", "syjs"); @@ -124,7 +123,13 @@ public class Editor extends javax.swing.JInternalFrame { } }); - jsac.install(codeBox); + if (python) { + pyac.install(codeBox); + javascriptOption.setSelected(false); + pythonOption.setSelected(true); + } else { + jsac.install(codeBox); + } sp.setVisible(true); codeBox.setVisible(true); codeBox.requestFocus(); @@ -151,11 +156,19 @@ public class Editor extends javax.swing.JInternalFrame { }); } + /** + * @param text Text to load. + */ public Editor(String text) { this(); codeBox.setText(text); } + /** + * + * @param text Text to load + * @param openSaveDialog If true, prompts for save immediately + */ public Editor(String text, boolean openSaveDialog) { this(text); if (openSaveDialog) { @@ -163,6 +176,10 @@ public class Editor extends javax.swing.JInternalFrame { } } + public Editor() { + this(false); + } + private void setEditorTheme(String themeName) { try { Theme theme = Theme.load(Editor.class @@ -496,7 +513,7 @@ public class Editor extends javax.swing.JInternalFrame { codeBox.setText(FileUtils.readFile(f.toString())); isSaved = true; filedata = f; - setTitle("Editor - " + f.getName()); + setTitle(f.getName()); } catch (IOException ex) { JOptionPane.showInternalMessageDialog(this, "Error: Cannot load file: " + ex.getMessage()); @@ -533,7 +550,7 @@ public class Editor extends javax.swing.JInternalFrame { codeBox.setText(data); isSaved = saved; fileChanged = false; - setTitle("Editor - " + (new File(file)).getName()); + setTitle((new File(file)).getName()); if (file.matches(".*\\.(js|mls|symt|syjs)")) { javascriptOption.setSelected(true); pythonOption.setSelected(false); @@ -559,8 +576,7 @@ public class Editor extends javax.swing.JInternalFrame { FileUtils.saveFile(codeBox.getText(), filedata.getAbsolutePath(), true); isSaved = true; fileChanged = false; - setTitle("Editor - " - + FileUtils.getFileWithExtension(fc).getName()); + setTitle(FileUtils.getFileWithExtension(fc).getName()); } catch (IOException ex) { JOptionPane.showInternalMessageDialog(this, "Error: Cannot save file: " + ex.getMessage()); diff --git a/src/net/apocalypselabs/symat/License.java b/src/net/apocalypselabs/symat/License.java index 99c9b48..d4f036a 100644 --- a/src/net/apocalypselabs/symat/License.java +++ b/src/net/apocalypselabs/symat/License.java @@ -306,7 +306,6 @@ public class License extends javax.swing.JInternalFrame { } public void exit() { - Main.updateNamemark(); // Make sure it displays trial or not dispose(); } diff --git a/src/net/apocalypselabs/symat/Main.form b/src/net/apocalypselabs/symat/Main.form index 565cc43..fd04279 100644 --- a/src/net/apocalypselabs/symat/Main.form +++ b/src/net/apocalypselabs/symat/Main.form @@ -1,6 +1,13 @@
diff --git a/src/net/apocalypselabs/symat/Display.java b/src/net/apocalypselabs/symat/Settings.java similarity index 79% rename from src/net/apocalypselabs/symat/Display.java rename to src/net/apocalypselabs/symat/Settings.java index b5b6ddc..d6b8f43 100644 --- a/src/net/apocalypselabs/symat/Display.java +++ b/src/net/apocalypselabs/symat/Settings.java @@ -49,12 +49,12 @@ package net.apocalypselabs.symat; * * @author Skylar */ -public class Display extends javax.swing.JInternalFrame { +public class Settings extends javax.swing.JInternalFrame { /** * Creates new form Display */ - public Display() { + public Settings() { initComponents(); setBackground(Theme.windowColor()); } @@ -74,14 +74,15 @@ public class Display extends javax.swing.JInternalFrame { themeDark = new javax.swing.JRadioButton(); saveBtn = new javax.swing.JButton(); showRecent = new javax.swing.JCheckBox(); + miniRibbon = new javax.swing.JCheckBox(); setClosable(true); setIconifiable(true); - setTitle("Display"); + setTitle("Settings"); setFrameIcon(new javax.swing.ImageIcon(getClass().getResource("/net/apocalypselabs/symat/icons/settings.png"))); // NOI18N - setMaximumSize(new java.awt.Dimension(160, 215)); - setMinimumSize(new java.awt.Dimension(160, 215)); - setPreferredSize(new java.awt.Dimension(160, 215)); + setMaximumSize(new java.awt.Dimension(145, 237)); + setMinimumSize(new java.awt.Dimension(145, 237)); + setPreferredSize(new java.awt.Dimension(145, 237)); addComponentListener(new java.awt.event.ComponentAdapter() { public void componentShown(java.awt.event.ComponentEvent evt) { formComponentShown(evt); @@ -129,19 +130,25 @@ public class Display extends javax.swing.JInternalFrame { showRecent.setSelected(true); showRecent.setText("Show recent items"); + miniRibbon.setText("Minimize ribbon"); + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(saveBtn, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) - .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() - .addContainerGap() - .addComponent(showRecent)))) - .addContainerGap(25, Short.MAX_VALUE)) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(saveBtn, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) + .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addContainerGap() + .addComponent(showRecent)))) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(miniRibbon))) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) @@ -150,8 +157,10 @@ public class Display extends javax.swing.JInternalFrame { .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(showRecent) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(miniRibbon) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 34, Short.MAX_VALUE) .addComponent(saveBtn) - .addContainerGap(42, Short.MAX_VALUE)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); pack(); @@ -173,19 +182,15 @@ public class Display extends javax.swing.JInternalFrame { if (!PrefStorage.getSetting("showrecent", "").equals("")) { showRecent.setSelected(false); } + if (PrefStorage.getSetting("miniribbon", "").equals("yes")) { + miniRibbon.setSelected(true); + } }//GEN-LAST:event_formComponentShown private void saveBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveBtnActionPerformed - if (themeDark.isSelected()) { - Theme.setTheme("dark"); - } else { - Theme.setTheme("light"); - } - if (showRecent.isSelected()) { - PrefStorage.saveSetting("showrecent", ""); - } else { - PrefStorage.saveSetting("showrecent", "no"); - } + Theme.setTheme(themeDark.isSelected() ? "dark" : "light"); + PrefStorage.saveSetting("showrecent", showRecent.isSelected() ? "" : "no"); + PrefStorage.saveSetting("miniribbon", miniRibbon.isSelected() ? "yes" : ""); PrefStorage.save(); Main.updateDisplay(); dispose(); @@ -193,6 +198,7 @@ public class Display extends javax.swing.JInternalFrame { // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JPanel jPanel1; + private javax.swing.JCheckBox miniRibbon; private javax.swing.JButton saveBtn; private javax.swing.JCheckBox showRecent; private javax.swing.JRadioButton themeDark; diff --git a/src/net/apocalypselabs/symat/icon32.png b/src/net/apocalypselabs/symat/icon32.png new file mode 100644 index 0000000..31be488 Binary files /dev/null and b/src/net/apocalypselabs/symat/icon32.png differ diff --git a/src/net/apocalypselabs/symat/icons/jsicon.png b/src/net/apocalypselabs/symat/icons/jsicon.png new file mode 100644 index 0000000..fea99b1 Binary files /dev/null and b/src/net/apocalypselabs/symat/icons/jsicon.png differ diff --git a/src/net/apocalypselabs/symat/icons/pyicon.png b/src/net/apocalypselabs/symat/icons/pyicon.png new file mode 100644 index 0000000..ad00341 Binary files /dev/null and b/src/net/apocalypselabs/symat/icons/pyicon.png differ diff --git a/src/net/apocalypselabs/symat/images/cascade.png b/src/net/apocalypselabs/symat/images/cascade.png index 868d142..23456ff 100644 Binary files a/src/net/apocalypselabs/symat/images/cascade.png and b/src/net/apocalypselabs/symat/images/cascade.png differ diff --git a/src/net/apocalypselabs/symat/images/closeall.png b/src/net/apocalypselabs/symat/images/closeall.png index 997fa2f..16dfa89 100644 Binary files a/src/net/apocalypselabs/symat/images/closeall.png and b/src/net/apocalypselabs/symat/images/closeall.png differ diff --git a/src/net/apocalypselabs/symat/images/display.png b/src/net/apocalypselabs/symat/images/display.png index 4f93cde..4240228 100644 Binary files a/src/net/apocalypselabs/symat/images/display.png and b/src/net/apocalypselabs/symat/images/display.png differ diff --git a/src/net/apocalypselabs/symat/images/editor.png b/src/net/apocalypselabs/symat/images/editor.png index c2e7d56..767b1cc 100644 Binary files a/src/net/apocalypselabs/symat/images/editor.png and b/src/net/apocalypselabs/symat/images/editor.png differ diff --git a/src/net/apocalypselabs/symat/images/forum.png b/src/net/apocalypselabs/symat/images/forum.png index 6af1ab0..2d4f891 100644 Binary files a/src/net/apocalypselabs/symat/images/forum.png and b/src/net/apocalypselabs/symat/images/forum.png differ diff --git a/src/net/apocalypselabs/symat/images/graph.png b/src/net/apocalypselabs/symat/images/graph.png index bb01743..205451b 100644 Binary files a/src/net/apocalypselabs/symat/images/graph.png and b/src/net/apocalypselabs/symat/images/graph.png differ diff --git a/src/net/apocalypselabs/symat/images/help.png b/src/net/apocalypselabs/symat/images/help.png index 5a8f86d..d950f92 100644 Binary files a/src/net/apocalypselabs/symat/images/help.png and b/src/net/apocalypselabs/symat/images/help.png differ diff --git a/src/net/apocalypselabs/symat/images/newfile.png b/src/net/apocalypselabs/symat/images/newfile.png new file mode 100644 index 0000000..576ac69 Binary files /dev/null and b/src/net/apocalypselabs/symat/images/newfile.png differ diff --git a/src/net/apocalypselabs/symat/images/notepad.png b/src/net/apocalypselabs/symat/images/notepad.png index f13b87a..2e37abd 100644 Binary files a/src/net/apocalypselabs/symat/images/notepad.png and b/src/net/apocalypselabs/symat/images/notepad.png differ diff --git a/src/net/apocalypselabs/symat/images/pads.png b/src/net/apocalypselabs/symat/images/pads.png index d392b3a..c68334c 100644 Binary files a/src/net/apocalypselabs/symat/images/pads.png and b/src/net/apocalypselabs/symat/images/pads.png differ diff --git a/src/net/apocalypselabs/symat/images/shell.png b/src/net/apocalypselabs/symat/images/shell.png index db0fe07..e15ebde 100644 Binary files a/src/net/apocalypselabs/symat/images/shell.png and b/src/net/apocalypselabs/symat/images/shell.png differ diff --git a/src/net/apocalypselabs/symat/images/wiki.png b/src/net/apocalypselabs/symat/images/wiki.png index d84eea4..990271f 100644 Binary files a/src/net/apocalypselabs/symat/images/wiki.png and b/src/net/apocalypselabs/symat/images/wiki.png differ