# class KWin | Class for interaction with the windowmanager. More...
Definition | `#include <kwin.h>`
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

#### Public Types

- struct Info

#### Public Static Methods

- static void setActiveWindow ( WId win)
- static void invokeContextHelp ()
- static void setSystemTrayWindowFor ( WId trayWin, WId forWin )
- static Info info ( WId win )
- static QPixmap icon ( WId win, int width = -1, int height = -1, bool scale = false )
- static void setIcons ( WId win, const QPixmap& icon, const QPixmap& miniIcon )
- static void setType ( WId win, NET::WindowType windowType )
- static void setState ( WId win, unsigned long state )
- static void clearState ( WId win, unsigned long state )
- static void setOnAllDesktops ( WId win, bool b )
- static void setOnDesktop ( WId win, int desktop)
- static void setStrut ( WId win, int left, int right, int top, int bottom )
- static int currentDesktop ()
- static int numberOfDesktops ()
- static void setCurrentDesktop ( int desktop )
- static void iconifyWindow ( WId win, bool animation = true )
- static void deIconifyWindow ( WId win, bool animation = true )
- static void appStarted ()

## Detailed Description

Convenience access to certain properties and features of the window manager.

This class is not supposed to be instantiated. It exists mostly as a namespace for the static member functions.

In KDE-2.0, communication with the window manger is done with the NET-protocol, a common window manager specification designed by various authors of X11 window managers (including those of the KDE project). The full specification can be found in kdebase/kwin/wm-spec/

To access features of the NET-protocol, use the classes NETRootInfo and NETWinInfo.

The purpose of this class is to to provide easy access to the most-commonly used NET-features with a simpler, KDEish interface.

In addition, it encapsulates KDE functionality not yet provided by the NET hints. Currently that is invokeContextHelp() and setSystemTrayWindowFor() only.

void setActiveWindow ( WId win) | ### setActiveWindow

[static]

Set window win to be the active window.

This is a request to the window manager. It may or may not be obeyed.

void invokeContextHelp () | ### invokeContextHelp

[static]

Invoke interactive context help.

void setSystemTrayWindowFor ( WId trayWin, WId forWin ) | ### setSystemTrayWindowFor

[static]

Makes `trayWin` a system tray window for `forWin`.

A system tray window serves as an icon replacement. It's displayed inside the panel's system tray.

Info (struct) | ### Info

Info info ( WId win ) | ### info

[static]

Retrieves information about window `win`.

QPixmap icon ( WId win, int width = -1, int height = -1, bool scale = false ) | ### icon

[static]

Retrieves an icon for window `win`.

If `width` and `height` are specified, the best icon for the requested size is returned.

If `scale` is true, the icon is smooth-scaled to have exactly the requested size.

void setIcons ( WId win, const QPixmap& icon, const QPixmap& miniIcon ) | ### setIcons

[static]

Sets an `icon` and a `miniIcon` on window `win`

void setType ( WId win, NET::WindowType windowType ) | ### setType

[static]

Sets the type of window `win` to `windowType`.

Possible values are NET::Normal, NET::Desktop, NET::Dock, NET::Tool, NET::Menu, NET::Dialog or NET::Override (== no decoration frame)

void setState ( WId win, unsigned long state ) | ### setState

[static]

Sets the state of window `win` to `state`.

Possible values are or'ed combinations of NET::Modal, NET::Sticky, NET::MaxVert, NET::MaxHoriz, NET::Shaded, NET::SkipTaskbar, NET::StaysOnTop

void clearState ( WId win, unsigned long state ) | ### clearState

[static]

Clears the state of window `win` from `state`.

Possible values are or'ed combinations of NET::Modal, NET::Sticky, NET::MaxVert, NET::MaxHoriz, NET::Shaded, NET::SkipTaskbar, NET::StaysOnTop

void setOnAllDesktops ( WId win, bool b ) | ### setOnAllDesktops

[static]

Sets window `win` to be present on all virtual desktops if `is` true. Otherwise the window lives only on one single desktop.

void setOnDesktop ( WId win, int desktop) | ### setOnDesktop

[static]

Move window `win` to desktop `desktop`.

void setStrut ( WId win, int left, int right, int top, int bottom ) | ### setStrut

[static]

Sets the strut of window `win` to `left`, @right, @top, @bottom.

int currentDesktop () | ### currentDesktop

[static]

Convienence function to access the current desktop. See NETRootInfo.

int numberOfDesktops () | ### numberOfDesktops

[static]

Convienence function to access the number of desktops. See NETRootInfo.

void setCurrentDesktop ( int desktop ) | ### setCurrentDesktop

[static]

Convienence function to set the current desktop to `desktop`. See NETRootInfo.

void iconifyWindow ( WId win, bool animation = true ) | ### iconifyWindow

[static]

Iconifies a window. Compatible to XIconifyWindow but has an additional parameter `animation`.

deIconifyWindow()

void deIconifyWindow ( WId win, bool animation = true ) | ### deIconifyWindow

[static]

DeIconifies a window. Compatible to XMapWindow but has an additional parameter `animation`.

iconifyWindow()

void appStarted () | ### appStarted

[static]

Manual notification that a window has mapped. You can use this to control app-starting notification. Usually, items appear in kicker's taskbar to show that an application is starting up. If you do not map a (toplevel) window, then this notification 'button' will not disappear. You can use this as an alternative method in this case.

- Author: s Matthias Ettrich (ettrich@kde.org)
- Generated: root@sparc.ports.openbsd.org on Wed May 2 09:34:58 2001, using kdoc 2.0a53.