schrodinger.ui.qt.appframework2.markers module

class schrodinger.ui.qt.appframework2.markers.MarkerMixin(*args, **kwargs)

Bases: object

A mixin for adding markers and controlling their visibility. Note that this Mixin requires the maestro_callback.MaestroCallbackMixin.

Variables:
  • _markers (dict) – A dictionary containing all markers._BaseMarker derived markers associated with this panel. Keys are generated via _canonicalizeAtomOrder and _genMarkerHash.
  • _marked_eid_lengths (dict) – A dictionary of {entry id: number of atoms in the entry}. This dictionary is used to delete markers if the number of atoms in a marked entry changes.
  • MARKER_ICONS (schrodinger.maestro.markers.Icons) – An object containing constants for all available marker icons
  • _multi_atom_markers (list) – A list containing all markers.Marker markers associated with this panel.
__init__(*args, **kwargs)

Initialize self. See help(type(self)) for accurate signature.

showEvent(event)

Re-show all panel markers when the panel is re-shown.

show()

Re-show all panel markers when the panel is re-shown. This separate method is needed for QDialog instances.

hideEvent(event)
closeEvent(event)

Hide all markers when the panel is closed.

addJaguarMarker(atoms, color=None, icon=None, text='', alt_color=None, highlight=False)

Add a marker to the specified atom(s)

Parameters:
  • atoms (list or schrodinger.structure._StructureAtom) – The atom or list of atoms to mark. A list may contain between one and four atoms (inclusive).
  • color (tuple, str, int, or schrodinger.structutils.color) – The color of the marker and icon. May be an RGB tuple, color name, color index, or schrodinger.structutils.color instance. If not given, white will be used.
  • icon (int) – The icon to draw next to the marker. Should be one the self.MARKER_ICONS constants. If not given, no icon will be drawn.
  • text (str) – The text to display next to the marker. If not given, no text will be displayed. Note that this argument will be ignored when marking a single atom.
  • alt_color (tuple, str, int, or schrodinger.structutils.color) – The alternate marker color. This color is always used for text, and is used for the marker and icon when highlight is True. If not given, color will be used.
  • highlight (bool) – Whether the marker should be highlighted. A highlighted marker is indicated with thicker lines and is colored using alt_color instead of color.
Returns:

The newly created marker

Return type:

schrodinger.maestro.markers._BaseMarker

Raises:

ValueError – If a marker already exists for the specified atoms

Note:

Either an icon or text may be displayed on a marker, but not both. If both are given, only the text will be shown.

addMarker(atoms, color=(1.0, 1.0, 1.0), group_name=None)

Generates a set of simple, dot-styled markers for a group of atoms.

Parameters:
  • atoms (list or schrodinger.structure._StructureAtom) – List of atoms to be marked
  • color (tuple of 3 floats) – The amount of red, green and blue to use, each ranging from 0.0 to 1.0. Default is white (1., 1., 1.).

@group_name: Optional string to set as the name of this group of markers in Maestro. If not set, a unique identifier will be generated.

addMarkerFromAsl(asl, color=(1.0, 1.0, 1.0), group_name=None)

Generates a set of simple, dot-styled markers for group of Workspace atoms that match the given ASL. Same atoms continue to be marked even if the Workspace is later modified such that ASL matching changes.

Parameters:
  • asl – ASL for the atoms to mark.
  • color (tuple of 3 floats) – The amount of red, green and blue to use, each ranging from 0.0 to 1.0. Default is white (1., 1., 1.).

@group_name: Optional string to set as the name of this group of markers in Maestro. If not set, a unique identifier will be generated.

Returns:Marker object
Return type:markers.Marker
getJaguarMarker(atoms)

Retrieve a marker for the specified atom(s)

Parameters:atoms (list or schrodinger.structure._StructureAtom) – The atom or list of atoms to retrieve the marker for. A list may contain between one and four atoms (inclusive).
Returns:The requested marker
Return type:schrodinger.maestro.markers._BaseMarker
Raises:ValueError – If no marker exists for the specified atoms
Note:As indicated by the return type, this function only returns schrodinger.maestro.markers._BaseMarker derived markers. Multi atom schrodinger.maestro.markers.Marker type markers are not accessible in this way.
removeJaguarMarker(marker)

Removes the specified marker

Parameters:marker (schrodinger.maestro.markers._BaseMarker) – The marker to remove
Raises:ValueError – If there is no marker on the specified atoms
removeJaguarMarkerForAtoms(atoms)

Removes the marker for specified atom(s)

Parameters:atoms (list or schrodinger.structure._StructureAtom) – The atom or list of atoms to retrieve the marker for. A list may contain between one and four atoms (inclusive).
Raises:ValueError – If no marker exists for the specified atoms
removeMarker(marker)

Remove the schrodinger.maestro.markers.Marker

Parameters:marker (schrodinger.maestro.markers.Marker) – Marker to remove
Raises:ValueError – If marker is the wrong type or is not associated with the panel.
showAllJaguarMarkers()

Show all schrodinger.maestro.markers._BaseMarker markers for which all marked atoms are in the workspace. Hide all other markers.

showAllMarkers()

Set all schrodinger.maestro.markers.Marker markers to be shown if the relevant atoms are in the workspace. These markers are hidden automatically by Maestro when atoms are excluded.

hideAllJaguarMarkers()

Hide all schrodinger.maestro.markers._BaseMarker markers for this panel

hideAllMarkers()

Hide all schrodinger.maestro.markers.Marker markers for this panel.

removeAllJaguarMarkers()

Remove all markers schrodinger.maestro.markers._BaseMarker markers from this panel

removeAllJaguarMarkersForEntry(eid)

Remove all markers for the specified entry id from this panel

Parameters:eid (str) – The entry id to remove markers for
removeAllMarkers()

Remove all schrodinger.maestro.markers.Marker markers from this panel.

getAllJaguarMarkers()

Get all markers._BaseMarker currently loaded into the panel

Returns:An iterator of markers._BaseMarker
Return type:iterator
getAllMarkers()

Get all markers.Marker loaded into the panel

Returns:list(markers.Marker)
Return type:list