diff --git a/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h b/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h index f813d2b37cb5782b6d39ef2ed7e7ac013d330350..a3304d2c7a3a805ab478182dde360afc4459c63c 100644 --- a/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h +++ b/MantidQt/CustomInterfaces/inc/MantidQtCustomInterfaces/EnggDiffraction/EnggDiffractionViewQtGUI.h @@ -198,6 +198,9 @@ private: /// instrument selected (ENGIN-X, etc.) std::string m_currentInst; + /// the instrument selection has changed (slot) + void userSelectInstrument(); + // plot data representation type selected int static m_currentType; @@ -224,6 +227,7 @@ private: /// presenter as in the model-view-presenter boost::scoped_ptr<IEnggDiffractionPresenter> m_presenter; + }; } // namespace CustomInterfaces diff --git a/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp b/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp index ccd98974eb014d04e86557d598cd852ebdcbe4a4..a092a39fdc32cfb34451ad71f26b4fe436e7dc86 100644 --- a/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp +++ b/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffractionViewQtGUI.cpp @@ -100,9 +100,9 @@ void EnggDiffractionViewQtGUI::doSetupTabCalib() { // CalibrationParameters or similar class/structure const std::string vanadiumRun = "236516"; const std::string ceriaRun = "241391"; - m_uiTabCalib.lineEdit_new_vanadium_num->setText( + m_uiTabCalib.lineEdit_new_vanadium_num->setUserInput( QString::fromStdString(vanadiumRun)); - m_uiTabCalib.lineEdit_new_ceria_num->setText( + m_uiTabCalib.lineEdit_new_ceria_num->setUserInput( QString::fromStdString(ceriaRun)); // push button signals/slots @@ -178,6 +178,11 @@ void EnggDiffractionViewQtGUI::doSetupGeneralWidgets() { connect(m_ui.comboBox_instrument, SIGNAL(currentIndexChanged(int)), this, SLOT(instrumentChanged(int))); + // signal/slot connections to respond to changes in instrument selection combo + // boxes + connect(m_ui.comboBox_instrument, SIGNAL(instrumentChanged(int)), this, + SLOT(userSelectInstrument())); + connect(m_ui.pushButton_help, SIGNAL(released()), this, SLOT(openHelpWin())); // note connection to the parent window, otherwise an empty frame window // may remain open and visible after this close @@ -212,7 +217,7 @@ void EnggDiffractionViewQtGUI::readSettings() { qs.value("user-params-new-ceria-num", "").toString()); // user params - focusing - m_uiTabFocus.lineEdit_run_num->setText( + m_uiTabFocus.lineEdit_run_num->setUserInput( qs.value("user-params-focus-runno", "").toString()); qs.beginReadArray("user-params-focus-bank_i"); @@ -224,13 +229,13 @@ void EnggDiffractionViewQtGUI::readSettings() { qs.value("value", true).toBool()); qs.endArray(); - m_uiTabFocus.lineEdit_cropped_run_num->setText( + m_uiTabFocus.lineEdit_cropped_run_num->setUserInput( qs.value("user-params-focus-cropped-runno", "").toString()); m_uiTabFocus.lineEdit_cropped_spec_ids->setText( qs.value("user-params-focus-cropped-spectrum-nos", "").toString()); - m_uiTabFocus.lineEdit_texture_run_num->setText( + m_uiTabFocus.lineEdit_texture_run_num->setUserInput( qs.value("user-params-focus-texture-runno", "").toString()); m_uiTabFocus.lineEdit_texture_grouping_file->setText( @@ -735,11 +740,21 @@ void EnggDiffractionViewQtGUI::instrumentChanged(int /*idx*/) { QComboBox *inst = m_ui.comboBox_instrument; if (!inst) return; - m_currentInst = inst->currentText().toStdString(); m_presenter->notify(IEnggDiffractionPresenter::InstrumentChange); } +void EnggDiffractionViewQtGUI::userSelectInstrument() { + // Set file browsing to current instrument + auto prefix = QString::fromStdString(m_currentInst); + m_uiTabFocus.lineEdit_run_num->setInstrumentOverride(prefix); + m_uiTabFocus.lineEdit_texture_run_num->setInstrumentOverride(prefix); + m_uiTabFocus.lineEdit_cropped_run_num->setInstrumentOverride(prefix); + + m_uiTabCalib.lineEdit_new_ceria_num->setInstrumentOverride(prefix); + m_uiTabCalib.lineEdit_new_vanadium_num->setInstrumentOverride(prefix); +} + void EnggDiffractionViewQtGUI::closeEvent(QCloseEvent *event) { int answer = QMessageBox::AcceptRole;