X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FPCAPanel.java;h=6638718281828c80a9164d0008fa1428077b3145;hb=bea1d9b563d2fea018de3dbde9112dd59149126e;hp=96a8b0df5f717e2d572e96b3e011028e3e164781;hpb=17e4ea278bc9a5fb280db1252ce78b7a295215f5;p=jalview.git diff --git a/src/jalview/gui/PCAPanel.java b/src/jalview/gui/PCAPanel.java index 96a8b0d..6638718 100644 --- a/src/jalview/gui/PCAPanel.java +++ b/src/jalview/gui/PCAPanel.java @@ -24,7 +24,7 @@ import jalview.analysis.scoremodels.ScoreModels; import jalview.api.AlignViewportI; import jalview.api.analysis.ScoreModelI; import jalview.api.analysis.SimilarityParamsI; -import jalview.bin.Cache; +import jalview.bin.Console; import jalview.datamodel.Alignment; import jalview.datamodel.AlignmentI; import jalview.datamodel.AlignmentView; @@ -36,6 +36,7 @@ import jalview.jbgui.GPCAPanel; import jalview.math.RotatableMatrix.Axis; import jalview.util.ImageMaker; import jalview.util.MessageManager; +import jalview.util.Platform; import jalview.viewmodel.AlignmentViewport; import jalview.viewmodel.PCAModel; @@ -122,8 +123,8 @@ public class PCAPanel extends GPCAPanel ScoreModelI scoreModel = ScoreModels.getInstance() .getScoreModel(modelName, ap); - setPcaModel(new PCAModel(seqstrings, seqs, nucleotide, scoreModel, - params)); + setPcaModel( + new PCAModel(seqstrings, seqs, nucleotide, scoreModel, params)); PaintRefresher.Register(this, av.getSequenceSetId()); setRotatableCanvas(new RotatableCanvas(alignPanel)); @@ -140,6 +141,12 @@ public class PCAPanel extends GPCAPanel protected void close_actionPerformed() { setPcaModel(null); + if (this.rc != null) + { + this.rc.sequencePoints = null; + this.rc.setAxisEndPoints(null); + this.rc = null; + } } @Override @@ -200,10 +207,7 @@ public class PCAPanel extends GPCAPanel repaint(); if (getParent() == null) { - Desktop.addInternalFrame(this, - MessageManager.formatMessage("label.calc_title", "PCA", - getPcaModel().getScoreModelName()), - 475, 450); + addToDesktop(this, getPcaModel().getScoreModelName()); this.setMinimumSize(new Dimension(MIN_WIDTH, MIN_HEIGHT)); } working = false; @@ -291,7 +295,7 @@ public class PCAPanel extends GPCAPanel // JAL-2647 disabled after load from project (until save to project done) if (getPcaModel().getInputData() == null) { - Cache.log.info( + Console.info( "Unexpected call to originalSeqData_actionPerformed - should have hidden this menu action."); return; } @@ -420,9 +424,9 @@ public class PCAPanel extends GPCAPanel @Override public void exportImage(Graphics g) throws Exception { - RotatableCanvas canvas = getRotatableCanvas(); - canvas.drawBackground(g); - canvas.drawScene(g); + RotatableCanvas canvas = getRotatableCanvas(); + canvas.drawBackground(g); + canvas.drawScene(g); if (canvas.drawAxes) { canvas.drawAxes(g); @@ -609,13 +613,26 @@ public class PCAPanel extends GPCAPanel // // setMenusForViewport(); // validate(); } + + @Override + public void addProgressBar(long id, String message) + { + progressBar.addProgressBar(id, message); + } + + @Override + public void removeProgressBar(long id) + { + progressBar.removeProgressBar(id); + } @Override public void registerHandler(final long id, final IProgressIndicatorHandler handler) { progressBar.registerHandler(id, handler); - // if (progressBarHandlers == null || !progressBars.contains(Long.valueOf(id))) + // if (progressBarHandlers == null || + // !progressBars.contains(Long.valueOf(id))) // { // throw new // Error(MessageManager.getString("error.call_setprogressbar_before_registering_handler")); @@ -762,4 +779,12 @@ public class PCAPanel extends GPCAPanel getRotatableCanvas().ap = panel; PaintRefresher.Register(PCAPanel.this, panel.av.getSequenceSetId()); } + + public static void addToDesktop(PCAPanel panel, String modelName) + { + Dimension dim = Platform.getDimIfEmbedded(panel, 475, 450); + Desktop.addInternalFrame(panel, MessageManager.formatMessage( + "label.calc_title", "PCA", modelName), dim.width, + dim.height); + } }