Dt/Wsm.h(5)

NAME
Dt/Wsm.h - workspace manager definitions

SYNOPSIS
#include <Dt/Wsm.h>

DESCRIPTION
The <Dt/Wsm.h> header defines structures and function prototypes for workspace management services.

The DtWsmWorkspaceInfo structure contains at least the following members:
Atom | workspace | X atom name for the workspace
unsigned long | bg | Backdrop background pixel
unsigned long | fg | Backdrop foreground pixel
Atom | backdropName | X atom name for backdrop
int | colorSetId | Number of color set used
char | *pchTitle | Title of workspace
Window | backdropWindow | The backdrop window for the current workspace

The DtWsmCBContext structure is opaque. Workspace management functions that add callbacks to uniquely identify callback functions for later removal, return the DtWsmCBContext structure.

The header defines the following DtWsmWsReason constants:

    DtWSM_REASON_ADD
    DtWSM_REASON_DELETE
    DtWSM_REASON_BACKDROP
    DtWSM_REASON_TITLE
    DtWSM_REASON_CURRENT

The header defines the following functions:

DtWsmCBContext
DtWsmAddCurrentWorkspaceCallback(Widget widget,
	DtWsmWsChangeProc ws_change,
	Pointer client_data);

void DtWsmAddWorkspaceFunctions(Display *display,
	Window window);

void DtWsmRemoveWorkspaceFunctions(Display *display,
	Window window);

DtWsmCBContext
DtWsmAddWorkspaceModifiedCallback(Widget widget,
	DtWsmWsModifiedProc ws_change,
	Pointer client_data);

void DtWsmRemoveWorkspaceCallback(DtWsmCBContext context);

void DtWsmFreeWorkspaceInfo(DtWsmWorkspaceInfo *pWsInfo);

Status DtWsmGetCurrentBackdropWindows(Display *display,
	Window root);

Status DtWsmGetCurrentWorkspace(Display *display,
	Window root,
	Atom *paWorkspace);

Status DtWsmSetCurrentWorkspace(Widget widget,
	Atom aWorkspace);

Status DtWsmGetWorkspaceInfo(Display *display,
	Window root,
	Atom aWorkspace,
	DtWsmWorkspaceInfo **ppWsInfo);

Status DtWsmGetWorkspaceList(Display *display,
	Window root,
	Atom **ppaWorkspaces,
	int *pNumWs);

Status DtWsmGetWorkspacesOccupied(Display *display,
	Window window,
	Atom **ppaWorkspace,
	int *pNumWs);

void DtWsmSetWorkspacesOccupied(Display *display,
	Window window,
	Atom *paWorkspaces,
	int numWs);

void DtWsmOccupyAllWorkspaces(Display *display,
	Window window);

SEE ALSO
DtWsmAddCurrentWorkspaceCallback(3), DtWsmAddWorkspaceFunctions(3), DtWsmAddWorkspaceModifiedCallback(3), DtWsmFreeWorkspaceInfo(3), DtWsmGetCurrentBackdropWindows(3), DtWsmGetCurrentWorkspace(3), DtWsmGetWorkspaceInfo(3), DtWsmGetWorkspaceList(3), DtWsmGetWorkspacesOccupied(3), DtWsmOccupyAllWorkspaces(3), DtWsmRemoveWorkspaceCallback(3), DtWsmRemoveWorkspaceFunctions(3), DtWsmSetCurrentWorkspace(3), DtWsmSetWorkspacesOccupied(3).