123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935 |
- /*
- * CDE - Common Desktop Environment
- *
- * Copyright (c) 1993-2012, The Open Group. All rights reserved.
- *
- * These libraries and programs are free software; you can
- * redistribute them and/or modify them under the terms of the GNU
- * Lesser General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option)
- * any later version.
- *
- * These libraries and programs are distributed in the hope that
- * they will be useful, but WITHOUT ANY WARRANTY; without even the
- * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- * PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with these libraries and programs; if not, write
- * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
- * Floor, Boston, MA 02110-1301 USA
- */
- /* $XConsortium: WsmP.h /main/8 1996/05/20 16:08:59 drk $ */
- /************************************<+>*************************************
- ****************************************************************************
- **
- ** File: WsmP.h
- **
- ** Project: DT Workspace Manager
- **
- ** Description: Defines PRIVATE properties, structures, and
- ** parameters used for communication with the
- ** workspace manager. This also includes some
- ** backward compatibility stuff for HP_VUE.
- **
- ** (c) Copyright 1996 Digital Equipment Corporation.
- ** (c) Copyright 1993,1994,1996 Hewlett-Packard Company.
- ** (c) Copyright 1993,1994,1996 International Business Machines Corp.
- ** (c) Copyright 1993,1994,1996 Sun Microsystems, Inc.
- ** (c) Copyright 1993,1994,1996 Novell, Inc.
- ** (c) Copyright 1996 FUJITSU LIMITED.
- ** (c) Copyright 1996 Hitachi.
- **
- ****************************************************************************
- ************************************<+>*************************************/
- #ifndef _Dt_WsmP_h
- #define _Dt_WsmP_h
- #include <Dt/Wsm.h>
- #include <X11/Intrinsic.h>
- #include <Dt/Service.h>
- #include <Tt/tt_c.h>
- /**********************************************************************
- * Workspace atom names
- **********************************************************************/
- #define _XA_DT_MARQUEE_SELECTION "_DT_MARQUEE_SELECTION"
- #define _XA_DT_WORKSPACE_EMBEDDED_CLIENTS \
- "_DT_WORKSPACE_EMBEDDED_CLIENTS"
- #define _XA_DT_WM_REQUEST "_DT_WM_REQUEST"
- #define _XA_DT_WORKSPACE_HINTS "_DT_WORKSPACE_HINTS"
- #define _XA_DT_WORKSPACE_PRESENCE "_DT_WORKSPACE_PRESENCE"
- #define _XA_DT_WORKSPACE_INFO "_DT_WORKSPACE_INFO"
- #define _XA_DT_WM_HINTS "_DT_WM_HINTS"
- #define _XA_DT_WORKSPACE_LIST "_DT_WORKSPACE_LIST"
- #define _XA_DT_WORKSPACE_CURRENT "_DT_WORKSPACE_CURRENT"
- /**********************************************************************
- * Name to request ``all'' workspaces (for a persistent window)
- **********************************************************************/
- #define _XA_DT_WORKSPACE_ALL "all"
- /**********************************************************************
- * Workspace function definitions
- **********************************************************************/
- #define DtWM_FUNC_OCCUPY_WS DtWM_FUNCTION_OCCUPY_WS
- #define DtWM_FUNC_ALL DtWM_FUNC_OCCUPY_WS
- /**********************************************************************
- * Workspace property information
- **********************************************************************/
- /*
- *
- * NOTE: The "(client -> dtwm)" indication calls out the direction
- * of information flow. In this case, the client writes the
- * property and dtwm reads the property.
- *
- *
- * _DT_WORKSPACE_HINTS (client -> dtwm)
- *
- * This property is a list of atoms placed by a client on its
- * top level window(s). Each atom is an "interned" string name
- * for a workspace. The workspace manager looks at this property
- * when it manages the window (e.g. when the window is mapped)
- * and will place the window in the workspaces listed.
- *
- * _DT_WORKSPACE_PRESENCE (dtwm -> client)
- *
- * This property is a list of atoms placed on a client by dtwm.
- * Each atom is an "interned" string name for a workspace. This
- * property lists the workspaces that this client lives in.
- *
- * _DT_WORKSPACE_LIST (dtwm -> clients)
- *
- * This property is a list of atoms. Each atom represents a
- * name of a workspace. The list is in "order" such that
- * the first element is for the first workspace and so on.
- * This proeprty is placed on the mwm ("wmWindow") window.
- *
- * _DT_WORKSPACE_CURRENT (dtwm -> clients)
- *
- * This property is a single atom, representing the current
- * workspace. It is updated each time the workspace changes.
- * This proeprty is placed on the mwm window.
- *
- * _DT_WORKSPACE_INFO_<name> (dtwm -> clients)
- *
- * There is one property of this form for each workspace in
- * _DT_WORKSPACE_LIST. This property is a sequence of ISO-LATIN1
- * NULL-terminated strings representing the elements in a
- * structure. This information was formerly in _DT_WORKSPACE_INFO
- * but was broken out to allow for extensibility.
- * This proeprty is placed on the mwm window.
- *
- * _DT_WM_HINTS (client -> dtwm)
- *
- * This property requests specific window/workspace management behavior.
- * The functions member of the property allows a client to enable or
- * disable workspace management functions. The behavior member is
- * used to indicate front panels and slide-ups.
- *
- */
- /**********************************************************************
- * Property structures
- **********************************************************************/
- typedef struct _DtWmHints
- {
- long flags; /* marks valid fields */
- long functions; /* special dtwm functions */
- long behaviors; /* special dtwm behaviors */
- Window attachWindow; /* (reserved) */
- } DtWmHints;
- /* DtWmHints "flags" definitions */
- #define DtWM_HINTS_FUNCTIONS (1L << 0)
- #define DtWM_HINTS_BEHAVIORS (1L << 1)
- #define DtWM_HINTS_ATTACH_WINDOW (1L << 2) /* (reserved) */
- /* DtWmHints "functions" definitions */
- #define DtWM_FUNCTION_ALL (1L << 0)
- #define DtWM_FUNCTION_OCCUPY_WS (1L << 16)
- /* DtWmHints "behaviors" definitions */
- #define DtWM_BEHAVIOR_PANEL (1L << 1)
- #define DtWM_BEHAVIOR_SUBPANEL (1L << 2)
- #define DtWM_BEHAVIOR_SUB_RESTORED (1L << 3)
- #ifdef HP_VUE
- /*
- * For Compatibility with some old HP VUE clients
- */
- #define _XA_VUE_WORKSPACE_INFO "_VUE_WORKSPACE_INFO"
- #define _XA_VUE_WORKSPACE_HINTS "_VUE_WORKSPACE_HINTS"
- #define _XA_VUE_WORKSPACE_PRESENCE "_VUE_WORKSPACE_PRESENCE"
- #define _XA_VUE_WM_REQUEST "_VUE_WM_REQUEST"
- #define _XA_VUE_WM_HINTS "_VUE_WM_HINTS"
- #endif /* HP_VUE */
- /**********************************************************************
- * Session atom names
- **********************************************************************/
- #define _XA_DT_SESSION_HINTS "_DT_SESSION_HINTS"
- #define _XA_DT_SAVE_MODE "_DT_SAVE_MODE"
- #define _XA_DT_RESTORE_MODE "_DT_RESTORE_MODE"
- #define _XA_DT_RESTORE_DIR "_DT_RESTORE_DIR"
- #define _XA_DT_SM_WM_PROTOCOL "_DT_SM_WM_PROTOCOL"
- #define _XA_DT_SM_START_ACK_WINDOWS "_DT_SM_START_ACK_WINDOWS"
- #define _XA_DT_SM_STOP_ACK_WINDOWS "_DT_SM_STOP_ACK_WINDOWS"
- #define _XA_DT_WM_WINDOW_ACK "_DT_WM_WINDOW_ACK"
- #define _XA_DT_WM_EXIT_SESSION "_DT_WM_EXIT_SESSION"
- #define _XA_DT_WM_LOCK_DISPLAY "_DT_WM_LOCK_DISPLAY"
- #define _XA_DT_WM_READY "_DT_WM_READY"
- /**********************************************************************
- * Workspace special character definitions
- **********************************************************************/
- #define DTWM_CH_ESC_NEXT "\\"
- /**********************************************************************
- * Marquee selection callback prototype
- **********************************************************************/
- typedef void (*DtWsmMarqueeSelectionProc) ();
- /*
- Widget widget;
- int type;
- Position x, y;
- Dimension width, height;
- XtPointer client_data;
- */
- /**********************************************************************
- * Marquee Select
- **********************************************************************/
- #define DT_WSM_MARQUEE_SELECTION_TYPE_BEGIN 1
- #define DT_WSM_MARQUEE_SELECTION_TYPE_CONTINUE 2
- #define DT_WSM_MARQUEE_SELECTION_TYPE_END 3
- #define DT_WSM_MARQUEE_SELECTION_TYPE_CANCEL 4
- /**********************************************************************
- * Workspace request definitions
- *
- * NOTE: These functions do not necessarily match the other
- * window manager f.* functions!
- **********************************************************************/
- #define DTWM_REQ_CHANGE_BACKDROP "f.change_backdrop"
- #define DTWM_REQ_RESTART "f.restart"
- /**********************************************************************
- * Workspace request parameter definitions
- **********************************************************************/
- #define DTWM_REQP_BACKDROP_NONE "NoBackdrop"
- #define DTWM_REQP_NO_CONFIRM "-noconfirm"
- /**********************************************************************
- * Resource converter definitions
- *
- * NOTE: This has been lifted from mwm.
- * Please keep syncronized with the current version of mwm/dtwm.
- * (See WmGlobal.h)
- **********************************************************************/
- /* icon placement values (iconPlacement, ...): */
- #define ICON_PLACE_LEFT_PRIMARY (1L << 0)
- #define ICON_PLACE_RIGHT_PRIMARY (1L << 1)
- #define ICON_PLACE_TOP_PRIMARY (1L << 2)
- #define ICON_PLACE_BOTTOM_PRIMARY (1L << 3)
- #define ICON_PLACE_LEFT_SECONDARY (1L << 4)
- #define ICON_PLACE_RIGHT_SECONDARY (1L << 5)
- #define ICON_PLACE_TOP_SECONDARY (1L << 6)
- #define ICON_PLACE_BOTTOM_SECONDARY (1L << 7)
- #define ICON_PLACE_EDGE (1L << 8)
- #define ICON_PLACE_TIGHT (1L << 9)
- #define ICON_PLACE_RESERVE (1L << 10)
- /**********************************************************************
- * Workspace property information
- **********************************************************************/
- /*
- *
- * NOTE: The "(client -> dtwm)" indication calls out the direction
- * of information flow. In this case, the client writes the
- * property and dtwm reads the property.
- *
- */
- #ifdef HP_VUE
- /*
- * %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- * % _VUE_WORKSPACE_INFO is obsolete, but maintained for %
- * % backward compatiblity. Its function has been %
- * % replaced by %
- * % _DT_WORKSPACE_LIST %
- * % _DT_WORKSPACE_INFO_<name> %
- * %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- * _VUE_WORKSPACE_INFO (dtwm -> client)
- *
- * This property is a list of structures that contain information
- * on each workspace. Each structure contains the atom representing
- * the workspace string name and the window id of the background
- * window for the workspace (if any). The first workspace in the
- * list is the "active" workspace for the screen. This property is
- * placed on the window identified by the "wmWindow" member of
- * the _MOTIF_WM_INFO property.
- */
- #endif /* HP_VUE */
- /*
- *
- * _DT_WM_REQUEST (client -> dtwm)
- *
- * This property of type string that is used to communication
- * function requests to dtwm. This property is placed on the mwm
- * window. Dtwm listens for changes to this property and dequeues
- * requests off the top of the list. Requests are NULL-terminated
- * strings in the format:
- *
- * <req_type> <req_parms>
- *
- * Each request ends with a literal '\0' character to insure
- * separation from the next request.
- *
- * Clients must always add requests to the end of the property
- * (mode=PropModeAppend). Use of convenience routines is
- * recommended since they take care of proper formatting of the
- * requests.
- *
- */
- /**********************************************************************
- * Property structures
- **********************************************************************/
- /* Internal form of this property */
- typedef struct _DtWorkspaceHints
- {
- long version; /* indicates structure changes */
- long flags; /* marks valid fields */
- long wsflags; /* special workspace information */
- long numWorkspaces; /* number of workspaces */
- Atom * pWorkspaces; /* list of atoms for workspaces */
- } DtWorkspaceHints;
- /* DtWorkspaceHints "flags" definitions */
- #define DT_WORKSPACE_HINTS_WSFLAGS (1L << 0)
- /* The following definitions enables both the numWorkspaces
- and pWorkspaces fields */
- #define DT_WORKSPACE_HINTS_WORKSPACES (1L << 1)
- /* DtWorkspaceHints "wsflags" definitions */
- #define DT_WORKSPACE_FLAGS_OCCUPY_ALL (1L << 0)
- #ifdef HP_VUE
- /*
- * Obsolete WorkspaceInfo structure
- */
- typedef struct _WorkspaceInfo
- {
- Atom workspace; /* workspace "name" */
- Window backgroundWindow; /* backdrop window ID (if any) */
- unsigned long bg; /* backdrop background pixel */
- unsigned long fg; /* backdrop foreground pixel */
- Atom backdropName; /* atomized name for backdrop */
- } WorkspaceInfo;
- #endif /* HP_VUE */
- /**********************************************************************
- * Marquee Selection Structures
- **********************************************************************/
- typedef struct _DtMarqueeSelectData
- {
- long state; /* current property state */
- Position x; /* NW corner of select area */
- Position y; /* NW corner of select area */
- Dimension width; /* size of select area */
- Dimension height; /* size of select area */
- } DtMarqueeSelectData;
- typedef struct _DtMarqueeSelectProp
- {
- long state; /* current property state */
- long x; /* NW corner of select area */
- long y; /* NW corner of select area */
- long width; /* size of select area */
- long height; /* size of select area */
- } DtMarqueeSelectProperty;
- /**********************************************************************
- * Marquee Selection Definitions
- **********************************************************************/
- #define DT_MARQUEE_SELECT_BEGIN 1
- #define DT_MARQUEE_SELECT_CONTINUE 2
- #define DT_MARQUEE_SELECT_END 3
- #define DT_MARQUEE_SELECT_CANCEL 4
- /**********************************************************************
- * Workspace change callback context (opaque)
- **********************************************************************/
- typedef void (*DtWsmCBProc) ();
- struct _DtWsmCBContext
- {
- Tt_pattern pattern;
- Widget widget;
- DtWsmCBProc ws_cb;
- XtPointer client_data;
- XtPointer nested_context;
- };
- /**********************************************************************
- * Convenience Routines
- **********************************************************************/
- #ifdef HP_VUE
- /*************************************<->*************************************
- *
- * Status DtGetWorkspaceInfo (display, root, ppWsInfo, pNumInfo)
- *
- *
- * Description:
- * -----------
- * Get the contents of the _DT_WORKSPACE_INFO property on a window
- *
- *
- * Inputs:
- * ------
- * display - display
- * root - root window of screen being managed
- * ppWsInfo - pointer to a pointer (to be returned)
- * pNumInfo - pointer to a number (to be returned)
- *
- * Outputs:
- * -------
- * *ppWsInfo - pointer to a list of workspace info structures
- * *pNumInfo - number of workspace info structures in list
- * Return - Success if property fetched ok.
- * Failure returns are from XGetWindowProperty
- *
- *************************************<->***********************************/
- extern Status
- DtGetWorkspaceInfo(
- Display *display,
- Window root,
- WorkspaceInfo **ppWsInfo,
- unsigned long *pNumInfo) ;
- #endif /* HP_VUE */
- /*************************************<->*************************************
- *
- * int _DtGetMwmWindow (display, root, pMwmWindow)
- *
- *
- * Description:
- * -----------
- * Get the Motif Window manager window
- *
- *
- * Inputs:
- * ------
- * display - display
- * root - root window of screen
- * pMwmWindow - pointer to a window (to be returned)
- *
- * Outputs:
- * --------
- * *pMwmWindow - mwm window id, if successful
- * Return - status from XGetWindowProperty
- *
- * Comments:
- * --------
- * This can fail if mwm is not managing the screen for the root window
- * passed in.
- *
- *************************************<->***********************************/
- extern int
- _DtGetMwmWindow(
- Display *display,
- Window root,
- Window *pMwmWindow) ;
- /*************************************<->*************************************
- *
- * int _DtGetEmbeddedClients (display, root, ppEmbeddedClients,
- * pNumEmbeddedClients)
- *
- *
- * Description:
- * -----------
- * Get the contents of the _DT_WORKSPACE_EMBEDDED_CLIENTS property
- * from a root window. This is a list (array) of top-level windows that
- * are embedded in the front panel of the window manager. They would
- * not be picked up ordinarily by a session manager in a normal
- * search for top-level windows because they are reparented to
- * the front panel which itself is a top-level window.
- *
- *
- * Inputs:
- * ------
- * display - display
- * root - root window to get info from
- * ppEmbeddedClients - pointer to a pointer (to be returned)
- * pNumEmbeddedClients - pointer to a number (to be returned)
- *
- * Outputs:
- * -------
- * *ppEmbeddedClients - pointer to a array of window IDs (top-level
- * windows for embedded clients)
- * (NOTE: This should be freed using XFree)
- * *pNumEmbeddedClients- number of window IDs in array
- * Return - Success if property fetched ok.
- * Failure returns are from XGetWindowProperty
- *
- * Comments:
- * --------
- * Use XFree to free the returned data.
- *
- *************************************<->***********************************/
- extern int
- _DtGetEmbeddedClients(
- Display *display,
- Window root,
- Atom **ppEmbeddedClients,
- unsigned long *pNumEmbeddedClients );
- /*************************************<->*************************************
- *
- * int _DtWmRestart (display, root)
- *
- *
- * Description:
- * -----------
- * Requests the window manager to restart itself
- *
- *
- * Inputs:
- * ------
- * display - display
- * root - root window for screen
- *
- * Returns:
- * --------
- * Success if request was sent
- *
- * Comments:
- * ---------
- *
- *************************************<->***********************************/
- extern int
- _DtWmRestart(
- Display *display,
- Window root) ;
- /*************************************<->*************************************
- *
- * int _DtWsmChangeBackdrop (display, root, path, pixmap)
- *
- *
- * Description:
- * -----------
- * Request the HP DT workspace manager to change the backdrop
- *
- *
- * Inputs:
- * ------
- * display - display
- * root - root window of screen
- * path - file path to bitmap file
- * pixmap - pixmap id of backdrop pixmap
- *
- * Returns:
- * --------
- * Success if request sent
- *
- *************************************<->***********************************/
- extern int
- _DtWsmChangeBackdrop (
- Display *display,
- Window root,
- char *path,
- Pixmap pixmap);
- /*************************************<->*************************************
- *
- * _DtWmCvtStringToIPlace (args, numArgs, fromVal, toVal)
- *
- *
- * Description:
- * -----------
- * This function converts a string to an icon placement scheme description.
- *
- *
- * Inputs:
- * ------
- * args = NULL (don't care)
- *
- * numArgs = 0 (don't care)
- *
- * fromVal = resource value to convert
- *
- *
- * Outputs:
- * -------
- * toVal = descriptor to use to return converted value
- *
- *************************************<->***********************************/
- extern void
- _DtWmCvtStringToIPlace (
- XrmValue *args,
- Cardinal numArgs,
- XrmValue *fromVal,
- XrmValue *toVal);
- /*************************************<->*************************************
- *
- * Boolean _DtWsmIsBackdropWindow (display, screen_num, window)
- *
- *
- * Description:
- * -----------
- * Returns true if the window passed in is a backdrop window.
- *
- *
- * Inputs:
- * ------
- * display - display
- * screen_num - number of screen we're interested in
- * window - window we want to test
- *
- * Outputs:
- * -------
- * Return - True if window is a backdrop window
- * False otherwise.
- *
- * Comments:
- * --------
- *
- *************************************<->***********************************/
- Boolean
- _DtWsmIsBackdropWindow(
- Display *display,
- int screen_num,
- Window window );
- /*************************************<->*************************************
- *
- * int DtWsmSetWorkspaceTitle (widget, aWs, pchNewName)
- *
- *
- * Description:
- * -----------
- * Rename a workspace
- *
- *
- * Inputs:
- * ------
- * widget - a widget
- * aWs - atom of workspace
- * pchNewName - new name for the workspace
- *
- * Outputs:
- * --------
- * Return - 1 (*not* Success) if communication to workspace manager
- * was successful.
- *
- * Comments:
- * ---------
- * The odd-ball successful return value is a CDE 1.0 bug being
- * preserved for backward compatibility.
- *
- *************************************<->***********************************/
- int
- _DtWsmSetWorkspaceTitle (
- Widget widget,
- Atom aWs,
- char * pchNewName);
- /*************************************<->*************************************
- *
- * int _DtWsmDeleteWorkspace (widget, aWs)
- *
- *
- * Description:
- * -----------
- * Delete a workspace
- *
- *
- * Inputs:
- * ------
- * widget - a widget (with a window!)
- * aWs - atom of workspace to delete
- *
- * Outputs:
- * --------
- * Return - 1 (*not* Success) if communication to workspace manager
- * was successful.
- *
- * Comments:
- * ---------
- * The odd-ball successful return value is a CDE 1.0 bug being
- * preserved for backward compatibility.
- *
- *************************************<->***********************************/
- int
- _DtWsmDeleteWorkspace (
- Widget widget,
- Atom aWs);
- /*************************************<->*************************************
- *
- * int _DtWsmCreateWorkspace (widget, pchTitle)
- *
- *
- * Description:
- * -----------
- * Add a workspace
- *
- *
- * Inputs:
- * ------
- * widget - a widget (with a window!)
- * pchTitle - user-visible title of the workspace
- *
- * Outputs:
- * --------
- * Return - 1 (*not* Success) if communication to workspace manager
- * was successful.
- *
- * Comments:
- * ---------
- * The odd-ball successful return value is a CDE 1.0 bug being
- * preserved for backward compatibility.
- *
- *************************************<->***********************************/
- int
- _DtWsmCreateWorkspace (Widget widget, char * pchTitle);
- /*************************************<->*************************************
- *
- * _DtWsmSetWorkspaceHints (display, window, pWsHints)
- *
- *
- * Description:
- * -----------
- * Set the contents of the _DT_WORKSPACE_HINTS property on a window
- *
- *
- * Inputs:
- * ------
- * display - display
- * window - window to get hints from
- * pWsHints - pointer to workspace hints
- *
- * Comments:
- * ---------
- * The internal form of the property is a structure. The structure
- * must be unwound and turned into a simple array of "long"s before
- * being written out.
- *
- * This function currently only deals with version 1 of the property
- * structure. The passed in pWsHints->version is ignored.
- *
- *************************************<->***********************************/
- extern void
- _DtWsmSetWorkspaceHints(
- Display *display,
- Window window,
- DtWorkspaceHints *pWsHints);
- /*************************************<->*************************************
- *
- * int _DtWsmGetWorkspaceHints (display, window, ppWsHints)
- *
- *
- * Description:
- * -----------
- * Get the contents of the _DT_WORKSPACE_HINTS property from a window
- *
- *
- * Inputs:
- * ------
- * display - display
- * window - window to get hints from
- * ppWsHints - pointer to pointer to workspace hints
- *
- * Outputs:
- * *ppWsHints - allocated workspace hints data.
- *
- * Comments:
- * ---------
- * The internal form of the property is a structure. The property
- * is read in and packed into data allocated for the structure.
- * Free the workspace hints by calling _DtWsmFreeWorkspaceHints.
- *
- * This function currently only deals with version 1 of the property
- * structure.
- *
- *************************************<->***********************************/
- extern int
- _DtWsmGetWorkspaceHints(
- Display *display,
- Window window,
- DtWorkspaceHints **ppWsHints);
- /*************************************<->*************************************
- *
- * _DtWsmFreeWorkspaceHints (pWsHints)
- *
- *
- * Description:
- * -----------
- * Free a workspace hints structure returned from _DtWsmGetWorkspaceHints
- *
- * Inputs:
- * ------
- * pWsHints - pointer to workspace hints
- *
- * Outputs:
- *
- * Comments:
- * ---------
- *************************************<->***********************************/
- extern void
- _DtWsmFreeWorkspaceHints(
- DtWorkspaceHints *pWsHints);
- /*************************************<->*************************************
- *
- * DtWsmCBContext * _DtWsmAddMarqueeSelectionCallback (widget,
- * marquee_select,
- * client_data)
- *
- *
- * Description:
- * -----------
- * Register a function to be called when a marquee selection is made
- *
- *
- * Inputs:
- * ------
- * widget - widget for this client
- * marquee_select - function to call for marquee select
- * client_data - additional data to pass back to client when called.
- *
- * Outputs:
- * --------
- * Return - ptr to callback context data (opaque)
- *
- * Comments:
- * ---------
- * The callback context data ptr should be saved if you intend to
- * removed this callback at some point in the future.
- *
- *************************************<->***********************************/
- DtWsmCBContext
- _DtWsmAddMarqueeSelectionCallback (
- Widget widget,
- DtWsmMarqueeSelectionProc marquee_select,
- XtPointer client_data);
- /*************************************<->*************************************
- *
- * _DtWsmSetDtWmHints (display, window, pHints)
- *
- *
- * Description:
- * -----------
- * Set the contents of the _DT_WM_HINTS property on a window
- *
- *
- * Inputs:
- * ------
- * display - display
- * window - window to set hints on
- * pHints - pointer the hints to set
- *
- * Comments:
- * ---------
- * No error checking
- *
- *************************************<->***********************************/
- extern void
- _DtWsmSetDtWmHints( Display *display,
- Window window,
- DtWmHints *pHints);
- /*************************************<->*************************************
- *
- * int _DtWsmGetDtWmHints (display, window, ppDtWmHints)
- *
- *
- * Description:
- * -----------
- * Get the contents of the _DT_WM_HINTS property on a window
- *
- *
- * Inputs:
- * ------
- * display - display
- * window - window to get hints from
- * ppDtWmHints - pointer to a pointer to return
- *
- * Outputs:
- * --------
- * *ppDtWmHints-points to the DtWmHints structure retrieved from
- * the window (NOTE: This should be freed using XFree)
- *
- * Comments:
- * ---------
- *
- *************************************<->***********************************/
- extern int
- _DtWsmGetDtWmHints(
- Display *display,
- Window window,
- DtWmHints **ppDtWmHints);
- /*************************************<->*************************************
- *
- * _DtWsmSelectionNameForScreen (scr)
- *
- * Description:
- * -----------
- * Returns a string containing the selection name used for
- * communication with the workspace manager on this screen
- *
- *
- * Inputs:
- * ------
- * scr - number of screen
- *
- * Outputs:
- * --------
- * Return - ptr to string with selection name (free with XtFree)
- *
- * Comments:
- * ---------
- * Assumes the screen number is < 1000.
- *
- *************************************<->***********************************/
- extern String
- _DtWsmSelectionNameForScreen (int scr);
- extern Tt_callback_action
- _DtWsmConsumeReply (
- Tt_message msg,
- Tt_pattern pat );
- #endif /* _Dt_WsmP_h */
- /* Do not add anything after this endif. */
|