[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [kdelibs/frameworks] tier1/kwidgetsaddons/src: Factorize code between regular and *WId functions
From: Aurélien Gâteau <agateau () kde ! org>
Date: 2013-10-14 14:00:05
Message-ID: E1VVign-0004Mf-OQ () scm ! kde ! org
[Download RAW message or body]
Git commit d16abdc34489e19d67145b58a3ece1c8f4c42e96 by Aurélien Gâteau.
Committed on 11/10/2013 at 08:45.
Pushed by gateau into branch 'frameworks'.
Factorize code between regular and *WId functions
REVIEW: 113197
M +180 -355 tier1/kwidgetsaddons/src/kmessagebox.cpp
http://commits.kde.org/kdelibs/d16abdc34489e19d67145b58a3ece1c8f4c42e96
diff --git a/tier1/kwidgetsaddons/src/kmessagebox.cpp \
b/tier1/kwidgetsaddons/src/kmessagebox.cpp index 0cfa491..db8b313 100644
--- a/tier1/kwidgetsaddons/src/kmessagebox.cpp
+++ b/tier1/kwidgetsaddons/src/kmessagebox.cpp
@@ -178,6 +178,19 @@ static void setMainWindow( QWidget* subWidget, WId mainWindowId \
) subWindow->setTransientParent(mainWindow);
}
+/**
+ * Create a QDialog whose parent is a foreign window
+ */
+static QDialog *createWIdDialog(WId parent_id)
+{
+ QWidget* parent = QWidget::find(parent_id);
+ QDialog *dialog = new QDialog(parent, Qt::Dialog);
+ if (!parent && parent_id) {
+ setMainWindow(dialog, parent_id);
+ }
+ return dialog;
+}
+
class DialogButtonsHelper : public QObject
{
Q_OBJECT
@@ -556,7 +569,7 @@ void setDontShowAgainConfig(KConfig* cfg)
dontAskAgainInterface()->setConfig(cfg);
}
-ButtonCode questionYesNoList(QWidget *parent, const QString &text,
+static ButtonCode questionYesNoListInternal(QDialog *dialog, const QString &text,
const QStringList &strlist,
const QString &caption,
const KGuiItem &buttonYes_,
@@ -566,6 +579,7 @@ ButtonCode questionYesNoList(QWidget *parent, const QString \
&text, {
ButtonCode res;
if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
+ delete dialog;
return res;
}
@@ -573,7 +587,6 @@ ButtonCode questionYesNoList(QWidget *parent, const QString \
&text, I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
I18N_POST_BUTTON_FILTER
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Question") : caption);
dialog->setObjectName(QStringLiteral("questionYesNo"));
@@ -596,7 +609,19 @@ ButtonCode questionYesNoList(QWidget *parent, const QString \
&text, return res;
}
-ButtonCode questionYesNoCancel(QWidget *parent,
+ButtonCode questionYesNoList(QWidget *parent, const QString &text,
+ const QStringList &strlist,
+ const QString &caption,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
+ const QString &dontAskAgainName,
+ Options options)
+{
+ return questionYesNoListInternal(new QDialog(parent), text, strlist, caption, \
buttonYes, buttonNo, + dontAskAgainName, options);
+}
+
+static ButtonCode questionYesNoCancelInternal(QDialog *dialog,
const QString &text,
const QString &caption,
const KGuiItem &buttonYes_,
@@ -607,6 +632,7 @@ ButtonCode questionYesNoCancel(QWidget *parent,
{
ButtonCode res;
if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
+ delete dialog;
return res;
}
@@ -615,7 +641,6 @@ ButtonCode questionYesNoCancel(QWidget *parent,
I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
I18N_POST_BUTTON_FILTER
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Question") : caption);
dialog->setObjectName(QStringLiteral("questionYesNoCancel"));
@@ -647,6 +672,19 @@ ButtonCode questionYesNoCancel(QWidget *parent,
return res;
}
+ButtonCode questionYesNoCancel(QWidget *parent,
+ const QString &text,
+ const QString &caption,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
+ const KGuiItem &buttonCancel,
+ const QString &dontAskAgainName,
+ Options options)
+{
+ return questionYesNoCancelInternal(new QDialog(parent), text, caption, \
buttonYes, buttonNo, buttonCancel, + dontAskAgainName, options);
+}
+
ButtonCode warningYesNo(QWidget *parent, const QString &text,
const QString &caption,
const KGuiItem &buttonYes,
@@ -658,7 +696,7 @@ ButtonCode warningYesNo(QWidget *parent, const QString &text,
buttonYes, buttonNo, dontAskAgainName, options);
}
-ButtonCode warningYesNoList(QWidget *parent, const QString &text,
+static ButtonCode warningYesNoListInternal(QDialog *dialog, const QString &text,
const QStringList &strlist,
const QString &caption,
const KGuiItem &buttonYes_,
@@ -668,6 +706,7 @@ ButtonCode warningYesNoList(QWidget *parent, const QString &text,
{
ButtonCode res;
if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
+ delete dialog;
return res;
}
@@ -675,7 +714,6 @@ ButtonCode warningYesNoList(QWidget *parent, const QString &text,
I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
I18N_POST_BUTTON_FILTER
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Warning") : caption);
dialog->setObjectName(QStringLiteral("warningYesNoList"));
@@ -698,6 +736,18 @@ ButtonCode warningYesNoList(QWidget *parent, const QString \
&text, return res;
}
+ButtonCode warningYesNoList(QWidget *parent, const QString &text,
+ const QStringList &strlist,
+ const QString &caption,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
+ const QString &dontAskAgainName,
+ Options options)
+{
+ return warningYesNoListInternal(new QDialog(parent), text, strlist, caption, \
buttonYes, buttonNo, + dontAskAgainName, options);
+}
+
ButtonCode warningContinueCancel(QWidget *parent,
const QString &text,
const QString &caption,
@@ -710,7 +760,7 @@ ButtonCode warningContinueCancel(QWidget *parent,
buttonContinue, buttonCancel, dontAskAgainName, \
options); }
-ButtonCode warningContinueCancelList(QWidget *parent, const QString &text,
+static ButtonCode warningContinueCancelListInternal(QDialog *dialog, const QString \
&text, const QStringList &strlist,
const QString &caption,
const KGuiItem &buttonContinue_,
@@ -718,14 +768,15 @@ ButtonCode warningContinueCancelList(QWidget *parent, const \
QString &text, const QString &dontAskAgainName,
Options options)
{
- if ( !shouldBeShownContinue(dontAskAgainName) )
+ if (!shouldBeShownContinue(dontAskAgainName)) {
+ delete dialog;
return Continue;
+ }
I18N_FILTER_BUTTON_CONTINUE(buttonContinue_, buttonContinue)
I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
I18N_POST_BUTTON_FILTER
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Warning") : caption);
dialog->setObjectName(QStringLiteral("warningYesNo"));
@@ -750,6 +801,18 @@ ButtonCode warningContinueCancelList(QWidget *parent, const \
QString &text, return Continue;
}
+ButtonCode warningContinueCancelList(QWidget *parent, const QString &text,
+ const QStringList &strlist,
+ const QString &caption,
+ const KGuiItem &buttonContinue,
+ const KGuiItem &buttonCancel,
+ const QString &dontAskAgainName,
+ Options options)
+{
+ return warningContinueCancelListInternal(new QDialog(parent), text, strlist, \
caption, buttonContinue, buttonCancel, + dontAskAgainName, options);
+}
+
ButtonCode warningYesNoCancel(QWidget *parent, const QString &text,
const QString &caption,
const KGuiItem &buttonYes,
@@ -762,7 +825,7 @@ ButtonCode warningYesNoCancel(QWidget *parent, const QString \
&text,
buttonYes, buttonNo, buttonCancel, dontAskAgainName, options);
}
-ButtonCode warningYesNoCancelList(QWidget *parent, const QString &text,
+static ButtonCode warningYesNoCancelListInternal(QDialog *dialog, const QString \
&text, const QStringList &strlist,
const QString &caption,
const KGuiItem &buttonYes_,
@@ -773,6 +836,7 @@ ButtonCode warningYesNoCancelList(QWidget *parent, const QString \
&text, {
ButtonCode res;
if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
+ delete dialog;
return res;
}
@@ -781,7 +845,6 @@ ButtonCode warningYesNoCancelList(QWidget *parent, const QString \
&text, I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
I18N_POST_BUTTON_FILTER
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Warning") : caption);
dialog->setObjectName(QStringLiteral("warningYesNoCancel"));
@@ -812,16 +875,28 @@ ButtonCode warningYesNoCancelList(QWidget *parent, const \
QString &text, return res;
}
+ButtonCode warningYesNoCancelList(QWidget *parent, const QString &text,
+ const QStringList &strlist,
+ const QString &caption,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
+ const KGuiItem &buttonCancel,
+ const QString &dontAskAgainName,
+ Options options)
+{
+ return warningYesNoCancelList(new QDialog(parent), text, strlist, caption, \
buttonYes, buttonNo, buttonCancel, + dontAskAgainName, options);
+}
+
void error(QWidget *parent, const QString &text,
const QString &caption, Options options)
{
return errorList( parent, text, QStringList(), caption, options );
}
-void errorList(QWidget *parent, const QString &text, const QStringList &strlist,
+static void errorListInternal(QDialog *dialog, const QString &text, const \
QStringList &strlist, const QString &caption, Options options)
{
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Error") : caption);
dialog->setObjectName(QStringLiteral("error"));
@@ -833,12 +908,16 @@ void errorList(QWidget *parent, const QString &text, const \
QStringList &strlist,
createKMessageBox(dialog, buttonBox, QMessageBox::Critical, text, strlist, \
QString(), 0, options); }
-void
-detailedError(QWidget *parent, const QString &text,
+void errorList(QWidget *parent, const QString &text, const QStringList &strlist,
+ const QString &caption, Options options)
+{
+ errorListInternal(new QDialog(parent), text, strlist, caption, options);
+}
+
+static void detailedErrorInternal(QDialog *dialog, const QString &text,
const QString &details,
const QString &caption, Options options)
{
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Error") : caption);
dialog->setObjectName(QStringLiteral("error"));
@@ -857,10 +936,16 @@ detailedError(QWidget *parent, const QString &text,
createKMessageBox(dialog, buttonBox, QMessageBox::Critical, text, QStringList(), \
QString(), 0, options, details); }
-void sorry(QWidget *parent, const QString &text,
+void detailedError(QWidget *parent, const QString &text,
+ const QString &details,
+ const QString &caption, Options options)
+{
+ detailedErrorInternal(new QDialog(parent), text, details, caption, options);
+}
+
+static void sorryInternal(QDialog *dialog, const QString &text,
const QString &caption, Options options)
{
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Sorry") : caption);
dialog->setObjectName(QStringLiteral("sorry"));
@@ -872,11 +957,16 @@ void sorry(QWidget *parent, const QString &text,
createKMessageBox(dialog, buttonBox, QMessageBox::Warning, text, QStringList(), \
QString(), 0, options); }
-void detailedSorry(QWidget *parent, const QString &text,
+void sorry(QWidget *parent, const QString &text,
+ const QString &caption, Options options)
+{
+ sorryInternal(new QDialog(parent), text, caption, options);
+}
+
+static void detailedSorryInternal(QDialog *dialog, const QString &text,
const QString &details,
const QString &caption, Options options)
{
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Sorry") : caption);
dialog->setObjectName(QStringLiteral("sorry"));
@@ -895,20 +985,27 @@ void detailedSorry(QWidget *parent, const QString &text,
createKMessageBox(dialog, buttonBox, QMessageBox::Warning, text, QStringList(), \
QString(), 0, options, details); }
+void detailedSorry(QWidget *parent, const QString &text,
+ const QString &details,
+ const QString &caption, Options options)
+{
+ detailedSorryInternal(new QDialog(parent), text, details, caption, options);
+}
+
void information(QWidget *parent,const QString &text,
const QString &caption, const QString &dontShowAgainName, Options options)
{
informationList(parent, text, QStringList(), caption, dontShowAgainName, \
options); }
-void informationList(QWidget *parent,const QString &text, const QStringList & \
strlist, +static void informationListInternal(QDialog *dialog, const QString &text, \
const QStringList & strlist,
const QString &caption, const QString &dontShowAgainName, \
Options options) {
if ( !shouldBeShownContinue(dontShowAgainName) ) {
+ delete dialog;
return;
}
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
dialog->setWindowTitle(caption.isEmpty() ? i18n("Information") : caption);
dialog->setObjectName(QStringLiteral("information"));
@@ -928,6 +1025,12 @@ void informationList(QWidget *parent,const QString &text, const \
QStringList & st }
}
+void informationList(QWidget *parent,const QString &text, const QStringList & \
strlist, + const QString &caption, const QString \
&dontShowAgainName, Options options) +{
+ informationListInternal(new QDialog(parent), text, strlist, caption, \
dontShowAgainName, options); +}
+
void about(QWidget *parent, const QString &text,
const QString &caption, Options options)
{
@@ -947,46 +1050,53 @@ void about(QWidget *parent, const QString &text,
}
createKMessageBox(dialog, buttonBox, qApp->windowIcon(), text, QStringList(), \
QString(), 0, options);
- return;
}
-ButtonCode messageBox( QWidget *parent, DialogType type, const QString &text,
+static ButtonCode messageBoxInternal(QDialog *dialog, DialogType type, const QString \
&text,
const QString &caption, const KGuiItem &buttonYes,
const KGuiItem &buttonNo, const KGuiItem &buttonCancel,
- const QString &dontShow, Options options )
+ const QString &dontShow, Options options)
{
switch (type) {
case QuestionYesNo:
- return questionYesNo( parent,
- text, caption, buttonYes, buttonNo, \
dontShow, options ); + return questionYesNoListInternal(dialog, text, \
QStringList(), caption, + buttonYes, buttonNo, dontShow, options);
case QuestionYesNoCancel:
- return questionYesNoCancel( parent,
- text, caption, buttonYes, buttonNo, \
buttonCancel, dontShow, options ); + return \
questionYesNoCancelInternal(dialog, text, caption, + buttonYes, buttonNo, \
buttonCancel, dontShow, options); case WarningYesNo:
- return warningYesNo( parent,
- text, caption, buttonYes, buttonNo, \
dontShow, options ); + return warningYesNoListInternal(dialog, text, \
QStringList(), caption, + buttonYes, buttonNo, dontShow, options);
case WarningContinueCancel:
- return warningContinueCancel( parent,
- text, caption, \
KGuiItem(buttonYes.text()), buttonCancel, dontShow, options ); + return \
warningContinueCancelListInternal(dialog, text, QStringList(), caption, + \
KGuiItem(buttonYes.text()), buttonCancel, dontShow, options); case \
WarningYesNoCancel:
- return warningYesNoCancel( parent,
- text, caption, buttonYes, buttonNo, \
buttonCancel, dontShow, options ); + return \
warningYesNoCancelListInternal(dialog, text, QStringList(), caption, + \
buttonYes, buttonNo, buttonCancel, dontShow, options); case Information:
- information( parent,
- text, caption, dontShow, options );
+ informationListInternal(dialog, text, QStringList(), caption, dontShow, \
options); return KMessageBox::Ok;
case Error:
- error( parent, text, caption, options );
+ errorListInternal(dialog, text, QStringList(), caption, options);
return KMessageBox::Ok;
case Sorry:
- sorry( parent, text, caption, options );
+ sorryInternal(dialog, text, caption, options);
return KMessageBox::Ok;
}
return KMessageBox::Cancel;
}
+ButtonCode messageBox( QWidget *parent, DialogType type, const QString &text,
+ const QString &caption, const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo, const KGuiItem &buttonCancel,
+ const QString &dontShow, Options options )
+{
+ return messageBoxInternal(new QDialog(parent), type, text, caption,
+ buttonYes, buttonNo, buttonCancel, dontShow, options);
+}
+
ButtonCode questionYesNoWId(WId parent_id, const QString &text,
const QString &caption,
const KGuiItem &buttonYes,
@@ -1001,100 +1111,26 @@ ButtonCode questionYesNoWId(WId parent_id, const QString \
&text, ButtonCode questionYesNoListWId(WId parent_id, const QString &text,
const QStringList &strlist,
const QString &caption,
- const KGuiItem &buttonYes_,
- const KGuiItem &buttonNo_,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
const QString &dontAskAgainName,
Options options)
{
- ButtonCode res;
- if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
- return res;
- }
-
- I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
- I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
- I18N_POST_BUTTON_FILTER
-
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Question") : caption);
- dialog->setObjectName(QStringLiteral("questionYesNo"));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->setStandardButtons(QDialogButtonBox::Yes | QDialogButtonBox::No);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::Yes), buttonYes);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::No), buttonNo);
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- bool checkboxResult = false;
- const int result = createKMessageBox(dialog, buttonBox, \
QMessageBox::Information, text, strlist,
- dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask \
again"),
- &checkboxResult, options);
- res = (result==QDialogButtonBox::Yes ? Yes : No);
-
- if (checkboxResult) {
- saveDontShowAgainYesNo(dontAskAgainName, res);
- }
- return res;
+ return questionYesNoListInternal(createWIdDialog(parent_id), text, strlist, \
caption, buttonYes, buttonNo, + dontAskAgainName, options);
}
ButtonCode questionYesNoCancelWId(WId parent_id,
const QString &text,
const QString &caption,
- const KGuiItem &buttonYes_,
- const KGuiItem &buttonNo_,
- const KGuiItem &buttonCancel_,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
+ const KGuiItem &buttonCancel,
const QString &dontAskAgainName,
Options options)
{
- ButtonCode res;
- if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
- return res;
- }
-
- I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
- I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
- I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
- I18N_POST_BUTTON_FILTER
-
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog= new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Question") : caption);
- dialog->setObjectName(QStringLiteral("questionYesNoCancel"));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->setStandardButtons(QDialogButtonBox::Yes | QDialogButtonBox::No | \
QDialogButtonBox::Cancel);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::Yes), buttonYes);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::No), buttonNo);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::Cancel), buttonCancel);
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- bool checkboxResult = false;
- const int result = createKMessageBox(dialog, buttonBox, \
QMessageBox::Information,
- text, QStringList(),
- dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask \
again"),
- &checkboxResult, options);
-
- if ( result == QDialogButtonBox::Yes ) {
- res = Yes;
- } else if ( result == QDialogButtonBox::No ) {
- res = No;
- } else {
- return Cancel;
- }
-
- if (checkboxResult) {
- saveDontShowAgainYesNo(dontAskAgainName, res);
- }
- return res;
+ return questionYesNoCancelInternal(createWIdDialog(parent_id), text, caption, \
buttonYes, buttonNo, buttonCancel, + dontAskAgainName, options);
}
ButtonCode warningYesNoWId(WId parent_id, const QString &text,
@@ -1111,45 +1147,13 @@ ButtonCode warningYesNoWId(WId parent_id, const QString \
&text, ButtonCode warningYesNoListWId(WId parent_id, const QString &text,
const QStringList &strlist,
const QString &caption,
- const KGuiItem &buttonYes_,
- const KGuiItem &buttonNo_,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
const QString &dontAskAgainName,
Options options)
{
- ButtonCode res;
- if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
- return res;
- }
-
- I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
- I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
- I18N_POST_BUTTON_FILTER
-
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Warning") : caption);
- dialog->setObjectName(QStringLiteral("warningYesNoList"));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->setStandardButtons(QDialogButtonBox::Yes | QDialogButtonBox::No);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::Yes), buttonYes);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::No), buttonNo);
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- bool checkboxResult = false;
- const int result = createKMessageBox(dialog, buttonBox, QMessageBox::Warning, \
text, strlist,
- dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask \
again"),
- &checkboxResult, options);
- res = (result==QDialogButtonBox::Yes ? Yes : No);
-
- if (checkboxResult) {
- saveDontShowAgainYesNo(dontAskAgainName, res);
- }
- return res;
+ return warningYesNoListInternal(createWIdDialog(parent_id), text, strlist, \
caption, buttonYes, buttonNo, + dontAskAgainName, options);
}
ButtonCode warningContinueCancelWId(WId parent_id,
@@ -1167,45 +1171,13 @@ ButtonCode warningContinueCancelWId(WId parent_id,
ButtonCode warningContinueCancelListWId(WId parent_id, const QString &text,
const QStringList &strlist,
const QString &caption,
- const KGuiItem &buttonContinue_,
- const KGuiItem &buttonCancel_,
+ const KGuiItem &buttonContinue,
+ const KGuiItem &buttonCancel,
const QString &dontAskAgainName,
Options options)
{
- if ( !shouldBeShownContinue(dontAskAgainName) )
- return Continue;
-
- I18N_FILTER_BUTTON_CONTINUE(buttonContinue_, buttonContinue)
- I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
- I18N_POST_BUTTON_FILTER
-
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Warning") : caption);
- dialog->setObjectName(QStringLiteral("warningYesNo"));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->setStandardButtons(QDialogButtonBox::Yes | QDialogButtonBox::No);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::Yes), buttonContinue);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::No), buttonCancel);
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- bool checkboxResult = false;
- const int result = createKMessageBox(dialog, buttonBox, QMessageBox::Warning, \
text, strlist,
- dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask \
again"),
- &checkboxResult, options);
-
- if ( result != QDialogButtonBox::Yes ) {
- return Cancel;
- }
- if (checkboxResult) {
- saveDontShowAgainContinue(dontAskAgainName);
- }
- return Continue;
+ return warningContinueCancelListInternal(createWIdDialog(parent_id), text, \
strlist, caption, buttonContinue, buttonCancel, + dontAskAgainName, options);
}
ButtonCode warningYesNoCancelWId(WId parent_id, const QString &text,
@@ -1223,55 +1195,14 @@ ButtonCode warningYesNoCancelWId(WId parent_id, const QString \
&text, ButtonCode warningYesNoCancelListWId(WId parent_id, const QString &text,
const QStringList &strlist,
const QString &caption,
- const KGuiItem &buttonYes_,
- const KGuiItem &buttonNo_,
- const KGuiItem &buttonCancel_,
+ const KGuiItem &buttonYes,
+ const KGuiItem &buttonNo,
+ const KGuiItem &buttonCancel,
const QString &dontAskAgainName,
Options options)
{
- ButtonCode res;
- if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
- return res;
- }
-
- I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
- I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
- I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
- I18N_POST_BUTTON_FILTER
-
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Warning") : caption);
- dialog->setObjectName(QStringLiteral("warningYesNoCancel"));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->setStandardButtons(QDialogButtonBox::Yes | QDialogButtonBox::No | \
QDialogButtonBox::Cancel);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::Yes), buttonYes);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::No), buttonNo);
- KGuiItem::assign(buttonBox->button(QDialogButtonBox::Cancel), buttonCancel);
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- bool checkboxResult = false;
- const int result = createKMessageBox(dialog, buttonBox, QMessageBox::Warning, \
text, strlist,
- dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask \
again"),
- &checkboxResult, options);
-
- if ( result == QDialogButtonBox::Yes ) {
- res = Yes;
- } else if ( result == QDialogButtonBox::No ) {
- res = No;
- } else {
- return Cancel;
- }
-
- if (checkboxResult) {
- saveDontShowAgainYesNo(dontAskAgainName, res);
- }
- return res;
+ return warningYesNoCancelList(createWIdDialog(parent_id), text, strlist, \
caption, buttonYes, buttonNo, buttonCancel, + dontAskAgainName, options);
}
void errorWId(WId parent_id, const QString &text,
@@ -1283,47 +1214,14 @@ void errorWId(WId parent_id, const QString &text,
void errorListWId(WId parent_id, const QString &text, const QStringList &strlist,
const QString &caption, Options options)
{
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Error") : caption);
- dialog->setObjectName(QStringLiteral("error"));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->setStandardButtons(QDialogButtonBox::Ok);
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- createKMessageBox(dialog, buttonBox, QMessageBox::Critical, text, strlist, \
QString(), 0, options); + errorListInternal(createWIdDialog(parent_id), text, \
strlist, caption, options); }
-void detailedErrorWId(WId parent_id, const QString &text,
+void detailedErrorWId(WId parent_id, const QString &text,
const QString &details,
const QString &caption, Options options)
{
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Error") : caption);
- dialog->setObjectName(QStringLiteral("error"));
-
- QPushButton *detailsButton = new QPushButton;
- detailsButton->setObjectName(QStringLiteral("detailsButton"));
- detailsButton->setText(i18n("&Details") + QStringLiteral(" >>"));
- detailsButton->setIcon(QIcon::fromTheme(QStringLiteral("help-about")));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->addButton(detailsButton, QDialogButtonBox::HelpRole);
- buttonBox->addButton(QDialogButtonBox::Ok);
- buttonBox->button(QDialogButtonBox::Ok)->setFocus();
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- createKMessageBox(dialog, buttonBox, QMessageBox::Critical, text, QStringList(), \
QString(), 0, options, details); + \
detailedErrorInternal(createWIdDialog(parent_id), text, details, caption, options); \
}
void sorryWId(WId parent_id, const QString &text,
@@ -1349,27 +1247,7 @@ void detailedSorryWId(WId parent_id, const QString &text,
const QString &details,
const QString &caption, Options options)
{
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Sorry") : caption);
- dialog->setObjectName(QStringLiteral("sorry"));
-
- QPushButton *detailsButton = new QPushButton;
- detailsButton->setObjectName(QStringLiteral("detailsButton"));
- detailsButton->setText(i18n("&Details") + QStringLiteral(" >>"));
- detailsButton->setIcon(QIcon::fromTheme(QStringLiteral("help-about")));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->addButton(detailsButton, QDialogButtonBox::HelpRole);
- buttonBox->addButton(QDialogButtonBox::Ok);
- buttonBox->button(QDialogButtonBox::Ok)->setFocus();
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- createKMessageBox(dialog, buttonBox, QMessageBox::Warning, text, QStringList(), \
QString(), 0, options, details); + \
detailedSorryInternal(createWIdDialog(parent_id), text, details, caption, options); \
}
void informationWId(WId parent_id,const QString &text,
@@ -1381,69 +1259,16 @@ void informationWId(WId parent_id,const QString &text,
void informationListWId(WId parent_id,const QString &text, const QStringList & \
strlist,
const QString &caption, const QString &dontShowAgainName, \
Options options) {
- if ( !shouldBeShownContinue(dontShowAgainName) ) {
- return;
- }
-
- QWidget* parent = QWidget::find( parent_id );
- QDialog *dialog = new QDialog(parent, Qt::Dialog);
- dialog->setWindowTitle(caption.isEmpty() ? i18n("Information") : caption);
- dialog->setObjectName(QStringLiteral("information"));
-
- QDialogButtonBox *buttonBox = new QDialogButtonBox(dialog);
- buttonBox->setStandardButtons(QDialogButtonBox::Ok);
-
- applyOptions( dialog, options );
- if ( parent == NULL && parent_id ) {
- setMainWindow( dialog, parent_id );
- }
-
- bool checkboxResult = false;
-
- createKMessageBox(dialog, buttonBox, QMessageBox::Information, text, strlist,
- dontShowAgainName.isEmpty() ? QString() : i18n("Do not show this message \
again"),
- &checkboxResult, options);
-
- if (checkboxResult) {
- saveDontShowAgainContinue(dontShowAgainName);
- }
+ informationListInternal(createWIdDialog(parent_id), text, strlist, caption, \
dontShowAgainName, options); }
-ButtonCode messageBoxWId( WId parent_id, DialogType type, const QString &text,
+ButtonCode messageBoxWId(WId parent_id, DialogType type, const QString &text,
const QString &caption, const KGuiItem &buttonYes,
const KGuiItem &buttonNo, const KGuiItem &buttonCancel,
- const QString &dontShow, Options options )
+ const QString &dontShow, Options options)
{
- switch (type) {
- case QuestionYesNo:
- return questionYesNoWId( parent_id,
- text, caption, buttonYes, buttonNo, \
dontShow, options );
- case QuestionYesNoCancel:
- return questionYesNoCancelWId( parent_id,
- text, caption, buttonYes, buttonNo, \
buttonCancel, dontShow, options );
- case WarningYesNo:
- return warningYesNoWId( parent_id,
- text, caption, buttonYes, buttonNo, \
dontShow, options );
- case WarningContinueCancel:
- return warningContinueCancelWId( parent_id,
- text, caption, \
KGuiItem(buttonYes.text()), buttonCancel, dontShow, options );
- case WarningYesNoCancel:
- return warningYesNoCancelWId( parent_id,
- text, caption, buttonYes, buttonNo, \
buttonCancel, dontShow, options );
- case Information:
- informationWId( parent_id,
- text, caption, dontShow, options );
- return KMessageBox::Ok;
-
- case Error:
- errorWId( parent_id, text, caption, options );
- return KMessageBox::Ok;
-
- case Sorry:
- sorryWId( parent_id, text, caption, options );
- return KMessageBox::Ok;
- }
- return KMessageBox::Cancel;
+ return messageBoxInternal(createWIdDialog(parent_id), type, text, caption,
+ buttonYes, buttonNo, buttonCancel, dontShow, options);
}
} // namespace
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic