1 /** 2 * 3 * $Id: MwmUtil.h,v 1.1 1997/03/30 14:03:34 root Exp $ 4 * 5 * Copyright (C) 1995 Free Software Foundation, Inc. 6 * 7 * This file is part of the GNU LessTif Library. 8 * 9 * This library is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU Library General Public 11 * License as published by the Free Software Foundation; either 12 * version 2 of the License, or (at your option) any later version. 13 * 14 * This library is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17 * Library General Public License for more details. 18 * 19 * You should have received a copy of the GNU Library General Public 20 * License along with this library; if not, write to the Free 21 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 22 * 23 **/ 24 25 #ifndef MWMUTIL_H_INCLUDED 26 #define MWMUTIL_H_INCLUDED 27 28 #include <X11/Xmd.h> 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 typedef struct { 35 CARD32 flags; 36 CARD32 functions; 37 CARD32 decorations; 38 INT32 input_mode; 39 CARD32 status; 40 } MotifWmHints, MwmHints; 41 42 #define MWM_HINTS_FUNCTIONS (1L << 0) 43 #define MWM_HINTS_DECORATIONS (1L << 1) 44 #define MWM_HINTS_INPUT_MODE (1L << 2) 45 #define MWM_HINTS_STATUS (1L << 3) 46 47 #define MWM_FUNC_ALL (1L << 0) 48 #define MWM_FUNC_RESIZE (1L << 1) 49 #define MWM_FUNC_MOVE (1L << 2) 50 #define MWM_FUNC_MINIMIZE (1L << 3) 51 #define MWM_FUNC_MAXIMIZE (1L << 4) 52 #define MWM_FUNC_CLOSE (1L << 5) 53 54 #define MWM_DECOR_ALL (1L << 0) 55 #define MWM_DECOR_BORDER (1L << 1) 56 #define MWM_DECOR_RESIZEH (1L << 2) 57 #define MWM_DECOR_TITLE (1L << 3) 58 #define MWM_DECOR_MENU (1L << 4) 59 #define MWM_DECOR_MINIMIZE (1L << 5) 60 #define MWM_DECOR_MAXIMIZE (1L << 6) 61 62 #define MWM_INPUT_MODELESS 0 63 #define MWM_INPUT_PRIMARY_APPLICATION_MODAL 1 64 #define MWM_INPUT_SYSTEM_MODAL 2 65 #define MWM_INPUT_FULL_APPLICATION_MODAL 3 66 #define MWM_INPUT_APPLICATION_MODAL MWM_INPUT_PRIMARY_APPLICATION_MODAL 67 68 #define MWM_TEAROFF_WINDOW (1L<<0) 69 70 /* 71 * atoms 72 */ 73 #define _XA_MOTIF_BINDINGS "_MOTIF_BINDINGS" 74 #define _XA_MOTIF_WM_HINTS "_MOTIF_WM_HINTS" 75 #define _XA_MOTIF_WM_MESSAGES "_MOTIF_WM_MESSAGES" 76 #define _XA_MOTIF_WM_OFFSET "_MOTIF_WM_OFFSET" 77 #define _XA_MOTIF_WM_MENU "_MOTIF_WM_MENU" 78 #define _XA_MOTIF_WM_INFO "_MOTIF_WM_INFO" 79 #define _XA_MWM_HINTS _XA_MOTIF_WM_HINTS 80 #define _XA_MWM_MESSAGES _XA_MOTIF_WM_MESSAGES 81 #define _XA_MWM_MENU _XA_MOTIF_WM_MENU 82 #define _XA_MWM_INFO _XA_MOTIF_WM_INFO 83 84 85 /* 86 * _MWM_INFO property 87 */ 88 typedef struct { 89 long flags; 90 Window wm_window; 91 } MotifWmInfo; 92 93 typedef MotifWmInfo MwmInfo; 94 95 #define MWM_INFO_STARTUP_STANDARD (1L<<0) 96 #define MWM_INFO_STARTUP_CUSTOM (1L<<1) 97 98 /* 99 * _MWM_HINTS property 100 */ 101 typedef struct { 102 CARD32 flags; 103 CARD32 functions; 104 CARD32 decorations; 105 INT32 inputMode; 106 CARD32 status; 107 } PropMotifWmHints; 108 109 typedef PropMotifWmHints PropMwmHints; 110 111 #define PROP_MOTIF_WM_HINTS_ELEMENTS 5 112 #define PROP_MWM_HINTS_ELEMENTS PROP_MOTIF_WM_HINTS_ELEMENTS 113 114 /* 115 * _MWM_INFO property, slight return 116 */ 117 typedef struct { 118 CARD32 flags; 119 CARD32 wmWindow; 120 } PropMotifWmInfo; 121 122 typedef PropMotifWmInfo PropMwmInfo; 123 124 #define PROP_MOTIF_WM_INFO_ELEMENTS 2 125 #define PROP_MWM_INFO_ELEMENTS PROP_MOTIF_WM_INFO_ELEMENTS 126 127 #ifdef __cplusplus 128 } 129 #endif 130 131 #endif /* MWMUTIL_H_INCLUDED */ 132