From: Suzanna L. <su...@us...> - 2003-04-30 01:53:38
|
Update of /cvsroot/gmod/apollo/src/java/apollo/gui In directory sc8-pr-cvs1:/tmp/cvs-serv31356/apollo/gui Modified Files: ApolloFrame.java Config.java Controller.java DataLoader.java Log Message: after much diligent exertion found bug in splitting of tandem repeats. also saving history of GUI input correctly now Index: ApolloFrame.java =================================================================== RCS file: /cvsroot/gmod/apollo/src/java/apollo/gui/ApolloFrame.java,v retrieving revision 1.140 retrieving revision 1.141 diff -C2 -d -r1.140 -r1.141 *** ApolloFrame.java 22 Apr 2003 22:50:49 -0000 1.140 --- ApolloFrame.java 30 Apr 2003 01:53:28 -0000 1.141 *************** *** 683,694 **** if (options[0].equals(result)){ okay = true; ! // This seems to happen when user made some changes, tried to load another dataset, ! // the load failed, and now we've asked again "Save your changes?" and the user ! // said no but we can't get the adapter. ! // LoadUtil was setting adapter to null on failed loads - doesnt do this ! // anymore - DataLoader only sets adapter if it gets a valid one - MG ! //if (getAdapter() == null) { return true; } ! //Annotations are willfully discarded. However, the user ! //may still have outstanding locks. We message the adapter to roll the locks back. rollbackResult = getAdapter().rollbackAnnotations(getCurationSet()); if(rollbackResult = false){ --- 683,697 ---- if (options[0].equals(result)){ okay = true; ! // This seems to happen when user made some changes, ! // tried to load another dataset, ! // the load failed, and now we've asked again "Save your changes?" ! // and the user said no but we can't get the adapter. ! // LoadUtil was setting adapter to null on failed loads - ! // doesnt do this anymore - DataLoader only sets adapter ! // if it gets a valid one - MG ! // if (getAdapter() == null) { return true; } ! // Annotations are willfully discarded. However, the user ! // may still have outstanding locks. We message the adapter ! // to roll the locks back. rollbackResult = getAdapter().rollbackAnnotations(getCurationSet()); if(rollbackResult = false){ *************** *** 703,708 **** }else{ // ! //No annotations were made - so movement should be possible. However, the user ! //may still have outstanding locks. We message the adapter to roll the locks back. if (getAdapter() != null) { rollbackResult = getAdapter().rollbackAnnotations(getCurationSet()); --- 706,712 ---- }else{ // ! // No annotations were made - so movement should be possible. ! // However, the user may still have outstanding locks. ! // We message the adapter to roll the locks back. if (getAdapter() != null) { rollbackResult = getAdapter().rollbackAnnotations(getCurationSet()); Index: Config.java =================================================================== RCS file: /cvsroot/gmod/apollo/src/java/apollo/gui/Config.java,v retrieving revision 1.116 retrieving revision 1.117 diff -C2 -d -r1.116 -r1.117 *** Config.java 25 Apr 2003 18:17:45 -0000 1.116 --- Config.java 30 Apr 2003 01:53:29 -0000 1.117 *************** *** 115,119 **** static void setDataAdapterType(String adapterType) { if (!adapterToStyle.containsKey(adapterType)) { ! System.out.println("Failed to set style "+adapterType+"--couldn't find style file"); return; //?? } --- 115,120 ---- static void setDataAdapterType(String adapterType) { if (!adapterToStyle.containsKey(adapterType)) { ! System.out.println("Failed to set style "+adapterType+ ! "--couldn't find style file"); return; //?? } *************** *** 126,131 **** static void setStyle(Style s) { ! // second parameter is whether to update the style hashtable with this new style ! setStyle(s, false); } --- 127,133 ---- static void setStyle(Style s) { ! // second parameter is whether to update ! // the style hashtable with this new style ! setStyle(s, false); } *************** *** 137,142 **** if (updateStyleHash) { filenameToStyle.put(styleFile, s); ! // Now we have to go through the hashtable and find all the keys whose value ! // is this style... Iterator keys = adapterToStyle.keySet().iterator(); while (keys.hasNext()) { --- 139,144 ---- if (updateStyleHash) { filenameToStyle.put(styleFile, s); ! // Now we have to go through the hashtable and find all ! // the keys whose value is this style... Iterator keys = adapterToStyle.keySet().iterator(); while (keys.hasNext()) { *************** *** 151,156 **** /** Data adapter has changed - fetch the matching style */ public static void newDataAdapter(DataAdapter da) { ! setDataAdapterType(da.getClass().getName()); // Sets global variable "style" ! System.out.println("Set style to " + da.getClass().getName() + "; style file is " + style.getFileName()); } --- 153,160 ---- /** Data adapter has changed - fetch the matching style */ public static void newDataAdapter(DataAdapter da) { ! // Sets global variable "style" ! setDataAdapterType(da.getClass().getName()); ! /* System.out.println("Set style to " + da.getClass().getName() + ! "; style file is " + style.getFileName()); */ } *************** *** 623,627 **** } else if (key.equalsIgnoreCase("DataAdapterInstall")) { // a mandatory data adapter style is in value2 - // System.out.println("Data adapter install: "+value); installDataAdapter(value,value2); setDataAdapterType(value); --- 627,630 ---- *************** *** 854,858 **** // set them now. setDefaultHistoryAndAutosaveLocs(); - // System.out.println("Successfuly initialized"); } } --- 857,860 ---- Index: Controller.java =================================================================== RCS file: /cvsroot/gmod/apollo/src/java/apollo/gui/Controller.java,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** Controller.java 7 Mar 2003 16:09:06 -0000 1.36 --- Controller.java 30 Apr 2003 01:53:29 -0000 1.37 *************** *** 28,31 **** --- 28,34 ---- Hashtable windowHash = new Hashtable(); boolean annotations_changed = false; + // SUZ This is to indicate whether this is a first time ever + // or a curation set has previously been loaded + boolean curation_loaded = false; public Controller() { *************** *** 115,120 **** --- 118,134 ---- } + public boolean isCurationSetLoaded () { + return curation_loaded; + } + public void setAnnotationChanged (boolean un_saved) { annotations_changed = un_saved; + } + + public void curationSetIsLoaded (boolean loaded) { + // never let this be set to false, once anything has + // loaded then this is true + if (loaded) + curation_loaded = loaded; } Index: DataLoader.java =================================================================== RCS file: /cvsroot/gmod/apollo/src/java/apollo/gui/DataLoader.java,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** DataLoader.java 19 Feb 2003 23:40:41 -0000 1.36 --- DataLoader.java 30 Apr 2003 01:53:31 -0000 1.37 *************** *** 40,49 **** Properties props, ProgressListener listener) ! throws apollo.dataadapter.DataAdapterException { try { DataAdapterRegistry ! adapterRegistry ! = Config.getAdapterRegistry ! (); ApolloDataAdapterI datasource = (ApolloDataAdapterI) adapterRegistry.getAdapter(props.getProperty("adapter")); --- 40,47 ---- Properties props, ProgressListener listener) ! throws apollo.dataadapter.DataAdapterException { try { DataAdapterRegistry ! adapterRegistry = Config.getAdapterRegistry(); ApolloDataAdapterI datasource = (ApolloDataAdapterI) adapterRegistry.getAdapter(props.getProperty("adapter")); *************** *** 56,60 **** System.out.println(" "+names[i]); } ! } else { // clean up old curation set (remove as listener) if (curation_set!=null) --- 54,59 ---- System.out.println(" "+names[i]); } ! } ! else { // clean up old curation set (remove as listener) if (curation_set!=null) *************** *** 65,69 **** curation_set = getData(frame, datasource, listener); } ! } catch (Exception ie) { throw new apollo.dataadapter.DataAdapterException(ie.getMessage(), ie); } --- 64,69 ---- curation_set = getData(frame, datasource, listener); } ! } ! catch (Exception ie) { throw new apollo.dataadapter.DataAdapterException(ie.getMessage(), ie); } *************** *** 99,105 **** if (args.length >= 2) { DataAdapterRegistry ! adapterRegistry ! = Config.getAdapterRegistry ! (); try { if (args[0].equals("-f") || args[0].equals("-g")) { --- 99,103 ---- if (args.length >= 2) { DataAdapterRegistry ! adapterRegistry = Config.getAdapterRegistry(); try { if (args[0].equals("-f") || args[0].equals("-g")) { *************** *** 187,247 **** // were being thrown on Alphas. Runnable chooserRun = new Runnable() { ! public void run() { ! ApolloAdapterChooser chooser ! // Adding ApolloFrame first arg in an attempt to keep this window always on top ! = new ApolloAdapterChooser((ApolloFrame)frame, ! Config.getAdapterRegistry(), ! ApolloDataAdapterI.OP_READ_DATA, ! "Apollo: load data", ! null, ! true); // last arg is "failfast" ! chooser.setBackground(Config.getDataLoaderBackgroundColor()); ! chooser.setForeground(Config.getDataLoaderLabelColor()); ! ! String historyFile = Config.getAdapterHistoryFile(); ! if (historyFile != null && historyFile.length() > 0) ! chooser.setPropertiesFile(new File(historyFile)); ! chooser.show(); ! chooser.invalidate(); ! // DataAdapterChooser ignores setLocation, for some reason ! // chooser.setLocation(100,10); ! chooser.validate(); ! if (!chooser.isCancelled() && !chooser.isFailure()) { ! DataAdapter adapter = chooser.getDataAdapter(); ! if (adapter instanceof ApolloDataAdapterI) { ! data_adapter = (ApolloDataAdapterI) adapter; ! Config.setDataAdapterType(data_adapter.getClass().getName()); ! // frame can be null on first load ! //frame.setAdapter(data_adapter); ! } ! return_value = (CurationSet) chooser.getOutput(); ! } else if (chooser.isFailure()) { ! org.bdgp.io.DataAdapterException ex = chooser.getException(); ! String message = ex.getMessage(); ! JOptionPane msg = new JOptionPane(); ! JFrame parent = (frame instanceof JFrame ? ! (JFrame) frame : null); ! msg.showMessageDialog(parent, ! message, ! "Read error", ! JOptionPane.WARNING_MESSAGE); ! return_value = null; ! } else if (chooser.isCancelled()) { ! if (quitOnCancel) { ! System.out.println ("Nothing loaded so quitting"); ! System.exit(0); ! } ! return_value = null; ! } ! // This dispose is critical. Without it the DataAdapterChooser ! // lingers as its a top level window(JDialog) and it keeps ! // a reference to the curation set - major mem leak. ! chooser.dispose(); ! chooser = null; ! } ! } ! ; // end of Runnable chooserRun.run(); if (return_value == null) --- 185,245 ---- // were being thrown on Alphas. Runnable chooserRun = new Runnable() { ! public void run() { ! ApolloAdapterChooser chooser ! // Adding ApolloFrame first arg in an attempt ! // to keep this window always on top ! = new ApolloAdapterChooser((ApolloFrame)frame, ! Config.getAdapterRegistry(), ! ApolloDataAdapterI.OP_READ_DATA, ! "Apollo: load data", ! null, ! // last arg is "failfast" ! true); ! chooser.setBackground(Config.getDataLoaderBackgroundColor()); ! chooser.setForeground(Config.getDataLoaderLabelColor()); ! String historyFile = Config.getAdapterHistoryFile(); ! if (historyFile != null && historyFile.length() > 0) ! chooser.setPropertiesFile(new File(historyFile)); ! chooser.show(); ! chooser.invalidate(); ! // DataAdapterChooser ignores setLocation, for some reason ! // chooser.setLocation(100,10); ! chooser.validate(); ! if (!chooser.isCancelled() && !chooser.isFailure()) { ! DataAdapter adapter = chooser.getDataAdapter(); ! if (adapter instanceof ApolloDataAdapterI) { ! data_adapter = (ApolloDataAdapterI) adapter; ! Config.setDataAdapterType(data_adapter.getClass().getName()); ! } ! return_value = (CurationSet) chooser.getOutput(); ! } ! else if (chooser.isFailure()) { ! org.bdgp.io.DataAdapterException ex = chooser.getException(); ! String message = ex.getMessage(); ! JOptionPane msg = new JOptionPane(); ! JFrame parent = (frame instanceof JFrame ? ! (JFrame) frame : null); ! msg.showMessageDialog(parent, ! message, ! "Read error", ! JOptionPane.WARNING_MESSAGE); ! return_value = null; ! } else if (chooser.isCancelled()) { ! if (quitOnCancel) { ! System.out.println ("Nothing loaded so quitting"); ! System.exit(0); ! } ! return_value = null; ! } + // This dispose is critical. Without it the DataAdapterChooser + // lingers as its a top level window(JDialog) and it keeps + // a reference to the curation set - major mem leak. + chooser.dispose(); + chooser = null; + } + } + ; // end of Runnable chooserRun.run(); if (return_value == null) *************** *** 253,257 **** // Do gc here to stop initial pause on first scroll System.gc(); ! } else { // datasource is nonnull data_adapter = datasource; Config.setDataAdapterType(data_adapter.getClass().getName()); --- 251,256 ---- // Do gc here to stop initial pause on first scroll System.gc(); ! } ! else { // datasource is nonnull data_adapter = datasource; Config.setDataAdapterType(data_adapter.getClass().getName()); *************** *** 264,268 **** try { out = datasource.getCurationSet(); ! } catch (apollo.dataadapter.DataAdapterException e) { JOptionPane msg = new JOptionPane(); JFrame parent = (frame instanceof JFrame ? --- 263,268 ---- try { out = datasource.getCurationSet(); ! } ! catch (apollo.dataadapter.DataAdapterException e) { JOptionPane msg = new JOptionPane(); JFrame parent = (frame instanceof JFrame ? *************** *** 279,282 **** --- 279,283 ---- // System.out.println("Data read time = " + // (curtime - lasttime) + "ms."); + Config.getController().curationSetIsLoaded (out != null); return out; } |