DtWsmAddWorkspaceModifiedCallback(3) — Subroutines
CDE
NAME
DtWsmAddWorkspaceModifiedCallback − add a callback to be called when any workspace is changed
SYNOPSIS
#include <Wsm.h>
DtWsmCBContext DtWsmAddWorkspaceModifiedCallback(Widget widget,
DtWsmWsModifiedProc ws_change,
Pointer client_data);
DESCRIPTION
The DtWsmAddWorkspaceModifiedCallback function works with the workspace manager CDE workspace manager, dtwm(1), and registers a function to be called when a workspace is added, deleted or modified.
The widget argument is a realized widget.
The ws_change argument is the procedure to be called when a workspace is modified.
The client_data argument points to arbitrary client data to be passed back to ws_change.
The header defines the DtWsmWsModifiedProc callback prototype as follows:
typedef void (∗DtWsmWsModifiedProc)(Widget widget,
Atom aWorkspace,
DtWsmWsReason reason,
Pointer client_data);
The widget argument is the ID of the widget to be registered with the callback.
The aWorkspace argument is the name of the new current workspace (converted to an X atom).
The reason argument is a type of modification:
DtWSM_REASON_ADD
A new workspace was added.
DtWSM_REASON_BACKDROP
The backdrop for the workspace changed.
DtWSM_REASON_CURRENT
A different workspace was made the current workspace.
DtWSM_REASON_DELETE
A workspace was deleted.
DtWSM_REASON_TITLE
The workspace title changed.
The client_data argument points to the client data to be registered with the callback.
RETURN VALUE
Upon successful completion, the DtWsmAddWorkspaceModifiedCallback function returns a workspace callback registration context.
APPLICATION USAGE
The DtWsmAddWorkspaceModifiedCallback function returns a registration context that the application must save in order to remove this callback later.
DtWsmAddWorkspaceModifiedCallback requires a window; thus, a gadget is not acceptable for the widget argument.
The DtWsmRemoveWorkspaceCallback(3) function needs a registration context to remove the callback.
SEE ALSO
Wsm.h(5), dtwm(1), DtWsmGetWorkspaceInfo(3), DtWsmGetWorkspaceList(3), DtWsmRemoveWorkspaceCallback(3)