kdeui Library API Documentation

KPassivePopup Class Reference

A dialog-like popup that displays messages without interupting the user. More...

#include <kpassivepopup.h>

Inheritance diagram for KPassivePopup:

QFrame List of all members.

Public Slots

void setTimeout (int delay)
virtual void show ()

Signals

void clicked ()
void clicked (QPoint pos)

Public Methods

 KPassivePopup (QWidget *parent=0, const char *name=0, WFlags f=0)
 KPassivePopup (WId parent, const char *name=0, WFlags f=0)
virtual ~KPassivePopup ()
void setView (QWidget *child)
void setView (const QString &caption, const QString &text=QString::null)
virtual void setView (const QString &caption, const QString &text, const QPixmap &icon)
QVBoxstandardView (const QString &caption, const QString &text, const QPixmap &icon, QWidget *parent=0L)
QWidgetview () const
int timeout () const
virtual void setAutoDelete (bool autoDelete)
bool autoDelete () const

Static Public Methods

KPassivePopup * message (const QString &text, QWidget *parent, const char *name=0)
KPassivePopup * message (const QString &caption, const QString &text, QWidget *parent, const char *name=0)
KPassivePopup * message (const QString &caption, const QString &text, const QPixmap &icon, QWidget *parent, const char *name=0, int timeout=-1)
KPassivePopup * message (const QString &caption, const QString &text, const QPixmap &icon, WId parent, const char *name=0, int timeout=-1)

Protected Methods

virtual void positionSelf ()
virtual void hideEvent (QHideEvent *)
void moveNear (QRect target)
virtual void mouseReleaseEvent (QMouseEvent *e)
QRect defaultArea () const

Detailed Description

A dialog-like popup that displays messages without interupting the user.

The simplest uses of KPassivePopup are by using the various message() static methods. The position the popup appears at depends on the type of the parent window:

The most basic use of KPassivePopup displays a popup containing a piece of text:
    KPassivePopup::message( &quot;This is the message&quot;, this );
We can create popups with titles and icons too, as this example shows:
    QPixmap px;
    px.load( &quot;hi32-app-logtracker.png&quot; );
    KPassivePopup::message( &quot;Some title&quot;, &quot;This is the main text&quot;, px, this );
