Mantid
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | Private Slots | Private Member Functions | List of all members
MantidQt::CustomDialogs::CatalogPublishDialog Class Referencefinal

This class gives specialised dialog for the CatalogPublish algorithm. More...

#include <CatalogPublishDialog.h>

Inheritance diagram for MantidQt::CustomDialogs::CatalogPublishDialog:
MantidQt::API::AlgorithmDialog Mantid::API::AlgorithmObserver

Public Member Functions

 CatalogPublishDialog (QWidget *parent=nullptr)
 Constructor. 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 Member Functions

void accept () override
 Overridden to enable dataselector validators. More...
 
- Protected Member Functions inherited from MantidQt::API::AlgorithmDialog
virtual void parseInput ()
 Parse out the values entered into the dialog boxes. More...
 
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::PropertygetAlgorithmProperty (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

Ui::CatalogPublishDialog m_uiForm
 The form generated by QT Designer. 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...
 

Private Slots

void disableDialog ()
 Diables fields on dialog to improve usability. More...
 
void fileSelected ()
 Set the "FileName" property when a file is selected from the file browser. More...
 
void setSessionProperty (int index)
 Set session property when user selects an investigation to publish to. More...
 
void workspaceSelected (const QString &wsName)
 When the "browse" button is clicked open a file browser. More...
 

Private Member Functions

void initLayout () override
 Create the inital layout. More...
 
void populateUserInvestigations ()
 Populate the investigation number combo-box with investigations that the user can publish to. 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 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...
 

Detailed Description

This class gives specialised dialog for the CatalogPublish algorithm.

Author
Jay Rainey, ISIS Rutherford Appleton Laboratory
Date
14/01/2014

Definition at line 20 of file CatalogPublishDialog.h.

Constructor & Destructor Documentation

◆ CatalogPublishDialog()

MantidQt::CustomDialogs::CatalogPublishDialog::CatalogPublishDialog ( QWidget *  parent = nullptr)

Constructor.

Default constructor.

Parameters
parent:: Parent dialog.

Definition at line 27 of file CatalogPublishDialog.cpp.

Member Function Documentation

◆ accept()

void MantidQt::CustomDialogs::CatalogPublishDialog::accept ( )
overrideprotected

Overridden to enable dataselector validators.

Definition at line 155 of file CatalogPublishDialog.cpp.

References m_uiForm.

Referenced by initLayout().

◆ disableDialog

void MantidQt::CustomDialogs::CatalogPublishDialog::disableDialog ( )
privateslot

Diables fields on dialog to improve usability.

Definition at line 139 of file CatalogPublishDialog.cpp.

References m_uiForm.

Referenced by populateUserInvestigations().

◆ fileSelected

void MantidQt::CustomDialogs::CatalogPublishDialog::fileSelected ( )
privateslot

Set the "FileName" property when a file is selected from the file browser.

Definition at line 125 of file CatalogPublishDialog.cpp.

References m_uiForm, MantidQt::API::AlgorithmDialog::setPropertyValue(), and MantidQt::API::AlgorithmDialog::storePropertyValue().

Referenced by initLayout().

◆ initLayout()

void MantidQt::CustomDialogs::CatalogPublishDialog::initLayout ( )
overrideprivatevirtual

◆ populateUserInvestigations()

void MantidQt::CustomDialogs::CatalogPublishDialog::populateUserInvestigations ( )
private

Populate the investigation number combo-box with investigations that the user can publish to.

Definition at line 63 of file CatalogPublishDialog.cpp.

References disableDialog(), Mantid::Kernel::SingletonHolder< T >::Instance(), m_uiForm, MantidQt::API::AlgorithmDialog::setOptionalMessage(), and workspace.

Referenced by initLayout().

◆ setSessionProperty

void MantidQt::CustomDialogs::CatalogPublishDialog::setSessionProperty ( int  index)
privateslot

Set session property when user selects an investigation to publish to.

Set/Update the sessionID of the Session property when the user selects an investigation from the combo-box.

Definition at line 148 of file CatalogPublishDialog.cpp.

References index, m_uiForm, and MantidQt::API::AlgorithmDialog::storePropertyValue().

Referenced by initLayout().

◆ workspaceSelected

void MantidQt::CustomDialogs::CatalogPublishDialog::workspaceSelected ( const QString &  wsName)
privateslot

When the "browse" button is clicked open a file browser.

Obtain the name of the workspace selected, and set it to the algorithm's property.

Parameters
wsName:: The name of the workspace to publish.

Definition at line 113 of file CatalogPublishDialog.cpp.

References MantidQt::API::AlgorithmDialog::setPropertyValue(), and MantidQt::API::AlgorithmDialog::storePropertyValue().

Referenced by initLayout().

Member Data Documentation

◆ m_uiForm

Ui::CatalogPublishDialog MantidQt::CustomDialogs::CatalogPublishDialog::m_uiForm
protected

The form generated by QT Designer.

Definition at line 50 of file CatalogPublishDialog.h.

Referenced by accept(), disableDialog(), fileSelected(), initLayout(), populateUserInvestigations(), and setSessionProperty().


The documentation for this class was generated from the following files: