Use propertyListener for alignment edits
[jalview.git] / src / jalview / appletgui / AlignViewport.java
index 4b4d74d..40d3dd4 100755 (executable)
@@ -74,6 +74,14 @@ public class AlignViewport
   boolean scaleLeftWrapped = true;\r
   boolean scaleRightWrapped = true;\r
 \r
+  public Vector vconsensus;\r
+  AlignmentAnnotation consensus;\r
+  AlignmentAnnotation conservation;\r
+  AlignmentAnnotation quality;\r
+\r
+  public int ConsPercGaps = 25; // JBPNote : This should be a scalable property!\r
+\r
+  private java.beans.PropertyChangeSupport changeSupport = new java.beans.PropertyChangeSupport(this);\r
 \r
   boolean ignoreGapsInConsensusCalculation = false;\r
 \r
@@ -139,12 +147,6 @@ public class AlignViewport
     showSequenceFeatures = b;\r
   }\r
 \r
-  public Vector vconsensus;\r
-  AlignmentAnnotation consensus;\r
-  AlignmentAnnotation conservation;\r
-  AlignmentAnnotation quality;\r
-\r
-  public int ConsPercGaps = 25; // JBPNote : This should be a scalable property!\r
 \r
   public void updateConservation()\r
   {\r
@@ -662,9 +664,44 @@ public class AlignViewport
           ignoreGapsInConsensusCalculation);\r
 \r
     }\r
+  }\r
+\r
+  /**\r
+   * Property change listener for changes in alignment\r
+   *\r
+   * @param listener DOCUMENT ME!\r
+   */\r
+  public void addPropertyChangeListener(\r
+      java.beans.PropertyChangeListener listener)\r
+  {\r
+      changeSupport.addPropertyChangeListener(listener);\r
+  }\r
 \r
+  /**\r
+   * DOCUMENT ME!\r
+   *\r
+   * @param listener DOCUMENT ME!\r
+   */\r
+  public void removePropertyChangeListener(\r
+      java.beans.PropertyChangeListener listener)\r
+  {\r
+      changeSupport.removePropertyChangeListener(listener);\r
   }\r
 \r
+  /**\r
+   * Property change listener for changes in alignment\r
+   *\r
+   * @param prop DOCUMENT ME!\r
+   * @param oldvalue DOCUMENT ME!\r
+   * @param newvalue DOCUMENT ME!\r
+   */\r
+  public void firePropertyChange(String prop, Object oldvalue, Object newvalue)\r
+  {\r
+      changeSupport.firePropertyChange(prop, oldvalue, newvalue);\r
+  }\r
+\r
+\r
+\r
   public boolean getIgnoreGapsConsensus()\r
   {\r
     return ignoreGapsInConsensusCalculation;\r