For more control over the popup, you can use the setView(QWidget *) method to create a custom popup.
    KPassivePopup *pop = new KPassivePopup( parent );

    QVBox *vb = new QVBox( pop );
    (void) new QLabel( &quot;&lt;b>Isn't this great?&lt;/b>&quot;, vb );

    QHBox *box = new QHBox( vb );
    (void) new QPushButton( &quot;Yes&quot;, box );
    (void) new QPushButton( &quot;No&quot;, box );

    pop->setView( vb );
    pop->show();

Version:
Id:
kpassivepopup.h,v 1.16 2003/09/09 12:40:58 bhards Exp
Since:
3.1
Author:
Richard Moore, rich@kde.org

Definition at line 60 of file kpassivepopup.h.


Constructor & Destructor Documentation

KPassivePopup::KPassivePopup QWidget   parent = 0,
const char *    name = 0,
WFlags    f = 0
 

Creates a popup for the specified widget.

Definition at line 34 of file kpassivepopup.cpp.

Referenced by message().

KPassivePopup::KPassivePopup WId    parent,
const char *    name = 0,
WFlags    f = 0
 

Creates a popup for the specified window.

Definition at line 42 of file kpassivepopup.cpp.

KPassivePopup::~KPassivePopup   [virtual]
 

Cleans up.

Definition at line 58 of file kpassivepopup.cpp.


Member Function Documentation

void KPassivePopup::setView QWidget   child
 

Sets the main view to be the specified widget (which must be a child of the popup).

Definition at line 62 of file kpassivepopup.cpp.

References QBoxLayout::addWidget(), KDialog::marginHint(), and KDialog::spacingHint().

Referenced by message(), and setView().

void KPassivePopup::setView const QString   caption,
const QString   text = QString::null
 

Creates a standard view then calls setView(QWidget*) .

Definition at line 116 of file kpassivepopup.cpp.

References setView().

void KPassivePopup::setView const QString   caption,
const QString   text,
const QPixmap   icon
[virtual]
 

Creates a standard view then calls setView(QWidget*) .

Definition at line 73 of file kpassivepopup.cpp.

References setView(), and standardView().

QVBox * KPassivePopup::standardView const QString   caption,
const QString   text,
const QPixmap   icon,
QWidget   parent = 0L
 

Returns a widget that is used as standard view if one of the setView() methods taking the QString arguments is used.

You can use the returned widget to customize the passivepopup while keeping the look similar to the "standard" passivepopups.

After customizing the widget, pass it to setView( QWidget* )

Parameters:
caption  The window caption (title) on the popup
text  The text for the popup
icon  The icon to use for the popup
parent  The parent widget used for the returned QVBox. If left 0L, then "this", i.e. the passive popup object will be used.
Returns:
a QVBox containing the given arguments, looking like the standard passivepopups.
See also:
setView( QWidget * ) , setView( const QString&, const QString& ) , setView( const QString&, const QString&, const QPixmap& )

Definition at line 80 of file kpassivepopup.cpp.

References QString::isEmpty(), QPixmap::isNull(), QLabel::setAlignment(), QFont::setBold(), QLabel::setFont(), QLabel::setPixmap(), QHBox::setSpacing(), QHBox::setStretchFactor(), and KDialog::spacingHint().

Referenced by setView().

QWidget* KPassivePopup::view   const [inline]
 

Returns the main view.

Definition at line 121 of file kpassivepopup.h.

int KPassivePopup::timeout   const [inline]
 

Returns the delay before the popup is removed automatically.

Definition at line 126 of file kpassivepopup.h.

Referenced by message().

void KPassivePopup::setAutoDelete bool    autoDelete [virtual]
 

Enables / disables auto-deletion of this widget when the timeout occurs.

The default is false. If you use the class-methods message(), auto-delection is turned on by default.

Definition at line 128 of file kpassivepopup.cpp.

References autoDelete().

Referenced by message().

bool KPassivePopup::autoDelete   const [inline]
 

Returns:
true if the widget auto-deletes itself when the timeout occurs.
See also:
setAutoDelete

Definition at line 140 of file kpassivepopup.h.

Referenced by setAutoDelete().

KPassivePopup * KPassivePopup::message const QString   text,
QWidget   parent,
const char *    name = 0
[static]
 

Convenience method that displays popup with the specified message beside the icon of the specified widget.

Note that the returned object is destroyed when it is hidden.

See also:
setAutoDelete

Definition at line 278 of file kpassivepopup.cpp.

Referenced by message().

KPassivePopup * KPassivePopup::message const QString   caption,
const QString   text,
QWidget   parent,
const char *    name = 0
[static]
 

Convenience method that displays popup with the specified caption and message beside the icon of the specified widget.

Note that the returned object is destroyed when it is hidden.

See also:
setAutoDelete

Definition at line 283 of file kpassivepopup.cpp.

References message().

KPassivePopup * KPassivePopup::message const QString   caption,
const QString   text,
const QPixmap   icon,
QWidget   parent,
const char *    name = 0,
int    timeout = -1
[static]
 

Convenience method that displays popup with the specified icon, caption and message beside the icon of the specified widget.

Note that the returned object is destroyed when it is hidden.

See also:
setAutoDelete

Definition at line 265 of file kpassivepopup.cpp.

References hideDelay, KPassivePopup(), setAutoDelete(), setView(), show(), and timeout().

KPassivePopup * KPassivePopup::message const QString   caption,
const QString   text,
const QPixmap   icon,
WId    parent,
const char *    name = 0,
int    timeout = -1
[static]
 

Convenience method that displays popup with the specified icon, caption and message beside the icon of the specified window.

Note that the returned object is destroyed when it is hidden.

See also:
setAutoDelete

Definition at line 289 of file kpassivepopup.cpp.

References hideDelay, KPassivePopup(), setAutoDelete(), setView(), show(), and timeout().

void KPassivePopup::setTimeout int    delay [slot]
 

Sets the delay for the popup is removed automatically.

Setting the delay to 0 disables the timeout, if you're doing this, you may want to connect the clicked() signal to the hide() slot. Setting the delay to -1 makes it use the default value.

Definition at line 121 of file kpassivepopup.cpp.

References QTimer::changeInterval(), and QTimer::isActive().

void KPassivePopup::show   [virtual, slot]
 

Reimplemented to reposition the popup.

Definition at line 143 of file kpassivepopup.cpp.

References positionSelf(), and QTimer::start().

Referenced by message().

void KPassivePopup::clicked   [signal]
 

Emitted when the popup is clicked.

Referenced by mouseReleaseEvent().

void KPassivePopup::clicked QPoint    pos [signal]
 

Emitted when the popup is clicked.

void KPassivePopup::positionSelf   [protected, virtual]
 

This method positions the popup.

Definition at line 187 of file kpassivepopup.cpp.

References defaultArea(), NETSize::height, QRect::isNull(), moveNear(), NETRect::pos, QRect::setRect(), NETRect::size, NETSize::width, NETPoint::x, and NETPoint::y.

Referenced by show().

void KPassivePopup::hideEvent QHideEvent   [protected, virtual]
 

Reimplemented to destroy the object when autoDelete() is enabled.

Definition at line 160 of file kpassivepopup.cpp.

References QTimer::stop().

void KPassivePopup::moveNear QRect    target [protected]
 

Moves the popup to be adjacent to the icon of the specified rectangle.

Definition at line 228 of file kpassivepopup.cpp.

References KGlobalSettings::desktopGeometry(), QRect::height(), QRect::topLeft(), QRect::width(), QPoint::x(), and QPoint::y().

Referenced by positionSelf().

void KPassivePopup::mouseReleaseEvent QMouseEvent   e [protected, virtual]
 

Reimplemented to detect mouse clicks.

Definition at line 133 of file kpassivepopup.cpp.

References clicked(), and QMouseEvent::pos().

QRect KPassivePopup::defaultArea   [protected]
 

If no relative window (e.g.

taskbar button, system tray window) is available, use this rectangle (pass it to moveNear()). Basically KWinModule::workArea() with width and height set to 0 so that moveNear uses the upper-left position.

Returns:
The QRect to be passed to moveNear() ifno other is available.

Definition at line 167 of file kpassivepopup.cpp.

References NETRect::pos, QRect::setRect(), NETPoint::x, and NETPoint::y.

Referenced by positionSelf().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kdeui Library Version 3.2.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Feb 4 12:34:27 2004 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2003