00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include <mxcpcSDKInfoDialog.h>
00021 #include <mxcpc_namespace.h>
00022 #include <mxcpc_gui_config.h>
00023
00024 #include <QVBoxLayout>
00025 #include <QLabel>
00026 #include <QPushButton>
00027 #include <QTimer>
00028 #include <QFrame>
00029
00030
00031
00032 mxcpcSDKInfoDialog::mxcpcSDKInfoDialog(QWidget *parent)
00033 : mxcpcDialog(parent) {
00034
00035 QVBoxLayout *layout;
00036 QLabel *label;
00037 QPushButton *button;
00038 QFrame *frame;
00039
00040 setWindowTitle(QString("Information"));
00041
00042 layout = new QVBoxLayout(this);
00043 layout->setSizeConstraint(QLayout::SetFixedSize);
00044 layout->setMargin(0);
00045 layout->setSpacing(0);
00046
00047 label = new QLabel(this);
00048 layout->addWidget(label);
00049 label->setPixmap(QPixmap(":images/sdk_logo.png"));
00050
00051 label = new QLabel(QString("Version"));
00052 layout->addWidget(label);
00053 label->setAlignment(Qt::AlignHCenter);
00054 label->setText(QString(mxcpc::getVersionString()));
00055
00056 frame = new QFrame(this);
00057 layout->addWidget(frame);
00058 frame->setFrameStyle(QFrame::HLine | QFrame::Sunken);
00059
00060 layout->addSpacing(MXCPC_DIALOG_SPACING);
00061
00062 button = new QPushButton(QString("Close"), this);
00063 layout->addWidget(button, 0, Qt::AlignHCenter);
00064 button->setDefault(true);
00065 button->setSizePolicy(QSizePolicy(QSizePolicy::Fixed,
00066 QSizePolicy::Fixed));
00067 QObject::connect(button, SIGNAL(clicked(void)),
00068 this, SLOT(processCloseClicked(void)));
00069
00070 AutoCloseTimer = new QTimer(this);
00071 QObject::connect(AutoCloseTimer, SIGNAL(timeout(void)),
00072 this, SLOT(hide(void)));
00073
00074 layout->addSpacing(MXCPC_DIALOG_SPACING);
00075 }
00076
00077
00078
00079 void mxcpcSDKInfoDialog::hideLater(int msecs) {
00080
00081 if(msecs < 1) msecs = 4000;
00082
00083 AutoCloseTimer->setSingleShot(true);
00084 AutoCloseTimer->start(msecs);
00085 }
00086
00087
00088 void mxcpcSDKInfoDialog::processCloseClicked(void) {
00089
00090 hide();
00091 }