kpassivepopup.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
#ifndef KPASSIVEPOPUP_H
00010
#define KPASSIVEPOPUP_H
00011
00012
#include <qframe.h>
00013
00014
#include <kdelibs_export.h>
00015
00016
class QBoxLayout;
00017
class QTimer;
00018
class QLabel;
00019
class QVBox;
00020
00062 class KDEUI_EXPORT KPassivePopup :
public QFrame
00063 {
00064 Q_OBJECT
00065 Q_PROPERTY (
bool autoDelete READ autoDelete WRITE setAutoDelete )
00066 Q_PROPERTY (
int timeout READ timeout WRITE setTimeout )
00067
00068
public:
00072 KPassivePopup(
QWidget *parent=0,
const char *name=0, WFlags f=0 );
00073
00077 KPassivePopup( WId parent,
const char *name=0, WFlags f=0 );
00078
00082
virtual ~KPassivePopup();
00083
00087
void setView(
QWidget *child );
00088
00092
void setView(
const QString &caption,
const QString &text = QString::null );
00093
00097
virtual void setView(
const QString &caption,
const QString &text,
const QPixmap &icon );
00098
00119
QVBox * standardView(
const QString& caption,
const QString& text,
00120
const QPixmap& icon,
QWidget *parent = 0L );
00121
00125 QWidget *view()
const {
return msgView; }
00126
00130 int timeout()
const {
return hideDelay; }
00131
00138
virtual void setAutoDelete(
bool autoDelete );
00139
00144 bool autoDelete()
const {
return m_autoDelete; }
00145
00152
static KPassivePopup *message(
const QString &text,
QWidget *parent,
const char *name=0 );
00153
00160
static KPassivePopup *message(
const QString &caption,
const QString &text,
00161
QWidget *parent,
const char *name=0 );
00162
00169
static KPassivePopup *message(
const QString &caption,
const QString &text,
00170
const QPixmap &icon,
00171
QWidget *parent,
const char *name=0,
int timeout = -1 );
00172
00179
static KPassivePopup *message(
const QString &caption,
const QString &text,
00180
const QPixmap &icon,
00181 WId parent,
const char *name=0,
int timeout = -1 );
00182
00183
public slots:
00190
void setTimeout(
int delay );
00191
00195
virtual void show();
00196
00197 signals:
00201
void clicked();
00202
00206
void clicked(
QPoint pos );
00207
00208
protected:
00212
virtual void positionSelf();
00213
00218
virtual void hideEvent(
QHideEvent * );
00219
00223
void moveNear(
QRect target );
00224
00228
virtual void mouseReleaseEvent(
QMouseEvent *e );
00229
00238
QRect defaultArea() const;
00239
00240 private:
00241
void init();
00242
00243 WId window;
00244
QWidget *msgView;
00245
QBoxLayout *topLayout;
00246
int hideDelay;
00247
QTimer *hideTimer;
00248
00249
QLabel *ttlIcon;
00250
QLabel *ttl;
00251
QLabel *msg;
00252
00253
bool m_autoDelete;
00254
00255
00256 class Private *d;
00257 };
00258
00259 #endif
00260
00261
00262
00263
00264
This file is part of the documentation for kdeui Library Version 3.4.0.