00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _KMESSAGEBOX_H_
00020 #define _KMESSAGEBOX_H_
00021
00022 #include <qstring.h>
00023 #include <qmessagebox.h>
00024
00025 #include <kguiitem.h>
00026 #include <kstdguiitem.h>
00027
00028 class QWidget;
00029 class QStringList;
00030 class KConfig;
00031 class KDialogBase;
00032
00044 class KDEUI_EXPORT KMessageBox
00045 {
00046 public:
00050 enum ButtonCode
00051 {
00052 Ok = 1,
00053 Cancel = 2,
00054 Yes = 3,
00055 No = 4,
00056 Continue = 5
00057 };
00058
00059 enum DialogType
00060 {
00061 QuestionYesNo = 1,
00062 WarningYesNo = 2,
00063 WarningContinueCancel = 3,
00064 WarningYesNoCancel = 4,
00065 Information = 5,
00066
00067 Sorry = 7,
00068 Error = 8,
00069 QuestionYesNoCancel = 9
00070 };
00071
00079 enum OptionsType
00080 {
00081 Notify = 1,
00082 AllowLink = 2,
00083 Dangerous = 4
00084 };
00085
00116 static int questionYesNo(QWidget *parent,
00117 const QString &text,
00118 const QString &caption = QString::null,
00119 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00120 const KGuiItem &buttonNo = KStdGuiItem::no(),
00121 const QString &dontAskAgainName = QString::null,
00122 int options = Notify);
00128 static int questionYesNoWId(WId parent_id,
00129 const QString &text,
00130 const QString &caption = QString::null,
00131 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00132 const KGuiItem &buttonNo = KStdGuiItem::no(),
00133 const QString &dontAskAgainName = QString::null,
00134 int options = Notify);
00167 static int questionYesNoCancel(QWidget *parent,
00168 const QString &text,
00169 const QString &caption = QString::null,
00170 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00171 const KGuiItem &buttonNo = KStdGuiItem::no(),
00172 const QString &dontAskAgainName = QString::null,
00173 int options = Notify);
00174
00180 static int questionYesNoCancelWId(WId parent_id,
00181 const QString &text,
00182 const QString &caption = QString::null,
00183 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00184 const KGuiItem &buttonNo = KStdGuiItem::no(),
00185 const QString &dontAskAgainName = QString::null,
00186 int options = Notify);
00187
00222 static int questionYesNoList(QWidget *parent,
00223 const QString &text,
00224 const QStringList &strlist,
00225 const QString &caption = QString::null,
00226 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00227 const KGuiItem &buttonNo = KStdGuiItem::no(),
00228 const QString &dontAskAgainName = QString::null,
00229 int options = Notify);
00230
00236 static int questionYesNoListWId(WId parent_id,
00237 const QString &text,
00238 const QStringList &strlist,
00239 const QString &caption = QString::null,
00240 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00241 const KGuiItem &buttonNo = KStdGuiItem::no(),
00242 const QString &dontAskAgainName = QString::null,
00243 int options = Notify);
00244
00275 static int warningYesNo(QWidget *parent,
00276 const QString &text,
00277 const QString &caption = QString::null,
00278 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00279 const KGuiItem &buttonNo = KStdGuiItem::no(),
00280 const QString &dontAskAgainName = QString::null,
00281 int options = Notify | Dangerous);
00282
00288 static int warningYesNoWId(WId parent_id,
00289 const QString &text,
00290 const QString &caption = QString::null,
00291 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00292 const KGuiItem &buttonNo = KStdGuiItem::no(),
00293 const QString &dontAskAgainName = QString::null,
00294 int options = Notify | Dangerous);
00295
00330 static int warningYesNoList(QWidget *parent,
00331 const QString &text,
00332 const QStringList &strlist,
00333 const QString &caption = QString::null,
00334 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00335 const KGuiItem &buttonNo = KStdGuiItem::no(),
00336 const QString &dontAskAgainName = QString::null,
00337 int options = Notify | Dangerous);
00338
00344 static int warningYesNoListWId(WId parent_id,
00345 const QString &text,
00346 const QStringList &strlist,
00347 const QString &caption = QString::null,
00348 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00349 const KGuiItem &buttonNo = KStdGuiItem::no(),
00350 const QString &dontAskAgainName = QString::null,
00351 int options = Notify | Dangerous);
00352
00382 static int warningContinueCancel(QWidget *parent,
00383 const QString &text,
00384 const QString &caption = QString::null,
00385 const KGuiItem &buttonContinue = KStdGuiItem::cont(),
00386 const QString &dontAskAgainName = QString::null,
00387 int options = Notify);
00388
00394 static int warningContinueCancelWId(WId parent_id,
00395 const QString &text,
00396 const QString &caption = QString::null,
00397 const KGuiItem &buttonContinue = KStdGuiItem::cont(),
00398 const QString &dontAskAgainName = QString::null,
00399 int options = Notify);
00400
00434 static int warningContinueCancelList(QWidget *parent,
00435 const QString &text,
00436 const QStringList &strlist,
00437 const QString &caption = QString::null,
00438 const KGuiItem &buttonContinue = KStdGuiItem::cont(),
00439 const QString &dontAskAgainName = QString::null,
00440 int options = Notify);
00441
00447 static int warningContinueCancelListWId(WId parent_id,
00448 const QString &text,
00449 const QStringList &strlist,
00450 const QString &caption = QString::null,
00451 const KGuiItem &buttonContinue = KStdGuiItem::cont(),
00452 const QString &dontAskAgainName = QString::null,
00453 int options = Notify);
00454
00491 static int warningYesNoCancel(QWidget *parent,
00492 const QString &text,
00493 const QString &caption = QString::null,
00494 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00495 const KGuiItem &buttonNo = KStdGuiItem::no(),
00496 const QString &dontAskAgainName = QString::null,
00497 int options = Notify);
00498
00504 static int warningYesNoCancelWId(WId parent_id,
00505 const QString &text,
00506 const QString &caption = QString::null,
00507 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00508 const KGuiItem &buttonNo = KStdGuiItem::no(),
00509 const QString &dontAskAgainName = QString::null,
00510 int options = Notify);
00511
00553 static int warningYesNoCancelList(QWidget *parent,
00554 const QString &text,
00555 const QStringList &strlist,
00556 const QString &caption = QString::null,
00557 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00558 const KGuiItem &buttonNo = KStdGuiItem::no(),
00559 const QString &dontAskAgainName = QString::null,
00560 int options = Notify);
00561
00567 static int warningYesNoCancelListWId(WId parent_id,
00568 const QString &text,
00569 const QStringList &strlist,
00570 const QString &caption = QString::null,
00571 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00572 const KGuiItem &buttonNo = KStdGuiItem::no(),
00573 const QString &dontAskAgainName = QString::null,
00574 int options = Notify);
00575
00599 static void error(QWidget *parent,
00600 const QString &text,
00601 const QString &caption = QString::null,
00602 int options = Notify);
00603
00610 static void errorWId(WId parent_id,
00611 const QString &text,
00612 const QString &caption = QString::null,
00613 int options = Notify);
00614
00615
00642 static void detailedError(QWidget *parent,
00643 const QString &text,
00644 const QString &details,
00645 const QString &caption = QString::null,
00646 int options = Notify);
00647
00653 static void detailedErrorWId(WId parent_id,
00654 const QString &text,
00655 const QString &details,
00656 const QString &caption = QString::null,
00657 int options = Notify);
00658
00669 static void queuedDetailedError( QWidget *parent,
00670 const QString &text,
00671 const QString &details,
00672 const QString &caption = QString::null);
00673
00679 static void queuedDetailedErrorWId( WId parent_id,
00680 const QString &text,
00681 const QString &details,
00682 const QString &caption = QString::null);
00683
00706 static void sorry(QWidget *parent,
00707 const QString &text,
00708 const QString &caption = QString::null,
00709 int options = Notify);
00710
00716 static void sorryWId(WId parent_id,
00717 const QString &text,
00718 const QString &caption = QString::null,
00719 int options = Notify);
00720
00749 static void detailedSorry(QWidget *parent,
00750 const QString &text,
00751 const QString &details,
00752 const QString &caption = QString::null,
00753 int options = Notify);
00754
00760 static void detailedSorryWId(WId parent_id,
00761 const QString &text,
00762 const QString &details,
00763 const QString &caption = QString::null,
00764 int options = Notify);
00765
00792 static void information(QWidget *parent,
00793 const QString &text,
00794 const QString &caption = QString::null,
00795 const QString &dontShowAgainName = QString::null,
00796 int options = Notify);
00797
00803 static void informationWId(WId parent_id,
00804 const QString &text,
00805 const QString &caption = QString::null,
00806 const QString &dontShowAgainName = QString::null,
00807 int options = Notify);
00808
00839 static void informationList(QWidget *parent,
00840 const QString &text,
00841 const QStringList & strlist,
00842 const QString &caption = QString::null,
00843 const QString &dontShowAgainName = QString::null,
00844 int options = Notify);
00845
00851 static void informationListWId(WId parent_id,
00852 const QString &text,
00853 const QStringList & strlist,
00854 const QString &caption = QString::null,
00855 const QString &dontShowAgainName = QString::null,
00856 int options = Notify);
00857
00862 static void enableAllMessages();
00863
00871 static void enableMessage(const QString &dontShowAgainName);
00872
00892 static void about(QWidget *parent,
00893 const QString& text,
00894 const QString& caption = QString::null,
00895 int options = Notify);
00896
00921 static int messageBox( QWidget *parent, DialogType type, const QString &text,
00922 const QString &caption,
00923 const KGuiItem &buttonYes,
00924 const KGuiItem &buttonNo,
00925 const QString &dontShowAskAgainName,
00926 int options = Notify);
00927
00946
00947 static int messageBox( QWidget *parent, DialogType type, const QString &text,
00948 const QString &caption = QString::null,
00949 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00950 const KGuiItem &buttonNo = KStdGuiItem::no(),
00951 int options = Notify);
00952
00958 static int messageBoxWId( WId parent_id, DialogType type, const QString &text,
00959 const QString &caption = QString::null,
00960 const KGuiItem &buttonYes = KStdGuiItem::yes(),
00961 const KGuiItem &buttonNo = KStdGuiItem::no(),
00962 const QString &dontShowAskAgainName = QString::null,
00963 int options = Notify);
00964
00977 static void queuedMessageBox( QWidget *parent,
00978 DialogType type, const QString &text,
00979 const QString &caption,
00980 int options );
00981
00987 static void queuedMessageBoxWId( WId parent_id,
00988 DialogType type, const QString &text,
00989 const QString &caption,
00990 int options );
00991
00998 static void queuedMessageBox( QWidget *parent,
00999 DialogType type, const QString &text,
01000 const QString &caption = QString::null );
01001
01007 static void queuedMessageBoxWId( WId parent_id,
01008 DialogType type, const QString &text,
01009 const QString &caption = QString::null );
01010
01020 static bool shouldBeShownYesNo(const QString &dontShowAgainName,
01021 ButtonCode &result);
01029 static bool shouldBeShownContinue(const QString &dontShowAgainName);
01030
01039 static void saveDontShowAgainYesNo(const QString &dontShowAgainName,
01040 ButtonCode result);
01041
01049 static void saveDontShowAgainContinue(const QString &dontShowAgainName);
01050
01056 static void setDontShowAskAgainConfig(KConfig* cfg);
01057
01079 static int createKMessageBox(KDialogBase *dialog, QMessageBox::Icon icon,
01080 const QString &text, const QStringList &strlist,
01081 const QString &ask, bool *checkboxReturn,
01082 int options, const QString &details=QString::null);
01083
01108 static int createKMessageBox(KDialogBase *dialog, QPixmap icon,
01109 const QString &text, const QStringList &strlist,
01110 const QString &ask, bool *checkboxReturn,
01111 int options, const QString &details=QString::null,
01112 QMessageBox::Icon notifyType=QMessageBox::Information);
01113
01114 private:
01115 static KConfig* againConfig;
01116 };
01117
01118 #endif