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)
 Sets the delay for the popup is removed automatically.

virtual void show ()
 Reimplemented to reposition the popup.


Signals

void clicked ()
 Emitted when the popup is clicked.

void clicked (QPoint pos)
 Emitted when the popup is clicked.


Public Methods

 KPassivePopup (QWidget *parent=0, const char *name=0, WFlags f=0)
 Creates a popup for the specified widget.

 KPassivePopup (WId parent, const char *name=0, WFlags f=0)
 Creates a popup for the specified window.

virtual ~KPassivePopup ()
 Cleans up.

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

void setView (const QString &caption, const QString &text=QString::null)
 Creates a standard view then calls setView(QWidget*) .

virtual void setView (const QString &caption, const QString &text, const QPixmap &icon)
 Creates a standard view then calls setView(QWidget*) .

QVBoxstandardView (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.

QWidgetview () const
 Returns the main view.

int timeout () const
 Returns the delay before the popup is removed automatically.

virtual void setAutoDelete (bool autoDelete)
 Enables / disables auto-deletion of this widget when the timeout occurs.

bool autoDelete () const

Static Public Methods

KPassivePopup * message (const QString &text, QWidget *parent, const char *name=0)
 Convenience method that displays popup with the specified message beside the icon of the specified widget.

KPassivePopup * message (const QString &caption, const QString &text, QWidget *parent, const char *name=0)
 Convenience method that displays popup with the specified caption and message beside the icon of the specified widget.

KPassivePopup * message (const QString &caption, const QString &text, const QPixmap &icon, QWidget *parent, const char *name=0, int timeout=-1)
 Convenience method that displays popup with the specified icon, caption and message beside the icon of the specified widget.

KPassivePopup * message (const QString &caption, const QString &text, const QPixmap &icon, WId parent, const char *name=0, int timeout=-1)
 Convenience method that displays popup with the specified icon, caption and message beside the icon of the specified window.


Protected Methods

virtual void positionSelf ()
 This method positions the popup.

virtual void hideEvent (QHideEvent *)
 Reimplemented to destroy the object when autoDelete() is enabled.

void moveNear (QRect target)
 Moves the popup to be adjacent to the icon of the specified rectangle.

virtual void mouseReleaseEvent (QMouseEvent *e)
 Reimplemented to detect mouse clicks.

QRect defaultArea () const
 If no relative window (e.g.


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( "This is the message", this );
 
We can create popups with titles and icons too, as this example shows:
    QPixmap px;
    px.load( "hi32-app-logtracker.png" );
    KPassivePopup::message( "Some title", "This is the main text", 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( "<b>Isn't this great?</b>", vb );

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

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

Version:
Id:
kpassivepopup.h,v 1.11 2002/11/15 12:29:38 amantia Exp
Since:
3.1
Author:
Richard Moore, rich@kde.org

Definition at line 59 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 28 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 36 of file kpassivepopup.cpp.

KPassivePopup::~KPassivePopup   [virtual]
 

Cleans up.

Definition at line 52 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 56 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 110 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 67 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:
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 74 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 117 of file kpassivepopup.h.

int KPassivePopup::timeout   const [inline]
 

Returns the delay before the popup is removed automatically.

Definition at line 122 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 122 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 136 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 258 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 263 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 245 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 269 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 115 of file kpassivepopup.cpp.

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

void KPassivePopup::show   [virtual, slot]
 

Reimplemented to reposition the popup.

Definition at line 137 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 175 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 154 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 213 of file kpassivepopup.cpp.

References 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 127 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 161 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 kdelibs Version 3.1.0.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Oct 8 12:21:06 2003 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2001