import jalview.api.AlignmentViewPanel;
import jalview.datamodel.PDBEntry;
import jalview.datamodel.SequenceI;
-import jalview.schemes.ColourSchemeI;
import jalview.structures.models.AAStructureBindingModel;
public interface JalviewStructureDisplayI
void closeViewer(boolean closeExternalViewer);
/**
- * apply a colourscheme to the structures in the viewer
- *
- * @param colourScheme
+ * Check if the external viewer is still running
*/
- void setJalviewColourScheme(ColourSchemeI colourScheme);
+ boolean stillRunning();
/**
*
*/
void raiseViewer();
+ AlignmentViewPanel getAlignmentPanel();
+
+ /**
+ * Answers true if the given alignment view is used to colour structures by
+ * sequence, false if not
+ *
+ * @param ap
+ * @return
+ */
+ boolean isUsedForColourBy(AlignmentViewPanel ap);
+
+ /**
+ * If implemented, shows a command line console in the structure viewer
+ *
+ * @param show
+ * true to show, false to hide
+ */
+ void showConsole(boolean show);
+
+ /**
+ * Remove references to the given alignment view for this structure viewer
+ *
+ * @param avp
+ */
+ void removeAlignmentPanel(AlignmentViewPanel avp);
+
+ /**
+ * Updates the progress bar if there is one. Call stopProgressBar with the
+ * returned handle to remove the message.
+ *
+ * @param msg
+ * @return handle
+ */
+ long startProgressBar(String msg);
+
+ /**
+ * Ends the progress bar with the specified handle, leaving a message (if not
+ * null) on the status bar
+ *
+ * @param msg
+ * @param handle
+ */
+ void stopProgressBar(String msg, long handle);
+
+ /**
+ *
+ * @return true if the actions menu is shown for this viewer
+ */
+ boolean hasViewerActionsMenu();
+
}