X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FAnnotationPanel.java;h=e17ce2088f415d45d0c09758cbe0a0061db3238b;hb=ab43013b7e357b84b4abade0dba949668dfb2a0e;hp=587f3ba3f9428c2160e2fb3333905afc2628a0e5;hpb=865a855a4ca87eadb3e5ff284ed32ed307d9c34b;p=jalview.git diff --git a/src/jalview/appletgui/AnnotationPanel.java b/src/jalview/appletgui/AnnotationPanel.java index 587f3ba..e17ce20 100755 --- a/src/jalview/appletgui/AnnotationPanel.java +++ b/src/jalview/appletgui/AnnotationPanel.java @@ -1,19 +1,21 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1) + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1) * Copyright (C) 2014 The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.appletgui; @@ -26,6 +28,7 @@ import java.awt.event.*; import jalview.datamodel.*; import jalview.renderer.AnnotationRenderer; import jalview.renderer.AwtRenderPanelI; +import jalview.util.MessageManager; public class AnnotationPanel extends Panel implements AwtRenderPanelI, AdjustmentListener, ActionListener, MouseListener, @@ -235,6 +238,10 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI, if ((label.length() > 0) && !aa[activeRow].hasText) { aa[activeRow].hasText = true; + if (evt.getActionCommand().equals(STEM)) + { + aa[activeRow].showAllColLabels = true; + } } for (int i = 0; i < av.getColumnSelection().size(); i++) @@ -249,7 +256,9 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI, anot[index] = new Annotation(label, "", type, 0); } - anot[index].secondaryStructure = type; + + anot[index].secondaryStructure = type != 'S' ? type : label + .length() == 0 ? ' ' : label.charAt(0); anot[index].displayCharacter = label; } } @@ -318,7 +327,8 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI, return; } - PopupMenu pop = new PopupMenu("Structure type"); + PopupMenu pop = new PopupMenu( + MessageManager.getString("label.structure_type")); MenuItem item; /* * Just display the needed structure options @@ -619,7 +629,8 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI, g.setColor(Color.black); if (av.validCharWidth) { - g.drawString("Alignment has no annotations", 20, 15); + g.drawString(MessageManager + .getString("label.alignment_has_no_annotations"), 20, 15); } return; @@ -631,10 +642,13 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI, int scrollOffset = 0; - public void setScrollOffset(int value) + public void setScrollOffset(int value, boolean repaint) { scrollOffset = value; - repaint(); + if (repaint) + { + repaint(); + } } @Override @@ -654,16 +668,21 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI, { return imgWidth; } + private int[] bounds = new int[2]; + @Override public int[] getVisibleVRange() { - if (ap!=null && ap.alabels!=null) + if (ap != null && ap.alabels != null) { - int sOffset=-ap.alabels.scrollOffset; - int visHeight = sOffset+ap.annotationPanelHolder.getHeight(); - bounds[0] = sOffset; bounds[1]=visHeight; - return bounds; - } else return null; + int sOffset = -ap.alabels.scrollOffset; + int visHeight = sOffset + ap.annotationPanelHolder.getHeight(); + bounds[0] = sOffset; + bounds[1] = visHeight; + return bounds; + } + else + return null; } }