package jalview.gui; import jalview.jbgui.*; import jalview.schemes.*; import jalview.io.*; import jalview.bin.Cache; import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.*; public class Preferences extends GPreferences { static boolean preferencesLoaded=false; public static boolean showFullscreen=false; public static boolean showFullId=true; public static boolean showAnnotation=true; public static boolean showConservation=true; public static boolean showQuality=true; public static boolean showIdentity=true; public static String fontName; public static String fontSize; public static String fontStyle; public static char gapSymbol='-'; public static String defaultColour=null; public static boolean showStartupFile=true; public static String startupFile = "http://www.compbio.dundee.ac.uk/~andrew/jalviewTEST/fasta"; JInternalFrame frame; public static void initPreferences() { String string = Cache.getProperty("SHOW_FULL_ID"); if(string!=null) showFullId = Boolean.valueOf(string).booleanValue(); string = Cache.getProperty("SHOW_FULLSCREEN"); if(string!=null) showFullscreen = Boolean.valueOf(string).booleanValue(); string = Cache.getProperty("SHOW_ANNOTATIONS"); if(string!=null) showAnnotation = Boolean.valueOf(string).booleanValue(); string = Cache.getProperty("SHOW_CONSERVATION"); if(string!=null) showConservation = Boolean.valueOf(string).booleanValue(); string = Cache.getProperty("SHOW_QUALITY"); if(string!=null) showQuality = Boolean.valueOf(string).booleanValue(); string = Cache.getProperty("SHOW_IDENTITY"); if(string!=null) showIdentity = Boolean.valueOf(string).booleanValue(); string = Cache.getProperty("GAP_SYMBOL"); if(string!=null) gapSymbol = string.charAt(0); string = Cache.getProperty("SHOW_FULL_ID"); if(string!=null) showFullId = Boolean.valueOf(string).booleanValue(); fontName = Cache.getProperty("FONT_NAME"); fontStyle = Cache.getProperty("FONT_STYLE"); fontSize = Cache.getProperty("FONT_SIZE"); string = Cache.getProperty("DEFAULT_COLOUR"); if(string!=null) defaultColour = string; string = Cache.getProperty("STARTUP_FILE"); if(string!=null) startupFile = string; string = Cache.getProperty("SHOW_STARTUP_FILE"); if(string!=null) showStartupFile = Boolean.valueOf(string).booleanValue(); preferencesLoaded = true; } public Preferences() { if(!preferencesLoaded) initPreferences(); frame = new JInternalFrame(); frame.setContentPane(this); Desktop.addInternalFrame(frame, "Preferences", 480,390 ); fullID.setSelected(showFullId); String string = Cache.getProperty("SHOW_FULLSCREEN"); boolean value = false; if(string!=null) value = Boolean.valueOf(string).booleanValue(); fullScreen.setSelected(value); annotations.setSelected(showAnnotation); conservation.setEnabled(showAnnotation); quality.setEnabled(showAnnotation); identity.setEnabled(showAnnotation); conservation.setSelected(showConservation); quality.setSelected(showQuality); identity.setSelected(showIdentity); for(int i=0; i<12; i++) colour.addItem( ColourSchemeProperty.getColourName(i) ); string = Cache.getProperty("DEFAULT_COLOUR"); if(string!=null) colour.setSelectedItem( string ); else colour.setSelectedIndex( 11 ); String fonts[] = java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames(); for(int i=0; i