# kdeui Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KPassivePopup Class Reference

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

`#include <kpassivepopup.h>`

Inheritance diagram for KPassivePopup:

[legend]
Collaboration diagram for KPassivePopup:

[legend]
List of all members.

## Public Slots

void | setTimeout (int delay)
virtual void | show ()

## Signals

void | clicked ()
void | clicked (QPoint pos)

## Public Member Functions

| 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)
QVBox * | standardView (const QString &caption, const QString &text, const QPixmap &icon, QWidget *parent=0L)
QWidget * | view () const
int | timeout () const
virtual void | setAutoDelete (bool autoDelete)
bool | autoDelete () const

## Static Public Member Functions

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

## Protected Member Functions

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

## Properties

bool | autoDelete
int | timeout

## 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:

- Normal Windows: The popup is placed adjacent to the icon of the window.
- System Tray Windows: The popup is placed adjact to the system tray window itself.
- Skip Taskbar Windows: The popup is placed adjact to the window itself if it is visible, and at the edge of the desktop otherwise.

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( vb, "<b>Isn't this great?</b>" );

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

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

Version:
  Id
    kpassivepopup.h 345236 2004-09-09 15:23:55Z dfaure

Since:
  3.1

Author:
  Richard Moore, rich@kde.org

Definition at line 62 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(). 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 QLabel::setAlignment(), QFont::setBold(), QLabel::setFont(), QLabel::setPixmap(), QHBox::setSpacing(), and QHBox::setStretchFactor().

Referenced by setView().

QWidget* KPassivePopup::view | ( |  | ) | const`[inline]`

| Returns the main view. Definition at line 125 of file kpassivepopup.h.

int KPassivePopup::timeout | ( |  | ) | const`[inline]`

| Returns the delay before the popup is removed automatically. Definition at line 130 of file kpassivepopup.h.

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. 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 144 of file kpassivepopup.h.

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 276 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 281 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 263 of file kpassivepopup.cpp.

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

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 287 of file kpassivepopup.cpp.

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

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, NETWinInfo::iconGeometry(), QRect::isNull(), NETWinInfo::kdeGeometry(), NETWinInfo::kdeSystemTrayWinFor(), moveNear(), NETRect::pos, QRect::setRect(), NETRect::size, NETWinInfo::state(), 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().

QRect KPassivePopup::defaultArea | ( |  | ) | const`[protected]`

If no relative window (eg 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() if no other is available.

Definition at line 167 of file kpassivepopup.cpp.

References NETRootInfo::activate(), NETRootInfo::currentDesktop(), NETRect::pos, QRect::setRect(), NETRootInfo::workArea(), NETPoint::x, and NETPoint::y.

Referenced by positionSelf().

The documentation for this class was generated from the following files:

- kpassivepopup.h
- kpassivepopup.cpp

This file is part of the documentation for kdeui Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:21:49 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003