| # kdecore Library API Documentation
Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Source Files

# NET Class Reference

Base namespace class. More...

`#include <netwm_def.h>`

List of all members.

## Public Types
enum | Role { Client, WindowManager }
| Application role. More...
enum | WindowType { Unknown = -1, Normal = 0, Desktop = 1, Dock = 2, Toolbar = 3, Menu = 4, Dialog = 5, Override = 6, TopMenu = 7, Tool = Toolbar }
| Window type. More...
enum | State { Modal = 1<<0, Sticky = 1<<1, MaxVert = 1<<2, MaxHoriz = 1<<3, Max = MaxVert | MaxHoriz, Shaded = 1<<4, SkipTaskbar = 1<<5, StaysOnTop = 1<<6, SkipPager = 1<<7 }
| Window state. More...
enum | Direction { TopLeft = 0, Top = 1, TopRight = 2, Right = 3, BottomRight = 4, Bottom = 5, BottomLeft = 6, Left = 7, Move = 8 }
| Direction for WMMoveResize. More...
enum | MappingState { Visible, Withdrawn, Iconic }
| Client window mapping state. More...
enum | Property { Supported = 1<<0, ClientList = 1<<1, ClientListStacking = 1<<2, NumberOfDesktops = 1<<3, DesktopGeometry = 1<<4, DesktopViewport = 1<<5, CurrentDesktop = 1<<6, DesktopNames = 1<<7, ActiveWindow = 1<<8, WorkArea = 1<<9, SupportingWMCheck = 1<<10, VirtualRoots = 1<<11, KDESystemTrayWindows = 1<<12, CloseWindow = 1<<13, WMMoveResize = 1<<14, WMName = 1<<15, WMVisibleName = 1<<16, WMDesktop = 1<<17, WMWindowType = 1<<18, WMState = 1<<19, WMStrut = 1<<20, WMIconGeometry = 1<<21, WMIcon = 1<<22, WMPid = 1<<23, WMHandledIcons = 1<<24, WMPing = 1<<25, WMKDESystemTrayWinFor = 1<<26, XAWMState = 1<<27, WMKDEFrameStrut = 1<<28, WMIconName = 1<<29, WMVisibleIconName = 1<<30, WMGeometry = 1<<31 }
| Supported properties. More...

## Detailed Description

Base namespace class.

The NET API is an implementation of the NET Window Manager Specification.

This class is the base class for the NETRootInfo and NETWinInfo classes, which are used to retrieve and modify the properties of windows. To keep the namespace relatively clean, all enums are defined here.

See also:
  http://www.freedesktop.org/standards/wm-spec/

Definition at line 190 of file netwm_def.h.

## Member Enumeration Documentation

enum NET::Role

| Application role. This is used internally to determine how several action should be performed (if at all). Client indicates that the application is a client application. WindowManager indicates that the application is a window manager application. Definition at line 202 of file netwm_def.h.

enum NET::WindowType

| Window type. Unknown indicates that the window did not define a window type. Normal indicates that this is a normal, top-level window. Windows with Unknown window type or WM_TRANSIENT_FOR unset must be taken as this type. Desktop indicates a desktop feature. This can include a single window containing desktop icons with the same dimensions as the screen, allowing the desktop environment to have full control of the desktop, without the need for proxying root window clicks. Dock indicates a dock or panel feature. Typically a window manager would keep such windows on top of all other windows. Toolbar and Menu indicate toolbar and pinnable menu windows, respectively. Dialog indicates that this is a dialog window. If _NET_WM_WINDOW_TYPE is not set, then windows with WM_TRANSIENT_FOR set must be taken as this type. Override indicates that this window wants to have no Window Manager decorations. This is for windows that would normally use either override_redirect or Motif hints to give no decorations. This is a KDE extension to the _NET_WM_WINDOW_TYPE mechanism. TopMenu indicates a toplevel menu (AKA macmenu). This is a KDE extension to the _NET_WM_WINDOW_TYPE mechanism. Definition at line 237 of file netwm_def.h.

enum NET::State

| Window state. Modal ndicates that this is a modal dialog box. The WM_TRANSIENT_FOR hint MUST be set to indicate which window the dialog is a modal for, or set to the root window if the dialog is a modal for its window group. Sticky indicates that the Window Manager SHOULD keep the window's position fixed on the screen, even when the virtual desktop scrolls. Max{Vert,Horiz} indicates that the window is {vertically,horizontally} maximized. Max is more convenient than MaxVert | MaxHoriz. Shaded indicates that the window is shaded (rolled-up). SkipTaskbar indicates that a window should not be included on a taskbar. StaysOnTop indicate that a window should be kept on top of other windows. SkipPager indicates that a window should not be included on a pager. Definition at line 274 of file netwm_def.h.

enum NET::Direction

| Direction for WMMoveResize. When a client wants the Window Manager to start a WMMoveResize, it should specify one of: TopLeft Top TopRight Right BottomRight Bottom BottomLeft Left Move (for movement only) Definition at line 303 of file netwm_def.h.

enum NET::MappingState

| Client window mapping state. The class automatically watches the mapping state of the client windows, and uses the mapping state to determine how to set/change different properties. Visible indicates the client window is visible to the user. Withdrawn indicates that neither the client window nor its icon is visible. Iconic indicates that the client window is not visible, but its icon is. Definition at line 327 of file netwm_def.h.

enum NET::Property

| Supported properties. Clients and Window Managers must define which properties/protocols it wants to support. Root/Desktop window properties and protocols: Supported ClientList ClientListStacking NumberOfDesktops DesktopGeometry DesktopViewport CurrentDesktop DesktopNames ActiveWindow WorkArea SupportingWMCheck VirtualRoots CloseWindow WMMoveResize Client window properties and protocols: WMName WMVisibleName WMDesktop WMWindowType WMState WMStrut WMIconGeometry WMIcon WMPid ICCCM properties (provided for convenience): XAWMState Extended KDE protocols and properties (NOT STANDARD): KDESystemTrayWindows WMKDESystemTrayWinFor WMKDEFrameStrut Definition at line 377 of file netwm_def.h.

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

- netwm_def.h

This file is part of the documentation for kdelibs Version 3.1.5.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Jan 28 12:50:04 2004 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001