Fix return value from messageboxes with list

This commit is contained in:
craig.p.drummond
2013-11-11 19:28:40 +00:00
parent fa1a25be60
commit 816ee12987
2 changed files with 24 additions and 1 deletions

View File

@@ -69,10 +69,33 @@ MessageBox::ButtonCode MessageBox::questionYesNoCancel(QWidget *parent, const QS
#ifdef ENABLE_KDE_SUPPORT
void MessageBox::errorListEx(QWidget *parent, const QString &message, const QStringList &strlist, const QString &title)
#else
namespace MessageBox
{
class YesNoListDialog : public Dialog
{
public:
YesNoListDialog(QWidget *p) : Dialog(p) { }
void slotButtonClicked(int b) {
switch(b) {
case Dialog::Yes:
accept();
break;
case Dialog::No:
reject();
break;
}
}
};
}
MessageBox::ButtonCode MessageBox::msgListEx(QWidget *parent, Type type, const QString &message, const QStringList &strlist, const QString &title)
#endif
{
#ifdef ENABLE_KDE_SUPPORT
Dialog *dlg=new Dialog(parent);
#else
MessageBox::YesNoListDialog *dlg=new MessageBox::YesNoListDialog(parent);
#endif
dlg->setAttribute(Qt::WA_DeleteOnClose);
QWidget *wid=new QWidget(dlg);
QGridLayout *lay=new QGridLayout(wid);

View File

@@ -77,7 +77,7 @@ namespace MessageBox {
inline ButtonCode warningYesNoList(QWidget *parent, const QString &message, const QStringList &strlist, const QString &title=QString()) {
return msgListEx(parent, Warning, message, strlist, title);
}
};
}
#endif
#endif