summaryrefslogtreecommitdiffstats
path: root/src/dialogs/qmessagebox.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/dialogs/qmessagebox.h')
-rw-r--r--src/dialogs/qmessagebox.h223
1 files changed, 223 insertions, 0 deletions
diff --git a/src/dialogs/qmessagebox.h b/src/dialogs/qmessagebox.h
new file mode 100644
index 0000000..338525b
--- /dev/null
+++ b/src/dialogs/qmessagebox.h
@@ -0,0 +1,223 @@
+/****************************************************************************
+**
+** Definition of QMessageBox class
+**
+** Created : 950503
+**
+** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
+**
+** This file is part of the dialogs module of the Qt GUI Toolkit.
+**
+** This file may be used under the terms of the GNU General
+** Public License versions 2.0 or 3.0 as published by the Free
+** Software Foundation and appearing in the files LICENSE.GPL2
+** and LICENSE.GPL3 included in the packaging of this file.
+** Alternatively you may (at your option) use any later version
+** of the GNU General Public License if such license has been
+** publicly approved by Trolltech ASA (or its successors, if any)
+** and the KDE Free Qt Foundation.
+**
+** Please review the following information to ensure GNU General
+** Public Licensing requirements will be met:
+** http://trolltech.com/products/qt/licenses/licensing/opensource/.
+** If you are unsure which license is appropriate for your use, please
+** review the following information:
+** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
+** or contact the sales department at sales@trolltech.com.
+**
+** This file may be used under the terms of the Q Public License as
+** defined by Trolltech ASA and appearing in the file LICENSE.QPL
+** included in the packaging of this file. Licensees holding valid Qt
+** Commercial licenses may use this file in accordance with the Qt
+** Commercial License Agreement provided with the Software.
+**
+** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
+** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted
+** herein.
+**
+**********************************************************************/
+
+#ifndef QMESSAGEBOX_H
+#define QMESSAGEBOX_H
+
+#ifndef QT_H
+#include "qdialog.h"
+#endif // QT_H
+
+#ifndef QT_NO_MESSAGEBOX
+
+class QLabel;
+class QPushButton;
+struct QMessageBoxData;
+
+class Q_EXPORT QMessageBox : public QDialog
+{
+ Q_OBJECT
+ Q_ENUMS( Icon )
+ Q_PROPERTY( QString text READ text WRITE setText )
+ Q_PROPERTY( Icon icon READ icon WRITE setIcon )
+ Q_PROPERTY( QPixmap iconPixmap READ iconPixmap WRITE setIconPixmap )
+ Q_PROPERTY( TextFormat textFormat READ textFormat WRITE setTextFormat )
+
+public:
+ enum Icon { NoIcon = 0, Information = 1, Warning = 2, Critical = 3,
+ Question = 4 };
+
+ QMessageBox( QWidget* parent=0, const char* name=0 );
+ QMessageBox( const QString& caption, const QString &text, Icon icon,
+ int button0, int button1, int button2,
+ QWidget* parent=0, const char* name=0, bool modal=TRUE,
+ WFlags f=WStyle_DialogBorder );
+ ~QMessageBox();
+
+ enum { NoButton = 0, Ok = 1, Cancel = 2, Yes = 3, No = 4, Abort = 5,
+ Retry = 6, Ignore = 7, YesAll = 8, NoAll = 9, ButtonMask = 0xff,
+ Default = 0x100, Escape = 0x200, FlagMask = 0x300 };
+
+ static int information( QWidget *parent, const QString &caption,
+ const QString& text,
+ int button0, int button1=0, int button2=0 );
+ static int information( QWidget *parent, const QString &caption,
+ const QString& text,
+ const QString& button0Text = QString::null,
+ const QString& button1Text = QString::null,
+ const QString& button2Text = QString::null,
+ int defaultButtonNumber = 0,
+ int escapeButtonNumber = -1 );
+
+ static int question( QWidget *parent, const QString &caption,
+ const QString& text,
+ int button0, int button1=0, int button2=0 );
+ static int question( QWidget *parent, const QString &caption,
+ const QString& text,
+ const QString& button0Text = QString::null,
+ const QString& button1Text = QString::null,
+ const QString& button2Text = QString::null,
+ int defaultButtonNumber = 0,
+ int escapeButtonNumber = -1 );
+
+ static int warning( QWidget *parent, const QString &caption,
+ const QString& text,
+ int button0, int button1, int button2=0 );
+ static int warning( QWidget *parent, const QString &caption,
+ const QString& text,
+ const QString& button0Text = QString::null,
+ const QString& button1Text = QString::null,
+ const QString& button2Text = QString::null,
+ int defaultButtonNumber = 0,
+ int escapeButtonNumber = -1 );
+
+ static int critical( QWidget *parent, const QString &caption,
+ const QString& text,
+ int button0, int button1, int button2=0 );
+ static int critical( QWidget *parent, const QString &caption,
+ const QString& text,
+ const QString& button0Text = QString::null,
+ const QString& button1Text = QString::null,
+ const QString& button2Text = QString::null,
+ int defaultButtonNumber = 0,
+ int escapeButtonNumber = -1 );
+
+ static void about( QWidget *parent, const QString &caption,
+ const QString& text );
+
+ static void aboutQt( QWidget *parent,
+ const QString& caption=QString::null );
+
+/* OBSOLETE */
+ static int message( const QString &caption,
+ const QString& text,
+ const QString& buttonText=QString::null,
+ QWidget *parent=0, const char * =0 ) {
+ return QMessageBox::information( parent, caption, text,
+ buttonText.isEmpty()
+ ? tr("OK") : buttonText ) == 0;
+ }
+
+/* OBSOLETE */
+ static bool query( const QString &caption,
+ const QString& text,
+ const QString& yesButtonText=QString::null,
+ const QString& noButtonText=QString::null,
+ QWidget *parent=0, const char * = 0 ) {
+ return QMessageBox::information( parent, caption, text,
+ yesButtonText.isEmpty()
+ ? tr("OK") : yesButtonText,
+ noButtonText ) == 0;
+ }
+
+ QString text() const;
+ void setText( const QString &);
+
+ Icon icon() const;
+
+ void setIcon( Icon );
+ void setIcon( const QPixmap & );
+
+ const QPixmap *iconPixmap() const;
+ void setIconPixmap( const QPixmap & );
+
+ QString buttonText( int button ) const;
+ void setButtonText( int button, const QString &);
+
+ void adjustSize();
+
+/* OBSOLETE */
+ static QPixmap standardIcon( Icon icon, GUIStyle );
+
+ static QPixmap standardIcon( Icon icon );
+
+ TextFormat textFormat() const;
+ void setTextFormat( TextFormat );
+
+protected:
+ void resizeEvent( QResizeEvent * );
+ void showEvent( QShowEvent * );
+ void closeEvent( QCloseEvent * );
+ void keyPressEvent( QKeyEvent * );
+ void styleChanged( QStyle& );
+
+private slots:
+ void buttonClicked();
+
+private:
+ void init( int, int, int );
+ int indexOf( int ) const;
+ void resizeButtons();
+ QLabel *label;
+ QMessageBoxData *mbd;
+ void *reserved1;
+ void *reserved2;
+
+private: // Disabled copy constructor and operator=
+#if defined(Q_DISABLE_COPY)
+ QMessageBox( const QMessageBox & );
+ QMessageBox &operator=( const QMessageBox & );
+#endif
+};
+
+/*
+* Macro to be used at the beginning of main(), e.g.
+*
+* #include <qapplication.h>
+* #include <qmessagebox.h>
+* int main( int argc, char**argv )
+* {
+* QT_REQUIRE_VERSION( argc, argv, "3.0.5" )
+* ...
+* }
+*/
+#define QT_REQUIRE_VERSION( argc, argv, str ) { QString s=QString::fromLatin1(str);\
+QString sq=QString::fromLatin1(qVersion()); if ( (sq.section('.',0,0).toInt()<<16)+\
+(sq.section('.',1,1).toInt()<<8)+sq.section('.',2,2).toInt()<(s.section('.',0,0).toInt()<<16)+\
+(s.section('.',1,1).toInt()<<8)+s.section('.',2,2).toInt() ){if ( !qApp){ int c=0; new \
+QApplication(argc,argv);} QString s = QApplication::tr("Executable '%1' requires Qt "\
+ "%2, found Qt %3.").arg(QString::fromLatin1(qAppName())).arg(QString::fromLatin1(\
+str)).arg(QString::fromLatin1(qVersion()) ); QMessageBox::critical( 0, QApplication::tr(\
+"Incompatible Qt Library Error" ), s, QMessageBox::Abort,0 ); qFatal(s.ascii()); }}
+
+
+#endif // QT_NO_MESSAGEBOX
+
+#endif // QMESSAGEBOX_H