added timeout facility for musrfit, musrview, musrt0. Adopted musredit/musrgui accordingly.
This commit is contained in:
@@ -69,7 +69,9 @@ bool PAdminXMLParser::startElement( const QString&, const QString&,
|
||||
const QString& qName,
|
||||
const QXmlAttributes& )
|
||||
{
|
||||
if (qName == "font_name") {
|
||||
if (qName == "timeout") {
|
||||
fKeyWord = eTimeout;
|
||||
} else if (qName == "font_name") {
|
||||
fKeyWord = eFontName;
|
||||
} else if (qName == "font_size") {
|
||||
fKeyWord = eFontSize;
|
||||
@@ -171,6 +173,11 @@ bool PAdminXMLParser::characters(const QString& str)
|
||||
int ival;
|
||||
|
||||
switch (fKeyWord) {
|
||||
case eTimeout:
|
||||
ival = QString(str.ascii()).stripWhiteSpace().toInt(&ok);
|
||||
if (ok)
|
||||
fAdmin->setTimeout(ival);
|
||||
break;
|
||||
case eFontName:
|
||||
fAdmin->setFontName(QString(str.ascii()).stripWhiteSpace());
|
||||
break;
|
||||
|
||||
@@ -59,7 +59,7 @@ class PAdminXMLParser : public QXmlDefaultHandler
|
||||
virtual ~PAdminXMLParser() {}
|
||||
|
||||
private:
|
||||
enum EAdminKeyWords {eEmpty, eFontName, eFontSize, eExecPath, eDefaultSavePath, eTitleFromDataFile, eEnableMusrT0,
|
||||
enum EAdminKeyWords {eEmpty, eTimeout, eFontName, eFontSize, eExecPath, eDefaultSavePath, eTitleFromDataFile, eEnableMusrT0,
|
||||
eBeamline, eInstitute, eFileFormat, eLifetimeCorrection, eMsrDefaultFilePath,
|
||||
eHelpMain, eTheoFuncPixmapPath, eFunc, eFuncName, eFuncComment, eFuncLabel,
|
||||
eFuncPixmap, eFuncParams,
|
||||
@@ -93,6 +93,8 @@ class PAdmin
|
||||
PAdmin();
|
||||
virtual ~PAdmin() {}
|
||||
|
||||
int getTimeout() { return fTimeout; }
|
||||
|
||||
QString getFontName() { return fFontName; }
|
||||
int getFontSize() { return fFontSize; }
|
||||
QString getExecPath() { return fExecPath; }
|
||||
@@ -114,6 +116,7 @@ class PAdmin
|
||||
void setFontSize(const int ival) { fFontSize = ival; }
|
||||
|
||||
protected:
|
||||
void setTimeout(const int ival) { fTimeout = ival; }
|
||||
void setExecPath(const QString str) { fExecPath = str; }
|
||||
void setDefaultSavePath(const QString str) { fDefaultSavePath = str; }
|
||||
void setTitleFromDataFileFlag(const bool flag) { fTitleFromDataFile = flag; }
|
||||
@@ -130,6 +133,8 @@ class PAdmin
|
||||
private:
|
||||
friend class PAdminXMLParser;
|
||||
|
||||
int fTimeout; ///< timeout in seconds
|
||||
|
||||
QString fFontName;
|
||||
int fFontSize;
|
||||
|
||||
|
||||
@@ -1390,6 +1390,12 @@ void PTextEdit::musrFit()
|
||||
break;
|
||||
}
|
||||
|
||||
// add timeout
|
||||
cmd.append("--timeout");
|
||||
QString numStr;
|
||||
numStr.setNum(fAdmin->getTimeout());
|
||||
cmd.append(numStr);
|
||||
|
||||
PFitOutputHandler fitOutputHandler(QFileInfo(*fFilenames.find( currentEditor() )).dirPath(), cmd);
|
||||
fitOutputHandler.setModal(true);
|
||||
fitOutputHandler.exec();
|
||||
@@ -1775,7 +1781,9 @@ void PTextEdit::musrView()
|
||||
cmd = str + " \"";
|
||||
|
||||
str = *fFilenames.find( currentEditor() );
|
||||
cmd += str + "\" &";
|
||||
QString numStr;
|
||||
numStr.setNum(fAdmin->getTimeout());
|
||||
cmd += str + "\" --timeout " + numStr + "&";
|
||||
|
||||
system(cmd.latin1());
|
||||
}
|
||||
@@ -1806,7 +1814,9 @@ void PTextEdit::musrT0()
|
||||
cmd = str + " \"";
|
||||
|
||||
str = *fFilenames.find( currentEditor() );
|
||||
cmd += str + "\" &";
|
||||
QString numStr;
|
||||
numStr.setNum(fAdmin->getTimeout());
|
||||
cmd += str + "\" --timeout " + numStr + " &";
|
||||
|
||||
system(cmd.latin1());
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
<font_name>Courier</font_name>
|
||||
<font_size>12</font_size>
|
||||
</font_settings>
|
||||
<timeout>3600</timeout>
|
||||
<msr_file_defaults>
|
||||
<beamline>mue4</beamline>
|
||||
<institute>psi</institute>
|
||||
|
||||
Reference in New Issue
Block a user