class NETWinInfo

Common API for application window properties/protocols. More...

Definition#include <netwm.h>
InheritsNET [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods

Public Members

Protected Methods


Detailed Description

Common API for application window properties/protocols.

The NETWinInfo class provides a common API for clients and window managers to set/read/change properties on an application window as defined by the NET Window Manager Specification.

See also: NET, NETRootInfo, KWin, http://www.freedesktop.org/standards/wm-spec/

 NETWinInfo (Display *display, Window window, Window rootWindow, unsigned long properties, Role role = Client)

NETWinInfo

Create a NETWinInfo object, which will be used to set/read/change information stored on an application window.

Parameters:
displayAn X11 Display struct.
windowThe Window id of the application window.
rootWindowThe Window id of the root window.
propertiesAn OR'ed list of all properties and protocols the client/window manager supports (see the NET base class documentation for a description of all properties and protocols).
roleSelect the application role. If this argument is omitted, the role will default to Client.

 NETWinInfo (const NETWinInfo & wininfo)

NETWinInfo

Creates a shared copy of the specified NETWinInfo object.

Parameters:
wininfothe NETWinInfo to copy

 ~NETWinInfo ()

~NETWinInfo

[virtual]

Destroys the NETWinInfo object.

unsigned long  properties ()

properties

[const]

Returns an OR'ed list of supported protocols and properties.

Returns: an OR'ed list of protocols and properties

See also: Property

NETRect  iconGeometry ()

iconGeometry

[const]

Returns the icon geometry.

Returns: the geometry of the icon

unsigned long  state ()

state

[const]

Returns the state of the window (see the NET base class documentation for a description of the various states).

Returns: the state of the window

NETStrut  strut ()

strut

[const]

Returns the strut specified by this client.

Returns: the strut of the window

WindowType  windowType ()

windowType

[const]

Returns the window type for this client (see the NET base class documentation for a description of the various window types).

Returns: the type of the window

const char * name ()

name

[const]

Returns the name of the window in UTF-8 format.

Returns: the name of the window

const char * visibleName ()

visibleName

[const]

Returns the visible name as set by the window manager in UTF-8 format.

Returns: the visible name of the window

const char * iconName ()

iconName

[const]

Returns the icon name of the window in UTF-8 format.

Returns: the name of the icon

const char * visibleIconName ()

visibleIconName

[const]

Returns the visible icon name as set by the window manager in UTF-8 format.

Returns: the visible icon name

int  desktop ()

desktop

[const]

Returns the desktop where the window is residing.

Returns: the number of the window's desktop

See also: OnAllDesktops()

int  pid ()

pid

[const]

Returns the process id for the client window.

Returns: the process id of the window

Bool  handledIcons ()

handledIcons

[const]

Returns whether or not this client handles icons.

Returns: true if this client handles icons, false otherwise

Window  kdeSystemTrayWinFor ()

kdeSystemTrayWinFor

[const]

Returns a Window id, telling the window manager which window we are representing.

Returns: the window id

MappingState  mappingState ()

mappingState

[const]

Returns the mapping state for the window (see the NET base class documentation for a description of mapping state).

Returns: the mapping state

void  setIcon (NETIcon icon, Bool replace = True)

setIcon

Set icons for the application window. If replace is True, then the specified icon is defined to be the only icon. If replace is False, then the specified icon is added to a list of icons.

Parameters:
iconthe new icon
replacetrue to replace, false to append to the list of icons

void  setIconGeometry (NETRect geometry)

setIconGeometry

Set the icon geometry for the application window.

Parameters:
geometrythe new icon geometry

void  setStrut (NETStrut strut)

setStrut

Set the strut for the application window.

Parameters:
strutthe new strut

void  setState (unsigned long state, unsigned long mask)

setState

Set the state for the application window (see the NET base class documentation for a description of window state).

Parameters:
statethe name state
maskthe mask for the state

void  setWindowType (WindowType type)

setWindowType

Sets the window type for this client (see the NET base class documentation for a description of the various window types).

Parameters:
typethe window type

void  setName (const char *name)

setName

Sets the name for the application window.

Parameters:
namethe new name of the window

void  setVisibleName (const char *visibleName)

setVisibleName

For Window Managers only: set the visible name ( i.e. xterm, xterm <2>, xterm <3>, ... )

Parameters:
visibleNamethe new visible name

void  setIconName (const char *name)

setIconName

Sets the icon name for the application window.

Parameters:
namethe new icon name

void  setVisibleIconName (const char *name)

setVisibleIconName

For Window Managers only: set the visible icon name ( i.e. xterm, xterm <2>, xterm <3>, ... )

Parameters:
visibleNamethe new visible icon name

void  setDesktop (int desktop)

setDesktop

Set which window the desktop is (should be) on.

Parameters:
desktopthe number of the new desktop

See also: OnAllDesktops()

void  setPid (int pid)

setPid

Set the application window's process id.

Parameters:
pidthe window's process id

void  setHandledIcons (Bool handled)

setHandledIcons

Set whether this application window handles icons.

Parameters:
handledtrue if the window handles icons, false otherwise

void  setKDESystemTrayWinFor (Window window)

setKDESystemTrayWinFor

Set which window we are representing as a system tray window.

Parameters:
windowthe window that is represented by the system tray icon

void  setKDEFrameStrut (NETStrut strut)

setKDEFrameStrut

Set the frame decoration strut. This is a KDE 2.0 extension to aid in writing pager applications.

Parameters:
strutthe new strut

NETIcon  icon (int width = -1, int height = -1)

icon

[const]

Returns an icon. If width and height are passed, the icon returned will be the closest it can find (the next biggest). If width and height are omitted, then the first icon in the list is returned.

Parameters:
widththe prefered width for the icon, -1 to ignore
heightthe prefered height for the icon, -1 to ignore

Returns: the icon

void  kdeGeometry (NETRect &frame, NETRect &window)

kdeGeometry

Places the window frame geometry in frame, and the application window geometry in window. Both geometries are relative to the root window.

Parameters:
framethe geometry for the frame
windowthe geometry for the window

unsigned long  event (XEvent *event)

event

This function takes the pass XEvent and returns an OR'ed list of NETWinInfo properties that have changed. The new information will be read immediately by the class.

Parameters:
eventthe event

Returns: the properties

static const int OnAllDesktops

OnAllDesktops

void  changeDesktop (int)

changeDesktop

[protected virtual]

A Window Manager should subclass NETWinInfo and reimplement this function when it wants to know when a Client made a request to change desktops (ie. move to another desktop).

Parameters:
desktopthe number of the desktop

void  changeState (unsigned long , unsigned long )

changeState

[protected virtual]

A Window Manager should subclass NETWinInfo and reimplement this function when it wants to know when a Client made a request to change state (ie. to Shade / Unshade).

Parameters:
statethe new state
maskthe mask for the state

void  virtual_hook ( int id, void* data )

virtual_hook

[protected virtual]