home *** CD-ROM | disk | FTP | other *** search
- /*
- wmgrdecl.h
-
- % Window manager structure
-
- 3/23/89 by Ted.
- Extracted from winobj.h
-
- OWL 1.1
- Copyright (c) 1988, 1989 by Oakland Group, Inc.
- ALL RIGHTS RESERVED.
-
- Revision History:
- -----------------
- 5/11/89 ted Added mouse trap-win flag.
- 6/26/89 ted Added nextwin, mousecode.
- 7/10/89 ted Moved nextwin to window structure.
- 7/12/89 ted Converted '_func' prototypes from typedef to macro.
- 8/16/89 ted Added fakemouse flag.
- */
- /* -------------------------------------------------------------------------- */
-
- /* the window manager structure */
-
- typedef obj_type win_type;
- #define SMM_func(fname) unsigned fname(_arg2(moupos_struct *moupos, boolean newcurr))
-
- typedef struct wmgr_struct {
- win_type dispwin; /* The display reference window */
- win_type backwin; /* The background window */
- win_type currwin; /* The window the cursor is shown in, etc. */
-
- /* The window lists */
- win_type employedhead; /* employed window list head */
- win_type unemployedhead; /* unemployed window list head */
- win_type bot_sys_win; /* pointer to the non-displayable system window */
- /* above the top displayable employed window */
- win_type bot_employed_win; /* pointer to bottom displayable employed window */
-
- VOID *tilerdata; /* pointer to the window tiler data structure */
-
- SMM_func ((*SMMptr)); /* SendMouseMsgs function pointer (initted by dhard_InitMouse) */
- unsigned mousereply; /* communication between kb_Check and kb_Read */
- unsigned inmousemsg:1; /* re-entrancy flag for mouse messages */
- unsigned newcurrent:1; /* flag for new current window request by mouse */
- unsigned wasmouse:1; /* flag for kb event caused by mouse event */
- unsigned fakemouse:1; /* flag for artificial mouse event msg */
-
- /* WINM_GO control-passing info */
- mev_struct lastmev; /* Latest mev, stashed when sent to handler */
- moupos_struct lastmoupos; /* last moupos read from hardware. */
- win_type fromwin; /* Window which control is being passed from */
- win_type trapmousewin; /* Window to trap mouse events in */
- unsigned mousecode; /* A stashable variable for stuffing kb_Read */
- } *wmgr_type;
-
- /* -------------------------------------------------------------------------- */
-
-