|
Mantid
|
This class gives a basic dialog that is not tailored to a particular algorithm. More...
#include <GenericDialog.h>
Public Member Functions | |
| GenericDialog (QWidget *parent=nullptr) | |
| Default Constructor. More... | |
| ~GenericDialog () override | |
| Destructor. More... | |
Public Member Functions inherited from MantidQt::API::AlgorithmDialog | |
| AlgorithmDialog (QWidget *parent=nullptr) | |
| DefaultConstructor. More... | |
| void | initializeLayout () |
| Create the layout of the widget. Can only be called once. More... | |
| bool | isInitialized () const |
| Is this dialog initialized. More... | |
| bool | isShowKeepOpen () const |
| Set if the keep open option is shown. More... | |
| void | setShowKeepOpen (const bool showOption) |
| Set if the keep open option is shown. More... | |
| ~AlgorithmDialog () override | |
| Destructor. More... | |
| void | setAlgorithm (const Mantid::API::IAlgorithm_sptr &) |
| The following methods were made public for testing in GenericDialogDemo.cpp. More... | |
| void | setPresetValues (const QHash< QString, QString > &presetValues) |
| Set a list of suggested values. More... | |
| void | isForScript (bool forScript) |
| Set whether this is intended for use from a script or not. More... | |
| void | executeOnAccept (bool on) |
| If true then execute the algorithm on acceptance. More... | |
| void | setOptionalMessage (const QString &message) |
| Set an optional message to be displayed at the top of the dialog. More... | |
| void | addEnabledAndDisableLists (const QStringList &enabled, const QStringList &disabled) |
| Set comma-separated-list of enabled parameter names. More... | |
| void | addAlgorithmObserver (Mantid::API::AlgorithmObserver *observer) |
| Add an AlgorithmObserver to the algorithm. More... | |
Protected Slots | |
| void | accept () override |
| A slot that can be used to connect a button that accepts the dialog if all of the properties are valid. More... | |
Protected Slots inherited from MantidQt::API::AlgorithmDialog | |
| void | accept () override |
| A default slot that can be used for an OK button. More... | |
| void | reject () override |
| A default slot that can be used for a rejected button. More... | |
| virtual void | helpClicked () |
| Help button clicked;. More... | |
| virtual void | keepOpenChanged (int state) |
| Keep open checkbox clicked;. More... | |
| virtual void | algorithmCompleted () |
| Keep the running algorithm has completed. More... | |
| virtual void | executeAlgorithmAsync () |
| Executes the algorithm in a separate thread. More... | |
| virtual void | removeAlgorithmFromManager () |
| Removes the algorithm from the manager. More... | |
| void | enableExitButton () |
| Enable to exit button. More... | |
Private Member Functions | |
| void | initLayout () override |
| Create the layout for this dialog. More... | |
| void | parseInput () override |
| Parse out information from the dialog. More... | |
Private Attributes | |
| AlgorithmPropertiesWidget * | m_algoPropertiesWidget |
| Widget containing all the PropertyWidgets. More... | |
Additional Inherited Members | |
Signals inherited from MantidQt::API::AlgorithmDialog | |
| void | algCompletedSignal () |
| Emitted when alg completes and dialog is staying open. More... | |
| void | closeEventCalled () |
Protected Member Functions inherited from MantidQt::API::AlgorithmDialog | |
| virtual void | saveInput () |
| Save the input history of an accepted dialog. More... | |
| const QString & | getOptionalMessage () const |
| Get the message string. More... | |
| void | addOptionalMessage (QVBoxLayout *mainLay) |
| Add the optional message to the given layout. More... | |
| bool | isForScript () const |
| Get the usage boolean value. More... | |
| bool | isMessageAvailable () const |
| Is there a message string available. More... | |
| bool | isWidgetEnabled (const QString &propName) const |
| Check is a given property should have its control enabled or not. More... | |
| Mantid::API::IAlgorithm_sptr | getAlgorithm () const |
| Get the algorithm pointer. More... | |
| Mantid::Kernel::Property * | getAlgorithmProperty (const QString &propName) const |
| Get a pointer to the named property. More... | |
| bool | requiresUserInput (const QString &propName) const |
| Return a true if the given property requires user input. More... | |
| QString | getInputValue (const QString &propName) const |
| Get an input value from the form, dealing with blank inputs etc. More... | |
| QLabel * | getValidatorMarker (const QString &propname) |
| Get a property validator label. More... | |
| void | storePropertyValue (const QString &name, const QString &value) |
| Adds a property (name,value) pair to the stored map. More... | |
| void | removePropertyValue (const QString &name) |
| Removes a property (name, value) pair from the stored map. More... | |
| bool | setPropertyValues (const QStringList &skipList=QStringList()) |
| Set properties on this algorithm by pulling values from the tied widgets. More... | |
| bool | setPropertyValue (const QString &pName, bool validateOthers) |
| Sets the value of a single property, using the value previously stored using storePropertyValue() More... | |
| void | showValidators () |
| Show the validators for all the properties. More... | |
| QWidget * | tie (QWidget *widget, const QString &property, QLayout *parent_layout=nullptr, bool readHistory=true) |
| Tie a widget to a property. More... | |
| void | untie (const QString &property) |
| Untie a widget to a property. More... | |
| QString | openFileDialog (const QString &propName) |
| Open a file dialog to select a file. More... | |
| QStringList | openMultipleFileDialog (const QString &propName) |
| Open a file dialog to select many file. More... | |
| void | fillAndSetComboBox (const QString &propName, QComboBox *optionsBox) const |
| Fill a combo box for the named algorithm's allowed values. More... | |
| void | fillLineEdit (const QString &propName, QLineEdit *field) |
| Fill in the necessary input for a text field. More... | |
| QLayout * | createDefaultButtonLayout (const QString &helpText=QString("?"), const QString &loadText=QString("Run"), const QString &cancelText=QString("Close"), const QString &keepOpenText=QString("Keep Open")) |
| Create a row layout of buttons with specified text. More... | |
| QPushButton * | createHelpButton (const QString &helpText=QString("?")) const |
| Create a help button for this algorithm. More... | |
| void | flagInputWS (QWidget *inputWidget) |
| Flag an input workspace combobox with its property name. More... | |
| QString | getValue (QWidget *widget) |
| Retrieve a text value for a property from a widget. More... | |
| void | parse () |
| Parse out the input from the dialog. More... | |
| bool | requestedToKeepEnabled (const QString &propName) const |
| Test if the given name's widget has been explicity asked to be enabled. More... | |
| QString | getPreviousValue (const QString &propName) const |
| Get the property value from either the previous input store or from Python argument. More... | |
| void | setPreviousValue (QWidget *widget, const QString &property) |
| Set a value based on any old input that we have. More... | |
| void | finishHandle (const Mantid::API::IAlgorithm *alg) override |
| Handle completion of algorithm started while staying open. More... | |
| void | errorHandle (const Mantid::API::IAlgorithm *alg, const std::string &what) override |
| Handle completion of algorithm started while staying open. More... | |
| void | closeEvent (QCloseEvent *evt) override |
| Only allow close when close is enabled. More... | |
Protected Attributes inherited from MantidQt::API::AlgorithmDialog | |
| Mantid::API::IAlgorithm_sptr | m_algorithm |
| The algorithm associated with this dialog. More... | |
| QString | m_algName |
| The name of the algorithm. More... | |
| QStringList | m_algProperties |
| The properties associated with this dialog. More... | |
| QHash< QString, QString > | m_propertyValueMap |
| A map of property <name, value> pairs that have been taken from the dialog. More... | |
| QHash< QString, QWidget * > | m_tied_properties |
| A list pointers to the widget for each property. More... | |
| bool | m_forScript |
| A boolean indicating whether this is for a script or not. More... | |
| QStringList | m_python_arguments |
| A list of property names that have been passed from Python. More... | |
| QStringList | m_enabled |
| A list of property names that should have their widgets enabled. More... | |
| QStringList | m_disabled |
| A list of property names that the user has requested to be disabled (overrides those in enabled) More... | |
| QString | m_strMessage |
| The message string to be displayed at the top of the widget; if it exists. More... | |
| bool | m_keepOpen |
| Whether to keep the dialog box open after alg execution. More... | |
| bool | m_msgAvailable |
| Is the message string empty or not. More... | |
| bool | m_isInitialized |
| Whether the layout has been initialized. More... | |
| bool | m_autoParseOnInit |
| Flag if the input should be parsed automatically on initialization. More... | |
| QHash< QString, QLabel * > | m_validators |
| A list of labels to use as validation markers. More... | |
| QHash< QString, QString > | m_errors |
| A map where key = property name; value = the error for this property (i.e. More... | |
| QStringList | m_noValidation |
| A list of property names whose widgets handle their own validation. More... | |
| QVector< QWidget * > | m_inputws_opts |
| Store a list of the names of input workspace boxes. More... | |
| QVector< QLineEdit * > | m_outputws_fields |
| Store a list of output workspace text edits. More... | |
| QHash< QPushButton *, int > | m_wsbtn_tracker |
| A map to keep track of replace workspace button presses. More... | |
| QCheckBox * | m_keepOpenCheckBox |
| QPushButton * | m_okButton |
| QPushButton * | m_exitButton |
| std::vector< Mantid::API::AlgorithmObserver * > | m_observers |
| A list of AlgorithmObservers to add to the algorithm prior to execution. More... | |
| QTimer | m_btnTimer |
| Enable the close button when the timer fires. More... | |
| bool | m_statusTracked |
| A flag to track whether the status of the algorithm is being tracked. More... | |
This class gives a basic dialog that is not tailored to a particular algorithm.
Definition at line 37 of file GenericDialog.h.
| GenericDialog::GenericDialog | ( | QWidget * | parent = nullptr | ) |
Default Constructor.
Definition at line 52 of file GenericDialog.cpp.
|
overridedefault |
Destructor.
|
overrideprotectedslot |
A slot that can be used to connect a button that accepts the dialog if all of the properties are valid.
Definition at line 148 of file GenericDialog.cpp.
References MantidQt::API::AlgorithmDialog::executeAlgorithmAsync(), m_algoPropertiesWidget, MantidQt::API::AlgorithmDialog::m_errors, MantidQt::API::AlgorithmDialog::m_keepOpen, MantidQt::API::AlgorithmPropertiesWidget::m_propWidgets, MantidQt::API::AlgorithmDialog::parse(), MantidQt::API::AlgorithmDialog::saveInput(), and MantidQt::API::AlgorithmDialog::setPropertyValues().
|
overrideprivatevirtual |
Create the layout for this dialog.
Implements MantidQt::API::AlgorithmDialog.
Definition at line 65 of file GenericDialog.cpp.
References MantidQt::API::AlgorithmPropertiesWidget::addEnabledAndDisableLists(), MantidQt::API::AlgorithmDialog::addOptionalMessage(), MantidQt::API::AlgorithmDialog::createDefaultButtonLayout(), MantidQt::API::AlgorithmDialog::getAlgorithm(), MantidQt::API::AlgorithmPropertiesWidget::hideOrDisableProperties(), MantidQt::API::AlgorithmDialog::isMessageAvailable(), m_algoPropertiesWidget, MantidQt::API::AlgorithmDialog::m_disabled, MantidQt::API::AlgorithmDialog::m_enabled, MantidQt::API::AlgorithmPropertiesWidget::m_propWidgets, MantidQt::API::AlgorithmDialog::m_python_arguments, MantidQt::API::AlgorithmPropertiesWidget::m_scroll, MantidQt::API::AlgorithmPropertiesWidget::m_viewport, MantidQt::API::AlgorithmPropertiesWidget::setAlgorithm(), and MantidQt::API::AlgorithmDialog::setPreviousValue().
|
overrideprivatevirtual |
Parse out information from the dialog.
Reimplemented from MantidQt::API::AlgorithmDialog.
Definition at line 135 of file GenericDialog.cpp.
References m_algoPropertiesWidget, MantidQt::API::AlgorithmPropertiesWidget::m_propWidgets, and MantidQt::API::AlgorithmDialog::storePropertyValue().
|
private |
Widget containing all the PropertyWidgets.
Definition at line 56 of file GenericDialog.h.
Referenced by accept(), initLayout(), and parseInput().