/******************** * 2004 Jalview Reengineered * Barton Group * Dundee University * * AM Waterhouse *******************/ package jalview.bin; import jalview.gui.*; import javax.swing.*; import java.awt.event.*; import jalview.io.*; import org.apache.log4j.*; public class Jalview extends JApplet { public static JApplet applet; Desktop frame; public void init() { applet = this; Cache.loadProperties(); jalview.gui.Preferences.initPreferences(); frame = new Desktop(); frame.setResizable(true); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { applet.stop(); applet.destroy(); } }); String file = getParameter("alignment"); if(file!=null) { jalview.bin.Cache.setProperty("LAST_DIRECTORY", file); String protocol = "File"; if (file.indexOf("http:") > -1) protocol = "URL"; String format = jalview.io.IdentifyFile.Identify(file, protocol); frame.LoadFile(file, protocol, format); } } public void destroy() { if(applet!=null) applet.stop(); else System.exit(0); frame.setVisible(false); } private static void initLogger() { Logger l = Logger.getLogger("org.apache.axis"); if (Cache.getProperty("logs.Axis.Level")==null) { Cache.setProperty("logs.Axis.Level", Level.INFO.toString()); } l.setLevel(Level.toLevel(Cache.getProperty("logs.Axis.Level"))); ConsoleAppender ap = new ConsoleAppender(new SimpleLayout(),"System.err"); ap.setName("Axis"); l.addAppender(ap); } public static void main(String[] args) { Cache.loadProperties(); jalview.gui.Preferences.initPreferences(); try { initLogger(); } catch (Exception e) { System.err.println("Problems initializing the log4j system\n"); e.printStackTrace(); } try{ UIManager.setLookAndFeel( // "javax.swing.plaf.metal.MetalLookAndFeel" // "javax.swing.plaf.multi.MultiLookAndFeel" UIManager.getSystemLookAndFeelClassName() // UIManager.getCrossPlatformLookAndFeelClassName() // "com.sun.java.swing.plaf.gtk.GTKLookAndFeel" // "com.sun.java.swing.plaf.windows.WindowsLookAndFeel" // "com.sun.java.swing.plaf.motif.MotifLookAndFeel" ); } catch (Exception ex) {} Desktop frame = new Desktop(); frame.setResizable(true); frame.setVisible(true); if(args!=null && args.length>0) { String file=null; if(args[0].equals("-open")) file = args[1]; else file = args[0]; String protocol = "File"; if(file.indexOf("http:")>-1) protocol = "URL"; String format = jalview.io.IdentifyFile.Identify(file, protocol); frame.LoadFile(file, protocol, format); } if(jalview.gui.Preferences.showStartupFile && jalview.gui.Preferences.startupFile!=null) { String file = jalview.gui.Preferences.startupFile; String protocol = "File"; if (file.indexOf("http:") > -1) protocol = "URL"; if(file.endsWith(".jar")) Jalview2XML.LoadJalviewAlign(file); else { String format = jalview.io.IdentifyFile.Identify(file, protocol); frame.LoadFile(file, protocol, format); } } } }