00001 #ifndef __qwwtipdialog_h 00002 #define __qwwtipdialog_h 00003 00004 #include <QWidget> 00005 #include <QStringList> 00006 00007 class QAbstractItemModel; 00008 class QTextBrowser; 00009 class QPushButton; 00010 class QCheckBox; 00011 #include <QPersistentModelIndex> 00012 #include <QFrame> 00013 #include <wwglobal.h> 00014 00015 class QwwTipWidgetPrivate; 00021 class Q_WW_EXPORT QwwTipWidget : public QWidget { 00022 Q_OBJECT 00023 Q_PROPERTY(QFrame::Shape canvasFrameShape 00024 READ canvasFrameShape WRITE setCanvasFrameShape) 00025 Q_PROPERTY(bool checkVisible 00026 READ checkIsVisible WRITE setCheckVisible) 00027 Q_PROPERTY(bool closeVisible 00028 READ closeIsVisible WRITE setCloseVisible) 00029 Q_PROPERTY(QStringList tips 00030 READ tips WRITE setTips) 00031 Q_PROPERTY(int currentTip 00032 READ currentTip WRITE setCurrentTip) 00033 public: 00034 QwwTipWidget(const QStringList &list, QWidget *parent=0); 00035 ~QwwTipWidget(); 00036 int currentTip() const; 00037 bool tipsEnabled() const; 00038 QWidget *headerWidget() const; 00039 void setHeaderWidget(QWidget *); 00040 const QPushButton *nextButton() const; 00041 const QPushButton *prevButton() const; 00042 const QPushButton *closeButton() const; 00043 const QTextBrowser *tipCanvas() const; 00044 bool checkIsVisible() const; 00045 bool closeIsVisible() const; 00046 QFrame::Shape canvasFrameShape() const; 00047 const QStringList tips() const; 00048 public slots: 00049 void nextTip(); 00050 void prevTip(); 00051 void setTipsEnabled(bool); 00052 void setCheckVisible(bool); 00053 void setCheckHidden(bool); 00054 void setCloseVisible(bool); 00055 void setCloseHidden(bool); 00056 void setCanvasFrameShape(QFrame::Shape); 00057 void setTips(const QStringList &); 00058 void setCurrentTip(int); 00059 signals: 00060 void tipChanged(int); 00061 void closed(); 00062 protected: 00063 void changeEvent(QEvent *); 00064 private: 00065 QwwTipWidgetPrivate* d_func(); 00066 QwwTipWidgetPrivate* d_func() const; 00067 QwwTipWidgetPrivate *priv; 00068 void initUi(); 00069 void retranslateUi(); 00070 00071 private slots: 00072 void showTip(); 00073 }; 00074 00075 00076 #endif