Settings widgets
- class Sisyphe.widgets.functionsSettingsWidget.SettingsWidget(function: str, parent: QWidget | None = None)
SettingsWidget class
Description
Widget to manage application settings from an XML file (settings.xml). This widget displays a list of the parameters of a function/section, i.e. first level node of the XML file.
It has a main button that toggles the visibility of the parameters, as well as four IO buttons:
‘Reset’: Reset the settings to their default values from a settings file.
‘Load’: load settings from a custom XML file.
‘Save’: save the current settings to the user’s default settings file (~/.PySisyphe/settings.xml)
‘Save As’: save the current settings to a custom XML file.
Parameter types in the settings.xml are as follows:
str, represented by a QLineEdit widget
int, represented by a QSpinBox widget
float, represented by a QDoubleSpinBox2 widget
percent, percent parameter (0 to 100), represented by a QSlider widget
bool, represented by a QCheckBox widget
visibility, two states parameter i.e. show/hide, represented by a VisibilityLabel widget
lstr, list of str, represented by QComboBox widgets
lint, list of int, represented by multiple QSpinBox widgets
lfloat,list of float, represented by multiple QDoubleSpinBox widgets
lbool, list of bool, represented by multiple QComboBox (True/False items) widgets
color, represented by a ColorSelectPushButton widget
lut, lut name, represented by a ComboBoxLut widget
font, font name, represented by a FontSelect widget
date, date str, represented by a QDateEdit widget
vol, PySisyphe volume file name, represented by a FileSelectionWidget
roi, PySisyphe ROI file name, represented by a FileSelectionWidget
dcm, Dicom file name, represented by a FileSelectionWidget
dir, Path, represented by a FileSelectionWidget
vols, list of PySisyphe volume file names, represented by a FilesSelectionWidget
rois, list of PySisyphe ROI file names, represented by a FilesSelectionWidget
dcms, list of Dicom file names, represented by a FilesSelectionWidget
dirs, list of paths, represented by a FilesSelectionWidget
txt, text file name, represented by a FileSelectionWidget
Inheritance
QWidget -> SettingsWidget -> FunctionSettingsWidget
Creation: 11/08/2022 Last revision: 23/10/2025
- classSisypheSettings
alias of
SisypheSettings
- classmethod formatLabel(label: str) str
Reformat a str label: split words using capital letters as separators.
Parameters
- labelstr
The label to be formatted.
Returns
- str
reformatted label
- getButtonsVisibility() bool
Get the visibility state of all buttons.
Returns
- bool
True if the reset button is visible, False otherwise.
- classmethod getDefaultIconDirectory() str
Get the path to the default icon directory based on the current system theme (dark/light).
Returns
- str
The absolute path to the icon directory.
- classmethod getDefaultIconSize() int
Get the default icon size based on the current display DPI.
Returns
- int
Icon size in pixels.
- classmethod getDefaultToolbarIconDirectory() str
Get the path to the default toolbar icon directory based on the current system theme (dark/light).
Returns
- str
The absolute path to the toolbar icon directory.
- getFunctionName() str
Get the name of the function associated with this settings widget.
Returns
- str
The function name.
- getIOButtonsVisibility() bool
Get the visibility state of the settings I/O buttons.
Returns
- bool
True if the reset button is visible, False otherwise.
- classmethod getNumberOfDecimals(v: float) int
Get the number of decimal places in a floating-point number.
Parameters
- vfloat
The floating-point number.
Returns
- int
The number of decimal places.
- getParameterValue(parameter: str) Any
Get the current value of a specific parameter.
Parameters
- parameterstr
The name of the parameter.
Returns
- Any
The value of the parameter.
- getParameterVisibility(parameter: str) bool
Get the visibility of a specific parameter widget.
Parameters
- parameterstr
The name of the parameter.
Returns
- bool
True if the widget is visible, False otherwise.
- getParameterWidget(parameter: str) QWidget
Get the widget associated with a specific parameter.
Parameters
- parameterstr
The name of the parameter.
Returns
- QWidget
The widget for the given parameter.
- getParametersDict() dict[str, Any]
Get a dictionary of all parameters and their current values.
Returns
- dict[str, Any]
A dictionary with parameter names as keys and their values.
- getParametersList() list[str]
Get a list of all parameter names.
Returns
- list[str]
A list containing the names of all parameters.
- hideButtons() None
Hide all buttons.
- hideIOButtons() None
Hide the settings I/O buttons.
- classmethod isDarkMode() bool
Checks if the system is currently in dark mode.
Returns
- bool
True if dark mode is detected, False otherwise.
- classmethod isLightMode() bool
Checks if the system is currently in light mode.
Returns
- bool
True if light mode is detected, False otherwise.
- loadSettings() None
Open a dialog to load settings from a custom XML file.
- resetSettings(filename: str = '', default: bool = False) None
Reset the settings to their default values from a settings file.
Parameters
- filenamestr
Path to a custom settings file. If empty, uses the user’s default settings (~/.PySisyphe/settings.xml).
- defaultbool
If True, loads from the application’s default settings file, ignoring filename. If False (default), loads from the user’s settings file (~/.PySisyphe/settings.xml) or the custom filename.
- saveAsSettings() None
Open a dialog to save the current settings to a custom XML file.
- saveSettings() None
Save the current settings to the user’s default settings file (~/.PySisyphe/settings.xml).
- setButtonsVisibility(v: bool) None
Set the visibility of all buttons.
Parameters
- vbool
True to show the buttons, False to hide them.
- setFontSize(v: int) None
Set the font size for the widget and its children.
Parameters
- vint
The font point size.
- setIOButtonsVisibility(v: bool) None
Set the visibility of the settings I/O buttons (Reset, Load, Save, Save As).
Parameters
- vbool
True to show the I/O buttons, False to hide them.
- setParameterValue(parameter: str, v: Any) None
Set the value of a specific parameter widget.
Parameters
- parameterstr
The name of the parameter.
- vAny
The new value to set.
- setParameterVisibility(parameter: str, v: bool) None
Set the visibility of a specific parameter widget and its label.
Parameters
- parameterstr
The name of the parameter.
- vbool
True to show the widget, False to hide it.
- setParametersFromDict(d: dict[str, Any]) None
Set parameter values from a dictionary.
Parameters
- ddict[str, Any]
A dictionary with parameter names as keys and their new values.
- setSettingsButtonDefaultText() None
Reset the settings button text to its default value (‘Settings…’). This button is used to toggle visibility of the parameters.
- setSettingsButtonFunctionText() None
Set the settings button text based on the function name. This button is used to toggle visibility of the parameters.
- setSettingsButtonText(txt: str) None
Set the text of the settings button. This button is used to toggle visibility of the parameters.
Parameters
- txtstr
The new text for the button.
- settingsVisibilityOff() None
Hide the settings box if it is visible.
- settingsVisibilityOn() None
Show the settings box if it is not visible.
- showButtons() None
Show all buttons.
- showIOButtons() None
Show the settings I/O buttons.
- toggleSettingsVisibility() None
Toggle the visibility of the settings box.
- class Sisyphe.widgets.functionsSettingsWidget.FunctionSettingsWidget(function: str, parent: QWidget | None = None)
FunctionSettingsWidget class
Description
Widget to manage function settings from an XML file (functions.xml).
Inheritance
QWidget -> SettingsWidget -> FunctionSettingsWidget
Creation: 11/08/2022
- classSisypheSettings
alias of
SisypheFunctionsSettings
- class Sisyphe.widgets.functionsSettingsWidget.DialogSettingsWidget(function: str, parent: QWidget | None = None)
DialogSettingsWidget class
Description
Widget to manage dialog window from an XML file (dialog.xml).
Inheritance
QWidget -> SettingsWidget -> DialogSettingsWidget
Creation: 11/08/2022
- classSisypheSettings
alias of
SisypheDialogsSettings