X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FDesktop.java;h=0e1811dd527ab824b9d849060d083d8d0c260c6f;hb=06faf90ba52bfcdc4547a68cb3df86c14a5c6e05;hp=5f45dc1fbff0e07f175b3bf516a2d4992d2f7393;hpb=f27f81a74bbe1be141d23df8aba578515e3179a2;p=jalview.git diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index 5f45dc1..0e1811d 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -20,6 +20,22 @@ */ package jalview.gui; +import jalview.api.AlignViewportI; +import jalview.api.AlignmentViewPanel; +import jalview.bin.Cache; +import jalview.io.FileLoader; +import jalview.io.FormatAdapter; +import jalview.io.IdentifyFile; +import jalview.io.JalviewFileChooser; +import jalview.io.JalviewFileView; +import jalview.jbgui.GSplitFrame; +import jalview.jbgui.GStructureViewer; +import jalview.structure.StructureSelectionManager; +import jalview.util.ImageMaker; +import jalview.util.MessageManager; +import jalview.viewmodel.AlignmentViewport; +import jalview.ws.params.ParamManager; + import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; @@ -84,22 +100,6 @@ import javax.swing.event.HyperlinkEvent.EventType; import javax.swing.event.MenuEvent; import javax.swing.event.MenuListener; -import jalview.api.AlignViewportI; -import jalview.api.AlignmentViewPanel; -import jalview.bin.Cache; -import jalview.io.FileLoader; -import jalview.io.FormatAdapter; -import jalview.io.IdentifyFile; -import jalview.io.JalviewFileChooser; -import jalview.io.JalviewFileView; -import jalview.jbgui.GSplitFrame; -import jalview.jbgui.GStructureViewer; -import jalview.structure.StructureSelectionManager; -import jalview.util.ImageMaker; -import jalview.util.MessageManager; -import jalview.viewmodel.AlignmentViewport; -import jalview.ws.params.ParamManager; - /** * Jalview Desktop * @@ -169,6 +169,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements private static final int THREE = 3; + private static AlignFrame currentAlignFrame; + public static jalview.ws.jws1.Discoverer discoverer; public static Object[] jalviewClipboard; @@ -263,10 +265,10 @@ public class Desktop extends jalview.jbgui.GDesktop implements delegate.openFrame(f); } + @Override public void resizeFrame(JComponent f, int newX, int newY, int newWidth, int newHeight) { - Rectangle b = desktop.getBounds(); if (newY < 0) { newY = 0; @@ -1022,6 +1024,13 @@ public class Desktop extends jalview.jbgui.GDesktop implements { new FileLoader().LoadFile(viewport, choice, FormatAdapter.FILE, format); + // viewport.setShowSequenceFeatures(JSONFile.isSeqFeaturesEnabled()); + // AlignFrame af = viewport.getAlignPanel().alignFrame; + // if (af != null) + // { + // af.changeColour(JSONFile.getColourScheme()); + // af.setMenusForViewport(); + // } } else { @@ -1124,7 +1133,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements public void inputTextboxMenuItem_actionPerformed(AlignViewport viewport) { CutAndPasteTransfer cap = new CutAndPasteTransfer(); - cap.setForInput(viewport); +// cap.setForInput(viewport.getAlignPanel()); + cap.setForInput(null); Desktop.addInternalFrame(cap, MessageManager.getString("label.cut_paste_alignmen_file"), true, 600, 500); @@ -1157,7 +1167,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements { dialogExecutor.shutdownNow(); } - + closeAll_actionPerformed(null); System.exit(0); } @@ -1291,7 +1301,17 @@ public class Desktop extends jalview.jbgui.GDesktop implements if (v_client != null) { // TODO clear binding to vamsas document objects on close_all + } + /* + * reset state of singleton objects as appropriate (clear down session state + * when all windows are closed) + */ + StructureSelectionManager ssm = StructureSelectionManager + .getStructureSelectionManager(this); + if (ssm != null) + { + ssm.resetAll(); } } @@ -1476,9 +1496,6 @@ public class Desktop extends jalview.jbgui.GDesktop implements final java.io.File choice = chooser.getSelectedFile(); setProjectFile(choice); - // TODO or move inside the new Thread? - saveChimeraSessions(choice.getAbsolutePath()); - new Thread(new Runnable() { public void run() @@ -1516,32 +1533,6 @@ public class Desktop extends jalview.jbgui.GDesktop implements } } - /** - * Request any open, linked Chimera sessions to save their state. - * - * @param jalviewProjectFilename - * the filename of the Jalview project; Chimera session files should - * be given distinct, but obviously related, names. - */ - public void saveChimeraSessions(String jalviewProjectFilename) - { - int i = 0; - for (JInternalFrame frame : getAllFrames()) - { - if (frame instanceof ChimeraViewFrame) - { - /* - * Construct a filename for the Chimera session by append _chimera.py - * to the Jalview project file name. - */ - String chimeraPath = jalviewProjectFilename + "_chimera_" + i - + ".py"; - ((ChimeraViewFrame) frame).saveSession(chimeraPath); - i++; - } - } - } - private void setProjectFile(File choice) { this.projectFile = choice; @@ -2306,6 +2297,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements } } + @Override public void paintComponent(Graphics g) { if (showMemoryUsage && g != null && df != null) @@ -2513,7 +2505,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements public void registerHandler(final long id, final IProgressIndicatorHandler handler) { - if (progressBarHandlers == null || !progressBars.contains(new Long(id))) + if (progressBarHandlers == null + || !progressBars.containsKey(new Long(id))) { throw new Error( MessageManager @@ -2635,28 +2628,6 @@ public class Desktop extends jalview.jbgui.GDesktop implements (t0 = new Thread(discoverer)).start(); } - // ENFIN services are EOLed as of Jalview 2.8.1 release - if (false) - { - try - { - if (Cache.getDefault("SHOW_ENFIN_SERVICES", true)) - { - // EnfinEnvision web service menu entries are rebuild every time the - // menu is shown, so no changeSupport events are needed. - jalview.ws.EnfinEnvision2OneWay.getInstance(); - (t1 = new Thread(jalview.ws.EnfinEnvision2OneWay.getInstance())) - .start(); - } - } catch (Exception e) - { - Cache.log - .info("Exception when trying to launch Envision2 workflow discovery.", - e); - Cache.log.info(e.getStackTrace()); - } - } - if (Cache.getDefault("SHOW_JWS2_SERVICES", true)) { if (jalview.ws.jws2.Jws2Discoverer.getDiscoverer().isRunning()) @@ -3073,4 +3044,16 @@ public class Desktop extends jalview.jbgui.GDesktop implements myTopFrame.setDisplayedView(myTopFrame.alignPanel); } + + // public static AlignFrame getCurrentAlignFrame() + // { + // return currentAlignFrame; + // } + // + // public static void setCurrentAlignFrame(AlignFrame currentAlignFrame) + // { + // Desktop.currentAlignFrame = currentAlignFrame; + // } + + }