00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
#include <qdialog.h>
00013
#include <qlayout.h>
00014
#include <qlabel.h>
00015
#include <qtextedit.h>
00016
#include <qfont.h>
00017
#include <qpushbutton.h>
00018
#include <qpixmap.h>
00019
00020
00021
#include "alertDialog.h"
00022
#include "../../config.h"
00023
00024
00025 AlertDialog::AlertDialog( QString message,
00026 QString description,
00027 QString alertIconName,
00028
QWidget* parent,
00029
const char* name ) :
00030
QDialog(parent, name, true )
00031 {
00032
00033
00034
topFrame =
new QFrame(
this );
00035
00036
alertText =
new QLabel(
topFrame );
00037
alertText->setText( message );
00038
00039 QFont alertFont =
alertText->font();
00040 alertFont.setWeight(QFont::Bold);
00041
alertText->setFont( alertFont );
00042
00043
alertIcon =
new QPixmap(QString(
IMAGE_PATH)+alertIconName);
00044
alertIconLabel =
new QLabel(
topFrame );
00045
alertIconLabel->setPixmap( *
alertIcon );
00046
00047
descriptionText =
new QTextEdit(
this );
00048
descriptionText->setReadOnly(
true);
00049
descriptionText->setText( description );
00050
00051
bottomFrame =
new QFrame(
this );
00052
okButton =
new QPushButton( tr(
"OK"),
bottomFrame );
00053
okButton->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed );
00054
okButton->setDefault(
true);
00055
okButton->setFocus();
00056
00057 connect(
okButton, SIGNAL(clicked()), SLOT(accept()) );
00058
00059
00060
gridTop =
new QGridLayout(
topFrame, 1, 2, 0);
00061
gridTop->addWidget(
alertText, 0, 0 );
00062
gridTop->addWidget(
alertIconLabel, 0, 1, Qt::AlignRight );
00063
00064
gridBottom =
new QGridLayout(
bottomFrame, 1, 1, 0);
00065
gridBottom->addWidget(
okButton, 0, 0 );
00066
00067
gridFull =
new QGridLayout(
this, 3, 1, 0);
00068
gridFull->addWidget(
topFrame, 0, 0);
00069
gridFull->addWidget(
descriptionText, 1, 0);
00070
gridFull->addWidget(
bottomFrame, 2, 0);
00071
00072
gridFull->setRowStretch( 1, 1 );
00073
gridFull->setResizeMode( QLayout::FreeResize );
00074
gridFull->setMargin(
WIDGET_SPACING);
00075
gridFull->setSpacing(
WIDGET_SPACING);
00076
00077 setMinimumWidth(300);
00078 setMaximumWidth(300);
00079
00080
00081 setCaption( message );
00082
00083
00084 this->show();
00085 setFixedSize(size());
00086
00087 }
00088
00089 AlertDialog::~AlertDialog()
00090 {
00091
delete alertIcon;
00092 }
00093