/* * @OPENGROUP_COPYRIGHT@ * COPYRIGHT NOTICE * Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc. * Copyright (c) 1996, 1997, 1998, 1999, 2000 The Open Group * ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for * the full copyright text. * * This software is subject to an open license. It may only be * used on, with or for operating systems which are themselves open * source systems. You must contact The Open Group for a license * allowing distribution and sublicensing of this software on, with, * or for operating systems which are not Open Source programs. * * See http://www.opengroup.org/openmotif/license for full * details of the license agreement. Any use, reproduction, or * distribution of the program constitutes recipient's acceptance of * this agreement. * * EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS * PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY * WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY * OR FITNESS FOR A PARTICULAR PURPOSE * * EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT * NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN * ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE * EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGES. */ /* * HISTORY */ /* $XConsortium: MwmUtil.h /main/11 1995/08/18 17:42:47 drk $ */ /* * (c) Copyright 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */ #ifndef _XmMwmUtil_h #define _XmMwmUtil_h #include /* for protocol typedefs */ #ifdef __cplusplus extern "C" { #endif /* * Contents of the _MWM_HINTS property. */ typedef struct { /* These correspond to XmRInt resources. (VendorSE.c) */ int flags; int functions; int decorations; int input_mode; int status; } MotifWmHints; typedef MotifWmHints MwmHints; /* bit definitions for MwmHints.flags */ #define MWM_HINTS_FUNCTIONS (1L << 0) #define MWM_HINTS_DECORATIONS (1L << 1) #define MWM_HINTS_INPUT_MODE (1L << 2) #define MWM_HINTS_STATUS (1L << 3) /* bit definitions for MwmHints.functions */ #define MWM_FUNC_ALL (1L << 0) #define MWM_FUNC_RESIZE (1L << 1) #define MWM_FUNC_MOVE (1L << 2) #define MWM_FUNC_MINIMIZE (1L << 3) #define MWM_FUNC_MAXIMIZE (1L << 4) #define MWM_FUNC_CLOSE (1L << 5) /* bit definitions for MwmHints.decorations */ #define MWM_DECOR_ALL (1L << 0) #define MWM_DECOR_BORDER (1L << 1) #define MWM_DECOR_RESIZEH (1L << 2) #define MWM_DECOR_TITLE (1L << 3) #define MWM_DECOR_MENU (1L << 4) #define MWM_DECOR_MINIMIZE (1L << 5) #define MWM_DECOR_MAXIMIZE (1L << 6) /* definitions for running automated tests */ #define WINDOW_MINIMIZE_INFO 0 #define WINDOW_MAXIMIZE_INFO 1 #define WINDOW_MOVE_INFO 2 #define WINDOW_RAISE_INFO 3 #define WINDOW_RESIZE_NORTH_INFO 4 #define WINDOW_RESIZE_SOUTH_INFO 5 #define WINDOW_RESIZE_EAST_INFO 6 #define WINDOW_RESIZE_WEST_INFO 7 #define WINDOW_RESIZE_NORTHEAST_INFO 8 #define WINDOW_RESIZE_NORTHWEST_INFO 9 #define WINDOW_RESIZE_SOUTHEAST_INFO 10 #define WINDOW_RESIZE_SOUTHWEST_INFO 11 #define WINDOW_MENU_ITEM_SELECT_INFO 12 #define WINDOW_DEICONIFY_INFO 13 #define WINDOW_MENU_POST_INFO 14 #define WINDOW_FOCUS_INFO 15 #define WINDOW_MENU_UNPOST_INFO 16 #define WINDOW_MENU_ITEM_CHECK_INFO 17 #define ICON_MOVE_INFO 18 #define ICON_MENU_POST_INFO 19 #define ICON_MENU_UNPOST_INFO 20 #define ICON_MENU_ITEM_SELECT_INFO 21 #define WM_NORTHWEST 0 #define WM_NORTH 1 #define WM_NORTHEAST 2 #define WM_WEST 3 #define WM_EAST 4 #define WM_SOUTHWEST 5 #define WM_SOUTH 6 #define WM_SOUTHEAST 7 #define INVALID -1 #define MAX_MENU_ITEMS 20 #define MAX_NAME_LEN 95 /* values for MwmHints.input_mode */ #define MWM_INPUT_MODELESS 0 #define MWM_INPUT_PRIMARY_APPLICATION_MODAL 1 #define MWM_INPUT_SYSTEM_MODAL 2 #define MWM_INPUT_FULL_APPLICATION_MODAL 3 /* bit definitions for MwmHints.status */ #define MWM_TEAROFF_WINDOW (1L << 0) /* * The following is for compatibility only. It use is deprecated. */ #define MWM_INPUT_APPLICATION_MODAL MWM_INPUT_PRIMARY_APPLICATION_MODAL /* * Contents of the _MWM_INFO property. */ typedef struct { long flags; Window wm_window; } MotifWmInfo; typedef MotifWmInfo MwmInfo; /* bit definitions for MotifWmInfo .flags */ #define MWM_INFO_STARTUP_STANDARD (1L << 0) #define MWM_INFO_STARTUP_CUSTOM (1L << 1) /* * Definitions for the _MWM_HINTS property. */ typedef struct { /* 32-bit property items are stored as long on the client (whether * that means 32 bits or 64). XChangeProperty handles the conversion * to the actual 32-bit quantities sent to the server. */ unsigned long flags; unsigned long functions; unsigned long decorations; long inputMode; unsigned long status; } PropMotifWmHints; typedef PropMotifWmHints PropMwmHints; /* number of elements of size 32 in _MWM_HINTS */ #define PROP_MOTIF_WM_HINTS_ELEMENTS 5 #define PROP_MWM_HINTS_ELEMENTS PROP_MOTIF_WM_HINTS_ELEMENTS /* atom name for _MWM_HINTS property */ #define _XA_MOTIF_WM_HINTS "_MOTIF_WM_HINTS" #define _XA_MWM_HINTS _XA_MOTIF_WM_HINTS /* * Definitions for the _MWM_MESSAGES property. */ #define _XA_MOTIF_WM_MESSAGES "_MOTIF_WM_MESSAGES" #define _XA_MWM_MESSAGES _XA_MOTIF_WM_MESSAGES /* atom that enables client frame offset messages */ #define _XA_MOTIF_WM_OFFSET "_MOTIF_WM_OFFSET" /* * Definitions for the _MWM_MENU property. */ /* atom name for _MWM_MENU property */ #define _XA_MOTIF_WM_MENU "_MOTIF_WM_MENU" #define _XA_MWM_MENU _XA_MOTIF_WM_MENU /* * Definitions for the _MWM_INFO property. */ typedef struct { /* 32-bit property items are stored as long on the client (whether * that means 32 bits or 64). XChangeProperty handles the conversion * to the actual 32-bit quantities sent to the server. */ long flags; Window wmWindow; } PropMotifWmInfo; typedef PropMotifWmInfo PropMwmInfo; /* number of elements of size 32 in _MWM_INFO */ #define PROP_MOTIF_WM_INFO_ELEMENTS 2 #define PROP_MWM_INFO_ELEMENTS PROP_MOTIF_WM_INFO_ELEMENTS /* atom name for _MWM_INFO property */ #define _XA_MOTIF_WM_INFO "_MOTIF_WM_INFO" #define _XA_MWM_INFO _XA_MOTIF_WM_INFO /* * Miscellaneous atom definitions */ /* atom for motif input bindings */ #define _XA_MOTIF_BINDINGS "_MOTIF_BINDINGS" #ifdef __cplusplus } /* Close scope of 'extern "C"' declaration which encloses file. */ #endif #endif /* _XmMwmUtil_h */