From: amwaterhouse Date: Wed, 17 May 2006 16:24:32 +0000 (+0000) Subject: Restrict annotation panel to 50% window on load X-Git-Tag: Release_2_1~402 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=51578ba4c17d34c857479d34d71f3bfb51cc029d;p=jalview.git Restrict annotation panel to 50% window on load --- diff --git a/src/jalview/gui/AlignFrame.java b/src/jalview/gui/AlignFrame.java index 359b675..9751f46 100755 --- a/src/jalview/gui/AlignFrame.java +++ b/src/jalview/gui/AlignFrame.java @@ -2807,19 +2807,10 @@ public void drop(DropTargetDropEvent evt) this.paste(false); } } - - if (isAnnotation) + else { - int height = alignPanel.annotationPanel.adjustPanelHeight(); - alignPanel.annotationScroller.setPreferredSize( - new Dimension(alignPanel.annotationScroller.getWidth(), - height)); - - alignPanel.annotationSpaceFillerHolder.setPreferredSize(new Dimension( - alignPanel.annotationSpaceFillerHolder.getWidth(), - height)); - - alignPanel.addNotify(); + // (isAnnotation) + alignPanel.adjustAnnotationHeight(); } }catch(Exception ex) diff --git a/src/jalview/gui/AlignmentPanel.java b/src/jalview/gui/AlignmentPanel.java index 6d4e226..2840283 100755 --- a/src/jalview/gui/AlignmentPanel.java +++ b/src/jalview/gui/AlignmentPanel.java @@ -92,11 +92,8 @@ public class AlignmentPanel extends GAlignmentPanel setScrollValues(0, 0); - annotationPanel.adjustPanelHeight(); - annotationSpaceFillerHolder.setPreferredSize(annotationPanel. - getPreferredSize()); - annotationScroller.setPreferredSize(annotationPanel. - getPreferredSize()); + adjustAnnotationHeight(); + setAnnotationVisible(av.getShowAnnotation()); hscroll.addAdjustmentListener(this); @@ -418,6 +415,37 @@ public class AlignmentPanel extends GAlignmentPanel repaint(); } + public void adjustAnnotationHeight() + { + javax.swing.SwingUtilities.invokeLater(new Runnable() + { + public void run() + { + while(alignFrame.getHeight()==0) + { + Thread.yield(); + } + + int height = annotationPanel.adjustPanelHeight(); + + if (height > alignFrame.getHeight() / 2) + { + height = alignFrame.getHeight() / 2; + } + + annotationScroller.setPreferredSize( + new Dimension(annotationScroller.getWidth(), + height)); + + annotationSpaceFillerHolder.setPreferredSize(new Dimension( + annotationSpaceFillerHolder.getWidth(), + height)); + + annotationPanel.repaint(); + } + }); + } + /** * DOCUMENT ME! * diff --git a/src/jalview/gui/Jalview2XML.java b/src/jalview/gui/Jalview2XML.java index f34a764..8ac5e8c 100755 --- a/src/jalview/gui/Jalview2XML.java +++ b/src/jalview/gui/Jalview2XML.java @@ -934,22 +934,27 @@ public class Jalview2XML Viewport view = views[0]; // DEAL WITH MULTIPLE VIEWPORTS LATER AlignFrame af = new AlignFrame(al); - int hSize = al.getAlignmentAnnotation().length; - for (int h = 0; h < hSize; h++) + if(hideConsensus || hideQuality || hideConservation) { - if ( - (hideConsensus && - al.getAlignmentAnnotation()[h].label.equals("Consensus")) - || - (hideQuality && al.getAlignmentAnnotation()[h].label.equals("Quality")) - || - (hideConservation && - al.getAlignmentAnnotation()[h].label.equals("Conservation"))) + int hSize = al.getAlignmentAnnotation().length; + for (int h = 0; h < hSize; h++) { - al.deleteAnnotation(al.getAlignmentAnnotation()[h]); - hSize --; - h--; + if ( + (hideConsensus && + al.getAlignmentAnnotation()[h].label.equals("Consensus")) + || + (hideQuality && + al.getAlignmentAnnotation()[h].label.equals("Quality")) + || + (hideConservation && + al.getAlignmentAnnotation()[h].label.equals("Conservation"))) + { + al.deleteAnnotation(al.getAlignmentAnnotation()[h]); + hSize--; + h--; + } } + af.alignPanel.adjustAnnotationHeight(); } af.setBounds(view.getXpos(), view.getYpos(), view.getWidth(),