mirror of https://github.com/XEphem/XEphem.git
250 lines
7.1 KiB
C
250 lines
7.1 KiB
C
/*
|
|
* @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 <X11/X.h> /* for Window typedefs */
|
|
#include <X11/Xmd.h> /* 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 */
|