diff --git a/nbproject/build-native.xml~ b/nbproject/build-native.xml~ index b40fd54..75448ad 100644 --- a/nbproject/build-native.xml~ +++ b/nbproject/build-native.xml~ @@ -67,7 +67,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - + @@ -89,27 +89,19 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + - - - + - - - - - - + + @@ -120,9 +112,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -133,9 +123,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -146,9 +134,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -159,9 +145,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -172,9 +156,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -185,9 +167,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -198,9 +178,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -212,9 +190,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -226,9 +202,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -240,9 +214,7 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - + @@ -258,8 +230,8 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. + uri="javafx:com.sun.javafx.tools.ant" + classpath="${javafx.ant.classpath}"/> @@ -397,23 +369,13 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - - - - - - - - - - - - - - - + + + + + + + @@ -427,17 +389,11 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - - - - - - - - - + + + + + @@ -447,16 +403,12 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - - - - - - - - + + + + + + @@ -466,16 +418,12 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. - - - - - - - - - - + + + + + + @@ -514,11 +462,11 @@ Portions Copyrighted 2013 Sun Microsystems, Inc. self.addMappedName( - (source.indexOf("jfxrt.jar") >= 0) || - (source.indexOf("deploy.jar") >= 0) || - (source.indexOf("javaws.jar") >= 0) || - (source.indexOf("plugin.jar") >= 0) - ? "" : source + (source.indexOf("jfxrt.jar") >= 0) || + (source.indexOf("deploy.jar") >= 0) || + (source.indexOf("javaws.jar") >= 0) || + (source.indexOf("plugin.jar") >= 0) + ? "" : source ); diff --git a/src/net/apocalypselabs/symat/MainGUI.form b/src/net/apocalypselabs/symat/MainGUI.form index f081dd8..fbca448 100644 --- a/src/net/apocalypselabs/symat/MainGUI.form +++ b/src/net/apocalypselabs/symat/MainGUI.form @@ -330,8 +330,10 @@ - - + + + + @@ -341,6 +343,7 @@ + @@ -380,6 +383,26 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/src/net/apocalypselabs/symat/MainGUI.java b/src/net/apocalypselabs/symat/MainGUI.java index 291eda4..6cb6f43 100644 --- a/src/net/apocalypselabs/symat/MainGUI.java +++ b/src/net/apocalypselabs/symat/MainGUI.java @@ -50,11 +50,14 @@ import java.awt.Font; import java.awt.FontFormatException; import static java.awt.Frame.MAXIMIZED_BOTH; import java.awt.Graphics; +import java.awt.Image; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; +import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; +import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import javafx.application.Platform; @@ -86,6 +89,9 @@ public class MainGUI extends javax.swing.JFrame { public static boolean updateAvailable = false; public static String updateString = ""; + + // Logo for frames + public static ArrayList symatlogo = new ArrayList<>(); /** * Creates the main app window and does some quick things that aren't @@ -93,8 +99,12 @@ public class MainGUI extends javax.swing.JFrame { */ public MainGUI() { initComponents(); - setIconImage((new ImageIcon( - getClass().getResource("icon.png"))).getImage()); + + // Set icon + String[] sizes = {"16","32","48","64","128","256"}; + setIconImages(symatlogo); + + // Center screen setLocationRelativeTo(null); // Run things when app closed @@ -319,6 +329,7 @@ public class MainGUI extends javax.swing.JFrame { jPanel5 = new javax.swing.JPanel(); wikiBtn = new javax.swing.JButton(); jLabel4 = new javax.swing.JLabel(); + forumBtn = new javax.swing.JButton(); mainPane = mainPane = new javax.swing.JDesktopPane() { @Override protected void paintComponent(Graphics g) { @@ -536,6 +547,19 @@ public class MainGUI extends javax.swing.JFrame { jLabel4.setText(namemark()); jLabel4.setFocusable(false); + forumBtn.setIcon(new javax.swing.ImageIcon(getClass().getResource("/net/apocalypselabs/symat/images/forum.png"))); // NOI18N + forumBtn.setText("Forum"); + forumBtn.setBorder(javax.swing.BorderFactory.createEmptyBorder(5, 5, 5, 5)); + forumBtn.setFocusable(false); + forumBtn.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + forumBtn.setOpaque(false); + forumBtn.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + forumBtn.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + forumBtnActionPerformed(evt); + } + }); + javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5); jPanel5.setLayout(jPanel5Layout); jPanel5Layout.setHorizontalGroup( @@ -543,15 +567,18 @@ public class MainGUI extends javax.swing.JFrame { .addGroup(jPanel5Layout.createSequentialGroup() .addContainerGap() .addComponent(wikiBtn) - .addGap(18, 18, 18) - .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, 632, Short.MAX_VALUE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(forumBtn) + .addGap(12, 12, 12) + .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, 571, Short.MAX_VALUE)) ); jPanel5Layout.setVerticalGroup( jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup() .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) .addComponent(jLabel4, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(wikiBtn, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addComponent(wikiBtn, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(forumBtn, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); @@ -763,13 +790,17 @@ public class MainGUI extends javax.swing.JFrame { }//GEN-LAST:event_recentItemsTitleMouseClicked private void wikiBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_wikiBtnActionPerformed - loadFrame(new WebBrowser("SyMAT Wiki")); + loadFrame(new WebBrowser("SyMAT Wiki", "http://wiki.symatapp.com", WebBrowser.WIKI_LOGO)); }//GEN-LAST:event_wikiBtnActionPerformed private void globalsBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_globalsBtnActionPerformed loadFrame(new Globals()); }//GEN-LAST:event_globalsBtnActionPerformed + private void forumBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_forumBtnActionPerformed + loadFrame(new WebBrowser("Community Forum", "http://forum.symatapp.com/", WebBrowser.FORUM_LOGO)); + }//GEN-LAST:event_forumBtnActionPerformed + /* End the button handlers. */ @@ -883,6 +914,13 @@ public class MainGUI extends javax.swing.JFrame { ubuntuRegular = Font.getFont(Font.SANS_SERIF); System.err.println("Error loading fonts: " + ex.getMessage()); } + + // Set icon + String[] sizes = {"16","32","48","64","128","256"}; + for (String s : sizes) { + symatlogo.add(new ImageIcon( + MainGUI.class.getResource("logo-filled"+s+".png")).getImage()); + } // Command line args for (String arg : args) { @@ -922,6 +960,7 @@ public class MainGUI extends javax.swing.JFrame { public static javax.swing.JButton arrangeWindowsBtn; public static javax.swing.JButton displaySettingsBtn; public static javax.swing.JButton editorBtn; + public static javax.swing.JButton forumBtn; public static javax.swing.JButton globalsBtn; public static javax.swing.JButton graphBtn; public static javax.swing.JButton helpBtn; diff --git a/src/net/apocalypselabs/symat/SplashScreen.java b/src/net/apocalypselabs/symat/SplashScreen.java index 6688bb9..6d05d8c 100644 --- a/src/net/apocalypselabs/symat/SplashScreen.java +++ b/src/net/apocalypselabs/symat/SplashScreen.java @@ -46,7 +46,6 @@ package net.apocalypselabs.symat; import java.awt.Color; -import java.awt.geom.RoundRectangle2D; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; @@ -69,8 +68,7 @@ public class SplashScreen extends javax.swing.JFrame { public SplashScreen() { initComponents(); setBackground(new Color(0, 0, 0, 0)); - setIconImage((new ImageIcon( - getClass().getResource("icon.png"))).getImage()); + setIconImages(MainGUI.symatlogo); setLocationRelativeTo(null); } diff --git a/src/net/apocalypselabs/symat/WebBrowser.form b/src/net/apocalypselabs/symat/WebBrowser.form index e37659c..07cd873 100644 --- a/src/net/apocalypselabs/symat/WebBrowser.form +++ b/src/net/apocalypselabs/symat/WebBrowser.form @@ -7,6 +7,10 @@ + + + + diff --git a/src/net/apocalypselabs/symat/WebBrowser.java b/src/net/apocalypselabs/symat/WebBrowser.java index 7fd2bf5..c2a245e 100644 --- a/src/net/apocalypselabs/symat/WebBrowser.java +++ b/src/net/apocalypselabs/symat/WebBrowser.java @@ -54,6 +54,7 @@ import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.web.WebEngine; import javafx.scene.web.WebView; +import javax.swing.ImageIcon; /** * @@ -67,6 +68,10 @@ public class WebBrowser extends javax.swing.JInternalFrame { private Group root; private Scene scene; + public static final int DEFAULT_LOGO = 0; + public static final int WIKI_LOGO = 1; + public static final int FORUM_LOGO = 2; + /** * Creates new form WebBrowser */ @@ -102,6 +107,28 @@ public class WebBrowser extends javax.swing.JInternalFrame { loadURL(url); } + public WebBrowser(String title, String url, int icon) { + this(title, url); + switch (icon) { + case WIKI_LOGO: + setFrameIcon(new ImageIcon(getClass().getResource("/net/apocalypselabs/symat/icons/wiki.png"))); + break; + case FORUM_LOGO: + setFrameIcon(new ImageIcon(getClass().getResource("/net/apocalypselabs/symat/icons/forum.png"))); + Platform.runLater(new Runnable() { + @Override + public void run() { + browser.getEngine().setJavaScriptEnabled(false); + } + }); + break; + case DEFAULT_LOGO: + default: + setFrameIcon(new ImageIcon(getClass().getResource("/net/apocalypselabs/symat/icons/browser.png"))); + } + + } + public WebBrowser(String url, boolean isurl) { this(); loadURL(url); @@ -141,6 +168,7 @@ public class WebBrowser extends javax.swing.JInternalFrame { setMaximizable(true); setResizable(true); setTitle("Browser"); + setFrameIcon(new javax.swing.ImageIcon(getClass().getResource("/net/apocalypselabs/symat/icons/browser.png"))); // NOI18N setMinimumSize(new java.awt.Dimension(300, 300)); setPreferredSize(new java.awt.Dimension(480, 400)); addInternalFrameListener(new javax.swing.event.InternalFrameListener() { @@ -192,7 +220,7 @@ public class WebBrowser extends javax.swing.JInternalFrame { @Override public void run() { jfxPanel.setSize(getWidth(), getHeight()); - browser.resize(getWidth() - 12, getHeight()); + browser.resize(getWidth() - 12, getHeight() - 12); } }); } diff --git a/src/net/apocalypselabs/symat/icons/browser.png b/src/net/apocalypselabs/symat/icons/browser.png new file mode 100644 index 0000000..296a0d0 Binary files /dev/null and b/src/net/apocalypselabs/symat/icons/browser.png differ diff --git a/src/net/apocalypselabs/symat/icons/forum.png b/src/net/apocalypselabs/symat/icons/forum.png new file mode 100644 index 0000000..e803142 Binary files /dev/null and b/src/net/apocalypselabs/symat/icons/forum.png differ diff --git a/src/net/apocalypselabs/symat/icons/wiki.png b/src/net/apocalypselabs/symat/icons/wiki.png new file mode 100644 index 0000000..f824a9c Binary files /dev/null and b/src/net/apocalypselabs/symat/icons/wiki.png differ diff --git a/src/net/apocalypselabs/symat/images/forum.png b/src/net/apocalypselabs/symat/images/forum.png new file mode 100644 index 0000000..6af1ab0 Binary files /dev/null and b/src/net/apocalypselabs/symat/images/forum.png differ diff --git a/src/net/apocalypselabs/symat/images/symat-hex-logo.png b/src/net/apocalypselabs/symat/images/symat-hex-logo.png index ea9701a..4306c81 100644 Binary files a/src/net/apocalypselabs/symat/images/symat-hex-logo.png and b/src/net/apocalypselabs/symat/images/symat-hex-logo.png differ diff --git a/src/net/apocalypselabs/symat/images/wiki.png b/src/net/apocalypselabs/symat/images/wiki.png index 2069e4a..d84eea4 100644 Binary files a/src/net/apocalypselabs/symat/images/wiki.png and b/src/net/apocalypselabs/symat/images/wiki.png differ diff --git a/src/net/apocalypselabs/symat/logo-filled128.png b/src/net/apocalypselabs/symat/logo-filled128.png new file mode 100644 index 0000000..4b4c2c8 Binary files /dev/null and b/src/net/apocalypselabs/symat/logo-filled128.png differ diff --git a/src/net/apocalypselabs/symat/logo-filled16.png b/src/net/apocalypselabs/symat/logo-filled16.png new file mode 100644 index 0000000..eaa18fc Binary files /dev/null and b/src/net/apocalypselabs/symat/logo-filled16.png differ diff --git a/src/net/apocalypselabs/symat/logo-filled256.png b/src/net/apocalypselabs/symat/logo-filled256.png new file mode 100644 index 0000000..ed77d12 Binary files /dev/null and b/src/net/apocalypselabs/symat/logo-filled256.png differ diff --git a/src/net/apocalypselabs/symat/logo-filled32.png b/src/net/apocalypselabs/symat/logo-filled32.png new file mode 100644 index 0000000..eaeb170 Binary files /dev/null and b/src/net/apocalypselabs/symat/logo-filled32.png differ diff --git a/src/net/apocalypselabs/symat/logo-filled48.png b/src/net/apocalypselabs/symat/logo-filled48.png new file mode 100644 index 0000000..1138ea9 Binary files /dev/null and b/src/net/apocalypselabs/symat/logo-filled48.png differ diff --git a/src/net/apocalypselabs/symat/logo-filled64.png b/src/net/apocalypselabs/symat/logo-filled64.png new file mode 100644 index 0000000..d79115b Binary files /dev/null and b/src/net/apocalypselabs/symat/logo-filled64.png differ diff --git a/src/net/apocalypselabs/symat/splash.gif b/src/net/apocalypselabs/symat/splash.gif deleted file mode 100644 index 5a0aa32..0000000 Binary files a/src/net/apocalypselabs/symat/splash.gif and /dev/null differ