schrodinger.ui.qt.standard.controllers.project_entries_controller module

class schrodinger.ui.qt.standard.controllers.project_entries_controller.EntrySnapshot(rows: tuple[ProjectRow, ...])

Bases: object

Immutable snapshot of an ordered collection of project entries.

rows: tuple[ProjectRow, ...]
classmethod fromRows(rows: Iterable[ProjectRow]) → EntrySnapshot

Create a snapshot from project rows in their current order.

entryIds() → tuple[str, ...]

Return the entry identities in snapshot order.

__init__(rows: tuple[ProjectRow, ...]) → None
class schrodinger.ui.qt.standard.controllers.project_entries_controller.MaestroProjectEntriesController(parent: QWidget)

Bases: BaseMaestroSync, QObject

Observe and query selected or Workspace-included project entries.

Maestro callbacks are active only while the parent widget is visible.

Calls to setCallbacksActive() set the requested callback state; visibility gates that state without overriding it. For example, callbacks manually disabled while visible remain disabled after a hide/show cycle.

selectionChanged

A pyqtSignal emitted by instances of the class.

inclusionChanged

A pyqtSignal emitted by instances of the class.

__init__(parent: QWidget)
setCallbacksActive(active: bool) → None

Request callbacks, subject to the parent widget’s visibility.

suspendCallbacks() → Iterator[None]

Temporarily suspend callbacks without changing requested state.

selectedSnapshot() → EntrySnapshot

Return a snapshot of the selected Project Table entries.

includedSnapshot() → EntrySnapshot

Return a row-ordered snapshot of Workspace-included entries.