JAL-1517 source formatting
[jalview.git] / src / jalview / api / AlignViewControllerI.java
index fc63fd6..fadc09e 100644 (file)
@@ -1,12 +1,34 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * 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.
+ *  
+ * 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/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.api;
 
 /**
  * prototype abstract controller for a Jalview alignment view
+ * 
  * @author jimp
  * 
- * All operations should return true if the view has changed as a result of the operation
+ *         All operations should return true if the view has changed as a result
+ *         of the operation
  * @param <ViewportI>
- *
+ * 
  */
 public interface AlignViewControllerI<ViewportI>
 {
@@ -19,6 +41,24 @@ public interface AlignViewControllerI<ViewportI>
 
   public boolean deleteGroups();
 
-  public void setViewportAndAlignmentPanel(AlignViewportI viewport, AlignmentViewPanel alignPanel);
+  public void setViewportAndAlignmentPanel(AlignViewportI viewport,
+          AlignmentViewPanel alignPanel);
+
+  /**
+   * Mark columns in the current column selection according to positions of
+   * sequence features
+   * 
+   * @param invert
+   *          - when set, mark all but columns containing given type
+   * @param extendCurrent
+   *          - when set, do not clear existing column selection
+   * @param toggle
+   *          - rather than explicitly set, toggle selection state
+   * @param featureType
+   *          - feature type string
+   * @return true if operation affected state
+   */
+  boolean markColumnsContainingFeatures(boolean invert,
+          boolean extendCurrent, boolean clearColumns, String featureType);
 
 }