schrodinger.ui.qt.min_max_edit_widget module

class schrodinger.ui.qt.min_max_edit_widget.MinMaxEditWidget(parent: PyQt6.QtWidgets.QWidget | None, unit_text: str, precision: int = 4, reset_button_text: str = 'Reset')

Bases: PopUp

A reusable Qt widget for editing numeric range values with validation. This widget is designed as a frameless popup to provide a dedicated interface for setting a minimum and maximum value. It includes two QLineEdit fields, a ‘Save’ button, and a ‘Reset’ button. Ensures dynamic enabling/disabling of buttons based on input validity and changes.

Variables:

valuesChanged – Signal emitted when user saves valid min/max values.

DEFAULT_PRECISION = 4
RESET_BUTTON_TEXT = 'Reset'
valuesChanged

A pyqtSignal emitted by instances of the class.

__init__(parent: PyQt6.QtWidgets.QWidget | None, unit_text: str, precision: int = 4, reset_button_text: str = 'Reset') None

Initialize the MinMaxEditWidget.

Parameters:
  • parent – Parent widget.

  • unit_text – Unit label text (e.g., “e/A²”).

  • precision – Number of decimal places for float values.

  • reset_button_text – Text for the reset button (e.g., “Detect”, “Reset”).

setup() None

Subclass-specific initialization. Sets up the UI and validators. This method is called automatically by the PopUp base class.

loadValues(saved_min: float, saved_max: float) None

Populate widget fields with saved values.

Parameters:
  • saved_min – New saved minimum value

  • saved_max – New saved maximum value

setDefaultValues(default_min: float, default_max: float) None

Set new default min and max values.

Parameters:
  • default_min – New default minimum value

  • default_max – New default maximum value

clearValues() None

Clear the line edit fields.

setScientificNotationThreshold(threshold: int | None) None

Set the threshold for using scientific notation.

Parameters:

threshold – Threshold above which to use scientific notation, or None to disable scientific notation

resetToDefaults() None

Reset the min/max values to their default settings.

property default_min: float

Get the default minimum value.

Returns:

Default minimum value

property default_max: float

Get the default maximum value.

Returns:

Default maximum value

property saved_min: float | None

Get the saved minimum value.

Returns:

Saved minimum value, or None if not set

property saved_max: float | None

Get the saved maximum value.

Returns:

Saved maximum value, or None if not set