diff --git a/src/widgets/messagebox.h b/src/widgets/messagebox.h --- a/src/widgets/messagebox.h +++ b/src/widgets/messagebox.h @@ -37,6 +37,7 @@ virtual ~MessageBox(); QMessageBox::Button askConfirmation(QWidget *parent, const QString &title, const QString &text) Q_DECL_OVERRIDE; + QString askTextInput(QWidget *parent, const QString &title, const QString &text) Q_DECL_OVERRIDE; }; } diff --git a/src/widgets/messagebox.cpp b/src/widgets/messagebox.cpp --- a/src/widgets/messagebox.cpp +++ b/src/widgets/messagebox.cpp @@ -23,11 +23,18 @@ #include "messagebox.h" +#include + Widgets::MessageBox::~MessageBox() { } QMessageBox::Button Widgets::MessageBox::askConfirmation(QWidget *parent, const QString &title, const QString &text) { return QMessageBox::question(parent, title, text, QMessageBox::Yes | QMessageBox::No); } + +QString Widgets::MessageBox::askTextInput(QWidget *parent, const QString &title, const QString &text) +{ + return QInputDialog::getText(parent, title, text); +} diff --git a/src/widgets/messageboxinterface.h b/src/widgets/messageboxinterface.h --- a/src/widgets/messageboxinterface.h +++ b/src/widgets/messageboxinterface.h @@ -41,6 +41,7 @@ virtual ~MessageBoxInterface(); virtual QMessageBox::Button askConfirmation(QWidget *parent, const QString &title, const QString &text) = 0; + virtual QString askTextInput(QWidget *parent, const QString &title, const QString &text) = 0; }; } diff --git a/tests/units/widgets/messageboxstub.h b/tests/units/widgets/messageboxstub.h --- a/tests/units/widgets/messageboxstub.h +++ b/tests/units/widgets/messageboxstub.h @@ -38,11 +38,18 @@ return QMessageBox::Yes; } + QString askTextInput(QWidget *, const QString &, const QString &) Q_DECL_OVERRIDE { + m_called = true; + return m_textInput; + } + bool called() const { return m_called; } + void setTextInput(const QString &text) { m_textInput = text; } + private: bool m_called; + QString m_textInput; }; #endif -