*
* @return a copy of this view's current display settings
*/
- ViewStyleI getViewStyle();
+ public ViewStyleI getViewStyle();
/**
* update the view's display settings with the given style set
*
* @param settingsForView
*/
- void setViewStyle(ViewStyleI settingsForView);
+ public void setViewStyle(ViewStyleI settingsForView);
/**
* Returns a viewport which holds the cDna for this (protein), or vice versa,
*/
void setFollowHighlight(boolean b);
- void applyFeaturesStyle(FeatureSettingsModelI featureSettings);
+ /**
+ * configure the feature renderer with predefined feature settings
+ *
+ * @param featureSettings
+ */
+ public void applyFeaturesStyle(FeatureSettingsModelI featureSettings);
+
+ /**
+ * Apply the given feature settings on top of existing feature settings.
+ */
+ public void mergeFeaturesStyle(FeatureSettingsModelI featureSettings);
/**
* check if current selection group is defined on the view, or is simply a
@Override
void setProteinFontAsCdna(boolean b);
- void setSequenceInformationHashes(List<ProfilesI> info);
-
- List<ProfilesI> getSequenceInformationHashes();
+ void setHmmProfiles(ProfilesI info);
- ProfilesI getSequenceInformationHash(int index);
-
- List<AlignmentAnnotation> getInformationAnnotations();
-
- void setSequenceInformationHash(ProfilesI info, int index);
+ ProfilesI getHmmProfiles();
/**
- * Initiates the information annotation for all uninitiated sequences.
- */
- void initInformation();
-
- /**
- * Updates all information annotations.
+ * Registers and starts a worker thread to calculate Information Content
+ * annotation, if it is not already registered
*
* @param ap
*/
- void updateInformation(AlignmentViewPanel ap);
+ void initInformationWorker(AlignmentViewPanel ap);
boolean isInfoLetterHeight();
abstract TreeModel getCurrentTree();
abstract void setCurrentTree(TreeModel tree);
+
+ /**
+ * @param update
+ * - set the flag for updating structures on next repaint
+ */
+ void setUpdateStructures(boolean update);
+
+ /**
+ *
+ * @return true if structure views will be updated on next refresh
+ */
+ boolean isUpdateStructures();
+
+ /**
+ * check if structure views need to be updated, and clear the flag afterwards.
+ *
+ * @return if an update is needed
+ */
+ boolean needToUpdateStructureViews();
+
+ /**
+ * Adds sequencegroup to the alignment in the view. Also adds a group to the
+ * complement view if one is defined.
+ *
+ * @param sequenceGroup
+ * - a group defined on sequences in the alignment held by the view
+ */
+ void addSequenceGroup(SequenceGroup sequenceGroup);
}