From 20c1a07b76c39462594aedfedfe6e6adb17cd552 Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Wed, 01 May 2019 14:27:01 -0400 Subject: [PATCH] Fix animation and fast mode. --- GrafreeD.java | 122 +++++++++++++++++++++++++++++++++++----- 1 files changed, 106 insertions(+), 16 deletions(-) diff --git a/GrafreeD.java b/GrafreeD.java index ada5f76..d82d57e 100644 --- a/GrafreeD.java +++ b/GrafreeD.java @@ -15,6 +15,8 @@ //import com.jamonapi.*; public class GrafreeD extends Applet implements ActionListener { + static boolean NIMBUSLAF = true; + static int RENDERME = 0; static boolean epsequal = false; @@ -595,29 +597,54 @@ public static void main(String argv[]) { - if (false) // argv.length == 0) + String osArch = System.getProperty("os.arch"); + System.out.println("os.arch = " + osArch); + + if (argv.length == 0) { - String javaPath = System.getProperty("java.home") + "/bin/java"; + String javaPath = System.getProperty("java.home") + File.separator + "bin" + File.separator + "java"; + System.out.println("javaPath = " + javaPath); java.net.URL u = new GrafreeD().getClass().getResource("default.png"); - System.out.println(u); + System.out.println("URL = " + u); String jarfile = u.toString().split("file:")[1].split("default.png")[0]; + System.out.println("jarfile0 = " + jarfile); + String jarpath = u.toString().split("file:")[1].split("GrafreeD.jar")[0]; - System.out.println(jarfile); - System.out.println(jarpath); + System.out.println("jarpath0 = " + jarpath); jarfile = jarfile.substring(0, jarfile.length() - 2); - // -Djava.library.path=/Users/nbriere/Projects/shared/lib + System.out.println("jarfile = " + jarfile); + + String command = javaPath + " -Xmx1024m -Djava.library.path=" + jarpath; - String command = "" + javaPath + " -Xmx1024m -Djava.library.path=" + jarpath + "lib -jar " + jarfile + " dummyarg"; + // -Djava.library.path=/Users/nbriere/Projects/shared/lib + if (jarfile.charAt(2) == ':') + { + command = "\"" + javaPath + "\" -Xmx1024m -Djava.library.path=" + jarpath; + // On Windows systems, the path is /C:/ + jarfile = jarfile.substring(1, jarfile.length()); + System.out.println("jarfile = " + jarfile); + jarpath = jarpath.substring(1, jarpath.length()); + System.out.println("jarpath = " + jarpath); + command += "native" + File.separator; + if (osArch.equals("amd64")) + command += "windows_amd64"; + else + command += "windows_i586"; + } + else + command += "native" + File.separator + "macosx"; + + command += " -jar " + jarfile + " dummyarg"; try { - System.out.println(command); + System.out.println("command = " + command); Runtime.getRuntime().exec(command); return; @@ -626,6 +653,44 @@ { e.printStackTrace(); } + + /* + if (argv.length == 0) + { + String javaPath = System.getProperty("java.home") + File.separator + "bin" + File.separator + "java"; + System.out.println("javaPath = " + javaPath); + java.net.URL u = new Grafeme().getClass().getResource("grafeme.jpg"); + System.out.println("URL = " + u); + + String jarfile = u.toString().split("file:")[1].split("grafeme/grafeme.jpg")[0]; + System.out.println("jarfile0 = " + jarfile); + + jarfile = jarfile.substring(0, jarfile.length() - 2); // Remove "!/" after .jar + System.out.println("jarfile = " + jarfile); + + if (jarfile.charAt(2) == ':') + { + // On Windows systems, the path is /C:/ + jarfile = jarfile.substring(1, jarfile.length()); + System.out.println("jarfile = " + jarfile); + } + + String command = "\"" + javaPath + "\" -Xmx1024m -jar " + jarfile + " dummyarg"; + + try + { + System.out.println(command); + Runtime.getRuntime().exec(command); + + return; + } + catch (Exception e) + { + e.printStackTrace(); + } + } + + */ } // InitDictionary(); @@ -738,19 +803,44 @@ // PlayAudio("/Users/nbriere/Downloads/Footsteps-6.wav", 4, 1); - - try +/**/ + if (NIMBUSLAF) { - MetalLookAndFeel.setCurrentTheme(new DefaultMetalTheme()); - MetalLookAndFeel.setCurrentTheme(new Theme(Constants.yellowTheme)); - UIManager.setLookAndFeel(new MetalLookAndFeel()); - //UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"); + try + { + Object o = UIManager.getInstalledLookAndFeels(); + + javax.swing.plaf.metal.MetalLookAndFeel.setCurrentTheme(new javax.swing.plaf.metal.DefaultMetalTheme()); + //MetalLookAndFeel.setCurrentTheme(new Theme(Constants.beigeTheme)); + UIManager.setLookAndFeel(new javax.swing.plaf.metal.MetalLookAndFeel()); + + UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"); //UIManager.setLookAndFeel("com.apple.laf.AquaLookAndFeel"); //UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel"); - } catch (Exception e) - { + //UIManager.put("nimbusBase", new Color(0,0,0)); + } + catch (Exception e) + { + } } + else + { + try + { + MetalLookAndFeel.setCurrentTheme(new DefaultMetalTheme()); + MetalLookAndFeel.setCurrentTheme(new Theme(Constants.yellowTheme)); + UIManager.setLookAndFeel(new MetalLookAndFeel()); + //UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"); + //UIManager.setLookAndFeel("com.apple.laf.AquaLookAndFeel"); + //UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel"); + } catch (Exception e) + { + } + } +/**/ +// javax.swing.ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false); + //Monitor mon=MonitorFactory.start("myFirstMonitor"); standAlone = true; grafreeD = new GrafreeD(); -- Gitblit v1.6.2