/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
- * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
*/
package jalview.schemes;
-import java.util.*;
-import java.awt.event.*;
-
import jalview.api.AlignViewportI;
import jalview.api.AlignmentViewPanel;
-import jalview.datamodel.*;
-import jalview.schemes.*;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.SequenceGroup;
+
+import java.awt.event.ActionEvent;
+import java.util.Hashtable;
+import java.util.Vector;
/**
* Helps generate the colors for RNA secondary structure. Future: add option to
boolean adjusting = false;
- public RNAHelicesColourChooser(AlignViewportI av, final AlignmentViewPanel ap)
+ public RNAHelicesColourChooser(AlignViewportI av,
+ final AlignmentViewPanel ap)
{
oldcs = av.getGlobalColourScheme();
if (av.getAlignment().getGroups() != null)
{
oldgroupColours = new Hashtable();
- Vector allGroups = ap.getAlignment().getGroups();
- SequenceGroup sg;
- for (int g = 0; g < allGroups.size(); g++)
+ for (SequenceGroup sg : ap.getAlignment().getGroups())
{
- sg = (SequenceGroup) allGroups.get(g);
if (sg.cs != null)
{
oldgroupColours.put(sg, sg.cs);
adjusting = true;
Vector list = new Vector();
int index = 1;
- for (int i = 0; i < av.getAlignment().getAlignmentAnnotation().length; i++)
+ AlignmentAnnotation[] anns = av.getAlignment().getAlignmentAnnotation();
+ if (anns != null)
{
- String label = av.getAlignment().getAlignmentAnnotation()[i].label;
- if (!list.contains(label))
- list.addElement(label);
- else
- list.addElement(label + "_" + (index++));
+ for (int i = 0; i < anns.length; i++)
+ {
+ String label = anns[i].label;
+ if (!list.contains(label))
+ {
+ list.addElement(label);
+ }
+ else
+ {
+ list.addElement(label + "_" + (index++));
+ }
+ }
}
adjusting = false;
{
return;
}
-
- currentAnnotation = av.getAlignment().getAlignmentAnnotation()[0];// annotations.getSelectedIndex()];
-
RNAHelicesColour rhc = null;
- rhc = new RNAHelicesColour(currentAnnotation);
-
- av.setGlobalColourScheme(rhc);
+ rhc = new RNAHelicesColour(av.getAlignment());
- if (av.getAlignment().getGroups() != null)
- {
- Vector allGroups = ap.getAlignment().getGroups();
- SequenceGroup sg;
- for (int g = 0; g < allGroups.size(); g++)
- {
- sg = (SequenceGroup) allGroups.get(g);
-
- if (sg.cs == null)
- {
- continue;
- }
-
- sg.cs = new RNAHelicesColour(currentAnnotation);
-
- }
- }
+ av.setGlobalColourScheme(rhc);
- ap.paintAlignment(false);
+ ap.paintAlignment(true);
}
void reset()
av.setGlobalColourScheme(oldcs);
if (av.getAlignment().getGroups() != null)
{
- Vector allGroups = ap.getAlignment().getGroups();
- SequenceGroup sg;
- for (int g = 0; g < allGroups.size(); g++)
+ for (SequenceGroup sg : ap.getAlignment().getGroups())
{
- sg = (SequenceGroup) allGroups.get(g);
sg.cs = (ColourSchemeI) oldgroupColours.get(sg);
}
}