summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2014-06-24 21:17:54 +0800
committerIru Cai <mytbk920423@gmail.com>2014-06-24 21:17:54 +0800
commite1ee4d52b9379e2861517069ca7aee0338d4337f (patch)
treec25c917940c7aff028b29f16b1963578c4f98a61 /src
parentdeaf2fe69d57d4cc3f12d6024fd46d25f50f1fec (diff)
downloadfqterm-e1ee4d52b9379e2861517069ca7aee0338d4337f.tar.xz
Add askDialog(title,question) to ScriptEngine
use the DefineEscapeDialog to implement this!
Diffstat (limited to 'src')
-rw-r--r--src/fqterm/fqterm_scriptengine.cpp12
-rw-r--r--src/fqterm/fqterm_scriptengine.h4
-rw-r--r--src/ui/defineescape.cpp7
-rw-r--r--src/ui/defineescape.h5
4 files changed, 25 insertions, 3 deletions
diff --git a/src/fqterm/fqterm_scriptengine.cpp b/src/fqterm/fqterm_scriptengine.cpp
index f529bac..c42dba2 100644
--- a/src/fqterm/fqterm_scriptengine.cpp
+++ b/src/fqterm/fqterm_scriptengine.cpp
@@ -522,6 +522,18 @@ bool FQTermScriptEngine::isAutoReply() {
article.exec();
}
+ QString FQTermScriptEngine::askDialog(const QString& title, const QString& question)
+ {
+ QString ans;
+ DefineEscapeDialog dlg(ans, window_);
+ dlg.setTitleAndText(title, question);
+ if (dlg.exec()==1){
+ return ans;
+ }else{
+ return "";
+ }
+ }
+
} // namespace FQTerm
#include "fqterm_scriptengine.moc"
diff --git a/src/fqterm/fqterm_scriptengine.h b/src/fqterm/fqterm_scriptengine.h
index 48b937d..9e7277f 100644
--- a/src/fqterm/fqterm_scriptengine.h
+++ b/src/fqterm/fqterm_scriptengine.h
@@ -23,6 +23,7 @@
#include "fqterm.h"
#include "articledialog.h"
+#include "defineescape.h"
#include <QObject>
#include <QString>
#include <QStringList>
@@ -54,7 +55,8 @@ public slots: //script apis
//ui functions.
void msgBox(const QString& msg);
bool yesnoBox(const QString& msg);
-
+ QString askDialog(const QString& title, const QString& question);
+
//bbs ui functions
int caretX();
int caretY();
diff --git a/src/ui/defineescape.cpp b/src/ui/defineescape.cpp
index e9dd655..26474e1 100644
--- a/src/ui/defineescape.cpp
+++ b/src/ui/defineescape.cpp
@@ -46,6 +46,13 @@ void DefineEscapeDialog::onCancel()
{
done(0);
}
+
+ void DefineEscapeDialog::setTitleAndText(const QString &title, const QString &text)
+ {
+ ui_.lblEscape->setText(text);
+ this->setWindowTitle(title);
+ }
+
} //namespace FQTerm
#include "defineescape.moc"
diff --git a/src/ui/defineescape.h b/src/ui/defineescape.h
index 0083603..c102840 100644
--- a/src/ui/defineescape.h
+++ b/src/ui/defineescape.h
@@ -30,7 +30,8 @@ class DefineEscapeDialog : public QDialog {
public:
DefineEscapeDialog(QString& strEsc, QWidget *parent_ = 0, Qt::WFlags fl = 0);
~DefineEscapeDialog();
-
+ void setTitleAndText(const QString &title, const QString &text);
+
protected slots:
void onOK();
void onCancel();
@@ -41,4 +42,4 @@ private:
} //namespace FQTerm
-#endif //__FQTERM_DEFINEESCAPE__ \ No newline at end of file
+#endif //__FQTERM_DEFINEESCAPE__