2 * Copyright 1989 Massachusetts Institute of Technology
4 * Permission to use, copy, modify, and distribute this software and its
5 * documentation for any purpose and without fee is hereby granted, provided
6 * that the above copyright notice appear in all copies and that both that
7 * copyright notice and this permission notice appear in supporting
8 * documentation, and that the name of M.I.T. not be used in advertising
9 * or publicity pertaining to distribution of the software without specific,
10 * written prior permission. M.I.T. makes no representations about the
11 * suitability of this software for any purpose. It is provided "as is"
12 * without express or implied warranty.
14 * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T.
16 * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
17 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
18 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
19 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
22 /***********************************************************************
24 * $XConsortium: screen.h,v 1.62 91/05/01 17:33:09 keith Exp $
26 * twm per-screen data include file
28 * 11-3-88 Dave Payne, Apple Computer File created
30 ***********************************************************************/
36 #include <X11/Xutil.h>
37 #include <X11/cursorfont.h>
44 #ifndef ORIGINAL_PIXMAPS
45 #include "util.h" /* for Image structure */
48 typedef struct _StdCmap {
49 struct _StdCmap *next; /* next link in chain */
50 Atom atom; /* property from which this came */
51 int nmaps; /* number of maps below */
52 XStandardColormap *maps; /* the actual maps */
55 #define SIZE_HINDENT 10
57 #ifdef ORIGINAL_SIZEVINDENT
58 #define SIZE_VINDENT 2
60 #define SIZE_VINDENT 5
63 typedef struct ScreenInfo
65 int screen; /* the default screen */
66 int d_depth; /* copy of DefaultDepth(dpy, screen) */
67 Visual *d_visual; /* copy of DefaultVisual(dpy, screen) */
68 int Monochrome; /* is the display monochrome ? */
69 int MyDisplayWidth; /* my copy of DisplayWidth(dpy, screen) */
70 int MyDisplayHeight; /* my copy of DisplayHeight(dpy, screen) */
71 int MaxWindowWidth; /* largest window to allow */
72 int MaxWindowHeight; /* ditto */
75 int ResizeX; /* coordinate of resize/position window */
76 int ResizeY; /* ditto */
78 int VirtualDesktopMaxWidth; /* max width of virtual desktop */
79 int VirtualDesktopMaxHeight; /* max height of virtual desktop */
80 int VirtualDesktopWidth; /* width of virtual desktop */
81 int VirtualDesktopHeight; /* height of virtual desktop */
82 int VirtualDesktopX; /* top left x of my screen on the desktop */
83 int VirtualDesktopY; /* top left y of my screen on the desktop */
84 int VirtualDesktopPanDistanceX; /* distance to pan screen */
85 int VirtualDesktopPanDistanceY; /* distance to pan screen */
87 /* these are for the little vd display */
88 int VirtualDesktopDScale; /* scale of the virtual desktop display */
89 int VirtualDesktopDX; /* position of the vd display */
90 int VirtualDesktopDY; /* position of the vd display */
92 /* the autopan stuff */
93 int AutoPanX; /* how far should autopan travel */
94 /* AutoPanX is also "whether autopan configured". */
95 int AutoPanY; /* how far should autopan travel */
96 Window VirtualDesktopAutoPan[4]; /* the autopan windows */
97 /* 0 = left, 1 = right, 2 = top, 3 = bottom */
100 int VirtualDesktopPanResistance; /* how much effort it takes to pan */
102 TwmWindow TwmRoot; /* the head of the twm window list */
104 Window Root; /* the root window */
105 Window SizeWindow; /* the resize dimensions window */
106 Window InfoWindow; /* the information window */
107 Window VirtualDesktopDisplayOuter; /* wrapper for display of the virtual desktop */
108 Window VirtualDesktopDisplay; /* display of the virtual desktop */
109 Window VirtualDesktopDScreen; /* display of the real screen on the vd */
110 TwmWindow *VirtualDesktopDisplayTwin; /* twm window for the above */
112 name_list *ImageCache; /* list of pixmaps */
113 name_list *Icons; /* list of icon pixmaps */
115 int pullW, pullH; /* size of pull right menu icon */
117 /* djhjr - 5/17/98 */
118 /* added the unknowns - djhjr - 8/13/98 */
119 #ifdef ORIGINAL_PIXMAPS
120 Pixmap UnknownPm; /* the unknown icon pixmap */
121 int UnknownWidth; /* width of the unknown icon */
122 int UnknownHeight; /* height of the unknown icon */
123 Pixmap hilitePm; /* focus highlight window background */
124 int hilite_pm_width, hilite_pm_height; /* cache the size */
125 Pixmap virtualPm; /* panner background pixmap RFB PIXMAP */
126 int virtual_pm_width, virtual_pm_height; /* RFB PIXMAP */
127 Pixmap RealScreenPm; /* panner background pixmap RFB PIXMAP */
128 int RealScreen_pm_width, RealScreen_pm_height; /* RFB PIXMAP */
129 #else /* ORIGINAL_PIXMAPS */
130 char *unknownName; /* name of unknown icon pixmap */
132 /* djhjr - 10/25/02 */
133 char *hiliteName; /* name of built-in focus highlight pixmap */
134 /* two more - djhjr - 10/30/02 */
135 char *iconMgrIconName; /* name of built-in iconmgr iconify pixmap */
136 char *menuIconName; /* name of built-in pull right menu pixmap */
138 /* depreciated - djhjr - 10/30/02
139 Image *siconifyPm; * the icon manager iconify pixmap *
140 Image *pullPm; * pull right menu icon *
143 Image *hilitePm; /* focus highlight window image structure */
144 Image *virtualPm; /* panner background window image structure */
145 Image *realscreenPm; /* real screen window image structure */
146 #endif /* ORIGINAL_PIXMAPS */
148 MenuRoot *MenuList; /* head of the menu list */
149 MenuRoot *LastMenu; /* the last menu (mostly unused?) */
150 MenuRoot *Windows; /* the TwmWindows menu */
152 TwmWindow *Ring; /* one of the windows in window ring */
153 TwmWindow *RingLeader; /* current winodw in ring */
155 MouseButton Mouse[MAX_BUTTONS+1][NUM_CONTEXTS][MOD_SIZE];
156 MouseButton DefaultFunction;
157 MouseButton WindowFunction;
160 Colormaps *cmaps; /* current list of colormap windows */
161 int maxCmaps; /* maximum number of installed colormaps */
162 unsigned long first_req; /* seq # for first XInstallColormap() req in
163 pass thru loading a colortable list */
164 int root_pushes; /* current push level to install root
166 TwmWindow *pushed_window; /* saved window to install when pushes drops
171 StdCmap *head, *tail; /* list of maps */
172 StdCmap *mru; /* most recently used in list */
173 int mruindex; /* index of mru in entry */
177 int nleft, nright; /* numbers of buttons in list */
178 TitleButton *head; /* start of list */
179 int border; /* button border */
180 int pad; /* button-padding */
181 int width; /* width of single button & border */
182 int leftx; /* start of left buttons */
183 int titlex; /* start of title string */
184 int rightoff; /* offset back from right edge */
186 ColorPair BorderTileC; /* border tile colors */
187 ColorPair TitleC; /* titlebar colors */
188 ColorPair MenuC; /* menu colors */
189 ColorPair MenuTitleC; /* menu title colors */
190 ColorPair IconC; /* icon colors */
191 ColorPair IconManagerC; /* icon manager colors */
192 ColorPair DefaultC; /* default colors */
194 /* djhjr - 4/19/96 */
195 ColorPair BorderColorC; /* color of window borders */
197 ColorPair VirtualDesktopDisplayC; /* desktop display color */
198 ColorPair DoorC; /* default door colors */
199 ColorPair VirtualC; /* default virtual colors *//*RFB VCOLOR*/
200 ColorPair RealScreenC; /* "real screen" in panner RFB 4/92 */
201 Pixel VirtualDesktopDisplayBorder; /* desktop display default border */
202 Pixel BorderColor; /* color of window borders */
203 Pixel MenuShadowColor; /* menu shadow color */
204 Pixel IconBorderColor; /* icon border color */
205 Pixel IconManagerHighlight; /* icon manager highlight */
207 /* djhjr - 4/19/96 */
208 short ClearBevelContrast; /* The contrast of the clear shadow */
209 short DarkBevelContrast; /* The contrast of the dark shadow */
211 Cursor TitleCursor; /* title bar cursor */
212 Cursor FrameCursor; /* frame cursor */
213 Cursor IconCursor; /* icon cursor */
214 Cursor IconMgrCursor; /* icon manager cursor */
215 Cursor ButtonCursor; /* title bar button cursor */
216 Cursor MoveCursor; /* move cursor */
217 Cursor ResizeCursor; /* resize cursor */
218 Cursor WaitCursor; /* wait a while cursor */
219 Cursor MenuCursor; /* menu cursor */
220 Cursor SelectCursor; /* dot cursor for f.move, etc. from menus */
221 Cursor DestroyCursor; /* skull and cross bones, f.destroy */
222 Cursor DoorCursor;/*RFBCURSOR*/
223 Cursor VirtualCursor;/*RFBCURSOR*/
224 Cursor DesktopCursor;/*RFBCURSOR*/
225 Cursor NoCursor; /* a black cursor - used on desktop display */
227 name_list *BorderColorL;
228 name_list *IconBorderColorL;
229 name_list *BorderTileForegroundL;
230 name_list *BorderTileBackgroundL;
231 name_list *TitleForegroundL;
232 name_list *TitleBackgroundL;
233 name_list *IconForegroundL;
234 name_list *IconBackgroundL;
235 name_list *IconManagerFL;
236 name_list *IconManagerBL;
239 /* djhjr - 4/19/96 */
240 name_list *NoBorder; /* list of window without borders */
243 name_list *OpaqueMoveL; /* list of windows moved as a solid */
244 name_list *NoOpaqueMoveL; /* list of windows moved as an outline */
245 name_list *OpaqueResizeL; /* list of windows resized as a solid */
246 name_list *NoOpaqueResizeL; /* list of windows resized as an outline */
248 name_list *NoTitle; /* list of window names with no title bar */
249 name_list *MakeTitle; /* list of window names with title bar */
250 name_list *AutoRaise; /* list of window names to auto-raise */
251 name_list *IconNames; /* list of window names and icon names */
252 name_list *NoHighlight; /* list of windows to not highlight */
253 name_list *NoStackModeL; /* windows to ignore stack mode requests */
254 name_list *NoTitleHighlight;/* list of windows to not highlight the TB*/
255 name_list *DontIconify; /* don't iconify by unmapping */
256 name_list *IconMgrNoShow; /* don't show in the icon manager */
257 name_list *IconMgrShow; /* show in the icon manager */
258 name_list *IconifyByUn; /* windows to iconify by unmapping */
259 name_list *StartIconified; /* windows to start iconic */
260 name_list *IconManagerHighlightL; /* icon manager highlight colors */
261 name_list *SqueezeTitleL; /* windows of which to squeeze title */
262 name_list *DontSqueezeTitleL; /* windows of which not to squeeze */
263 name_list *WindowRingL; /* windows in ring */
265 /* submitted by Jonathan Paisley - 10/27/02 */
266 name_list *NoWindowRingL; /* windows not added to ring */
268 name_list *WarpCursorL; /* windows to warp cursor to on deiconify */
269 name_list *NailedDown; /* windows that are nailed down */
270 name_list *VirtualDesktopColorFL; /* color of representations on the vd display */
271 name_list *VirtualDesktopColorBL; /* color of representations on the vd display */
272 name_list *VirtualDesktopColorBoL; /* color of representations on the vd display */
273 name_list *DontShowInDisplay; /* don't show these in the desktop display */
275 /* Submitted by Erik Agsjo <erik.agsjo@aktiedirekt.com> */
276 name_list *DontShowInTWMWindows; /* don't show these in the TWMWindows menu */
278 name_list *DoorForegroundL; /* doors foreground */
279 name_list *DoorBackgroundL; /* doors background */
281 /* djhjr - 9/24/02 */
282 name_list *UsePPositionL; /* windows with UsePPosition set */
284 GC NormalGC; /* normal GC for everything */
285 GC MenuGC; /* gc for menus */
286 GC DrawGC; /* GC to draw lines for move and resize */
288 /* djhjr - 4/19/96 */
289 GC GreyGC; /* for shadowing on monochrome displays */
290 GC ShadGC; /* for shadowing on with patterns */
294 unsigned long XORvalue; /* number to use when drawing xor'ed */
295 MyFont TitleBarFont; /* title bar font structure */
296 MyFont MenuFont; /* menu font structure */
297 MyFont IconFont; /* icon font structure */
298 MyFont SizeFont; /* resize font structure */
299 MyFont IconManagerFont; /* window list font structure */
300 MyFont VirtualFont; /* virtual display windows */
301 MyFont DoorFont; /* for drawing in doors */
302 MyFont MenuTitleFont; /* DSE -- for menu titles */
303 MyFont InfoFont; /* for the info window */
305 IconMgr iconmgr; /* default icon manager */
306 struct RootRegion *FirstIconRegion; /* pointer to icon regions */
307 struct RootRegion *LastIconRegion; /* pointer to the last icon region */
308 char *IconDirectory; /* icon directory to search */
310 /* djhjr - 4/26/99 */
311 struct RootRegion *FirstAppletRegion; /* pointer to applet regions */
312 struct RootRegion *LastAppletRegion; /* pointer to the last applet region */
314 /* djhjr - 12/26/98 */
315 char *BitmapFilePath; /* local copy of the X database resource */
317 int SizeStringOffset; /* x offset in size window for drawing */
318 int SizeStringWidth; /* minimum width of size window */
319 int BorderWidth; /* border width of twm windows */
323 int ThreeDBorderWidth; * 3D border width of twm windows *
326 /* widths of the various 3D shadows - djhjr - 5/2/98 */
327 int BorderBevelWidth;
330 int IconMgrBevelWidth;
333 /* djhjr - 8/11/98 */
335 int ButtonBevelWidth;
339 int VirtualDesktopBevelWidth;
341 /* djhjr - 5/22/00 */
342 int MenuScrollBorderWidth; /* top and bottom margins for menu scrolling */
343 int MenuScrollJump; /* number of entries for menu scroll */
345 int IconBorderWidth; /* border width of icon windows */
346 int TitleHeight; /* height of the title bar window */
347 TwmWindow *Focus; /* the twm window that has focus */
348 TwmWindow *Newest; /* the most newly added twm window -- PF */
349 int EntryHeight; /* menu entry height */
350 int FramePadding; /* distance between decorations and border */
351 int TitlePadding; /* distance between items in titlebar */
352 int ButtonIndent; /* amount to shrink buttons on each side */
353 int NumAutoRaises; /* number of autoraise windows on screen */
355 short SqueezeTitle; /* make title as small as possible */
356 short MoveDelta; /* number of pixels before f.move starts */
357 short ZoomCount; /* zoom outline count */
359 /* djhjr - 6/22/01 */
360 int PauseOnExit; /* delay before shutting down via Done() */
361 int PauseOnQuit; /* delay before shuttind down via f.quit */
363 /* djhjr - 5/17/96 */
364 #ifdef ORIGINAL_SHORTS
365 /* short NoDefaults; - DSE */
366 short NoDefaultMouseOrKeyboardBindings; /* do not add default UI mouse and keyboard stuff - DSE */
367 short NoDefaultTitleButtons; /* do not add default resize and iconify title buttons - DSE */
368 short UsePPosition; /* what do with PPosition, see values below */
369 short OldFashionedTwmWindowsMenu;
372 short UseRealScreenBorder;
375 short AutoRelativeResize; /* start resize relative to position in quad */
376 short FocusRoot; /* is the input focus on the root ? */
378 /* djhjr - 10/16/02 */
379 short WarpCentered; /* warp to center of windows? */
381 short WarpCursor; /* warp cursor on de-iconify? */
382 short ForceIcon; /* force the icon to the user specified */
383 short NoGrabServer; /* don't do server grabs */
384 short NoRaiseMove; /* don't raise window following move */
385 short NoRaiseResize; /* don't raise window following resize */
386 short NoRaiseDeicon; /* don't raise window on deiconify */
387 short NoRaiseWarp; /* don't raise window on warp */
388 short DontMoveOff; /* don't allow windows to be moved off */
389 short DoZoom; /* zoom in and out of icons */
390 short TitleFocus; /* focus on window in title bar ? */
392 /* djhjr - 5/27/98 */
393 short IconManagerFocus; /* focus on window of the icon manager entry? */
395 /* djhjr - 12/14/98 */
396 short StaticIconPositions; /* non-nailed icons stay put */
398 /* djhjr - 10/2/01 */
399 short StrictIconManager; /* show only the iconified */
401 /* djhjr - 8/23/02 */
402 short NoBorders; /* put borders on windows */
404 short NoTitlebar; /* put title bars on windows */
405 short DecorateTransients; /* put title bars on transients */
406 short IconifyByUnmapping; /* simply unmap windows when iconifying */
407 short ShowIconManager; /* display the window list */
408 short IconManagerDontShow; /* show nothing in the icon manager */
409 short NoIconifyIconManagers; /* don't iconify the icon manager -- PF */
410 short BackingStore; /* use backing store for menus */
411 short SaveUnder; /* use save under's for menus */
412 short RandomPlacement; /* randomly place windows that no give hints */
413 short PointerPlacement; /* place near mouse pointer */
414 short OpaqueMove; /* move the window rather than outline */
417 short OpaqueResize; /* resize the window rather than outline */
419 short Highlight; /* should we highlight the window borders */
421 /* djhjr - 1/27/98 */
422 short IconMgrHighlight; /* should we highlight icon manager entries */
424 short StackMode; /* should we honor stack mode requests */
425 short TitleHighlight; /* should we highlight the titlebar */
426 short SortIconMgr; /* sort entries in the icon manager */
427 short Shadow; /* show the menu shadow */
428 short InterpolateMenuColors;/* make pretty menus */
429 short NoIconManagers; /* Don't create any icon managers */
430 short ClientBorderWidth; /* respect client window border width */
431 short HaveFonts; /* set if fonts have been loaded */
432 short FirstTime; /* first time we've read .twmrc */
433 short CaseSensitive; /* be case-sensitive when sorting names */
434 short WarpUnmapped; /* allow warping to unmapped windows */
435 short DeIconifyToScreen; /* if deiconified, should this goto the screen ? */
436 short WarpWindows; /* should windows or the screen be warped ? */
437 short snapRealScreen; /* should the real screen snap to a pandistance grid ? */
438 short GeometriesAreVirtual; /* should geometries be interpreted as virtual or real ? */
439 short Virtual; /* are we virtual ? (like, hey man....) */
440 short NamesInVirtualDesktop;/* show names in virtual desktop display ? */
441 short AutoRaiseDefault; /* AutoRaise all windows if true *//*RAISEDELAY*/
442 short UseWindowRing; /* put all windows in the ring? */
444 short StayUpOptionalMenus; /* PF */
445 short WarpToTransients; /* PF */
446 short EnhancedExecResources; /* instead of normal behavior - DSE */
447 short RightHandSidePulldownMenus; /* instead of left-right center - DSE */
448 short LessRandomZoomZoom; /* makes zoomzoom a better visual bell - DSE */
449 short PrettyZoom; /* nicer-looking animation - DSE */
450 short StickyAbove; /* sticky windows above other windows - DSE */
451 short DontInterpolateTitles; /* menu titles are excluded from color interpolation - DSE */
454 short FixManagedVirtualGeometries; /* bug workaround */
456 short FixTransientVirtualGeometries; /* bug workaround - DSE */
457 short WarpSnug; /* make sure entire window is on screen when warping - DSE */
459 /* djhjr - 6/25/96 */
460 short ShallowReliefWindowButton;
462 /* obsoleted by the *BevelWidth resources - djhjr - 8/11/98
466 short use3Diconmanagers;
470 short BeNiceToColormap;
472 /* obsoleted by the *BevelWidth resources - djhjr - 8/11/98
477 /* obsoleted by the ":xpm:*" built-in pixmaps - djhjr - 10/26/02
479 short SunkFocusWindowTitle;
482 /* for rader - djhjr - 2/9/99 */
483 short NoPrettyTitles;
485 /* djhjr - 9/21/96 */
486 short ButtonColorIsFrame;
488 /* djhjr - 4/17/98 */
489 short VirtualReceivesMotionEvents;
490 short VirtualSendsMotionEvents;
492 /* djhjr - 6/22/99 */
493 short DontDeiconifyTransients;
495 /* submitted by Ugen Antsilevitch - 5/28/00 */
498 /* djhjr - 10/11/01 */
499 short ZoomZoom; /* fallback on random zooms on iconify */
501 /* djhjr - 10/20/02 */
502 short NoBorderDecorations;
504 /* djhjr - 11/3/03 */
509 unsigned int NoDefaultMouseOrKeyboardBindings : 1;
510 unsigned int NoDefaultTitleButtons : 1;
511 unsigned int UsePPosition : 2;
512 unsigned int OldFashionedTwmWindowsMenu : 1;
515 unsigned int UseRealScreenBorder : 1;
518 unsigned int AutoRelativeResize : 1;
519 unsigned int FocusRoot : 1;
521 /* djhjr - 10/16/02 */
522 unsigned int WarpCentered : 2;
524 unsigned int WarpCursor : 1;
525 unsigned int ForceIcon : 1;
526 unsigned int NoGrabServer : 1;
527 unsigned int NoRaiseMove : 1;
528 unsigned int NoRaiseResize : 1;
529 unsigned int NoRaiseDeicon : 1;
530 unsigned int NoRaiseWarp : 1;
531 unsigned int DontMoveOff : 1;
532 unsigned int DoZoom : 1;
533 unsigned int TitleFocus : 1;
535 /* djhjr - 5/27/98 */
536 unsigned int IconManagerFocus : 1;
538 /* djhjr - 12/14/98 */
539 unsigned int StaticIconPositions : 1;
541 /* djhjr - 10/2/01 */
542 unsigned int StrictIconManager : 1;
544 /* djhjr - 8/23/02 */
545 unsigned int NoBorders : 1;
547 unsigned int NoTitlebar : 1;
548 unsigned int DecorateTransients : 1;
549 unsigned int IconifyByUnmapping : 1;
550 unsigned int ShowIconManager : 1;
551 unsigned int IconManagerDontShow : 1;
552 unsigned int NoIconifyIconManagers : 1;
553 unsigned int BackingStore : 1;
554 unsigned int SaveUnder : 1;
555 unsigned int RandomPlacement : 1;
556 unsigned int PointerPlacement : 1;
557 unsigned int OpaqueMove : 1;
560 unsigned int OpaqueResize : 1;
562 unsigned int Highlight : 1;
564 /* djhjr - 1/27/98 */
565 unsigned int IconMgrHighlight : 1;
567 unsigned int StackMode : 1;
568 unsigned int TitleHighlight : 1;
569 unsigned int SortIconMgr : 1;
570 unsigned int Shadow : 1;
571 unsigned int InterpolateMenuColors : 1;
572 unsigned int NoIconManagers : 1;
573 unsigned int ClientBorderWidth : 1;
574 unsigned int HaveFonts : 1;
575 unsigned int FirstTime : 1;
576 unsigned int CaseSensitive : 1;
577 unsigned int WarpUnmapped : 1;
578 unsigned int DeIconifyToScreen : 1;
579 unsigned int WarpWindows : 1;
580 unsigned int snapRealScreen : 1;
581 unsigned int GeometriesAreVirtual : 1;
582 unsigned int Virtual : 1;
583 unsigned int NamesInVirtualDesktop : 1;
584 unsigned int AutoRaiseDefault : 1;
585 unsigned int UseWindowRing : 1;
586 unsigned int StayUpMenus : 1;
587 unsigned int StayUpOptionalMenus : 1;
588 unsigned int WarpToTransients : 1;
589 unsigned int EnhancedExecResources : 1;
590 unsigned int RightHandSidePulldownMenus : 1;
591 unsigned int LessRandomZoomZoom : 1;
592 unsigned int PrettyZoom : 1;
593 unsigned int StickyAbove : 1;
594 unsigned int DontInterpolateTitles : 1;
597 unsigned int FixManagedVirtualGeometries : 1;
599 unsigned int FixTransientVirtualGeometries : 1;
600 unsigned int WarpSnug : 1;
601 unsigned int ShallowReliefWindowButton : 2;
603 /* obsoleted by the *BevelWidth resources - djhjr - 8/11/98
604 unsigned int use3Dmenus : 1;
605 unsigned int use3Dtitles : 1;
606 unsigned int use3Diconmanagers : 1;
607 unsigned int use3Dborders : 1;
610 unsigned int use3Dicons : 1;
613 unsigned int BeNiceToColormap : 1;
615 /* obsoleted by the ":xpm:*" built-in pixmaps - djhjr - 10/26/02
616 unsigned int SunkFocusWindowTitle : 1;
619 /* for rader - djhjr - 2/9/99 */
620 unsigned int NoPrettyTitles : 1;
622 unsigned int ButtonColorIsFrame : 1;
624 /* djhjr - 4/17/98 */
625 unsigned int VirtualReceivesMotionEvents : 1;
626 unsigned int VirtualSendsMotionEvents : 1;
628 /* djhjr - 6/22/99 */
629 unsigned int DontDeiconifyTransients : 1;
631 /* submitted by Ugen Antsilevitch - 5/28/00 */
632 unsigned int WarpVisible : 1;
634 /* djhjr - 10/11/01 */
635 unsigned int ZoomZoom : 1;
637 /* djhjr - 10/20/02 */
638 unsigned int NoBorderDecorations : 1;
640 /* djhjr - 11/3/03 */
641 unsigned int RaiseOnStart : 1;
643 #define NoDefaultMouseOrKeyboardBindings userflags.NoDefaultMouseOrKeyboardBindings
644 #define NoDefaultTitleButtons userflags.NoDefaultTitleButtons
645 #define UsePPosition userflags.UsePPosition
646 #define OldFashionedTwmWindowsMenu userflags.OldFashionedTwmWindowsMenu
649 #define UseRealScreenBorder userflags.UseRealScreenBorder
652 #define AutoRelativeResize userflags.AutoRelativeResize
653 #define FocusRoot userflags.FocusRoot
655 /* djhjr - 10/16/02 */
656 #define WarpCentered userflags.WarpCentered
658 #define WarpCursor userflags.WarpCursor
659 #define ForceIcon userflags.ForceIcon
660 #define NoGrabServer userflags.NoGrabServer
661 #define NoRaiseMove userflags.NoRaiseMove
662 #define NoRaiseResize userflags.NoRaiseResize
663 #define NoRaiseDeicon userflags.NoRaiseDeicon
664 #define NoRaiseWarp userflags.NoRaiseWarp
665 #define DontMoveOff userflags.DontMoveOff
666 #define DoZoom userflags.DoZoom
667 #define TitleFocus userflags.TitleFocus
669 /* djhjr - 5/27/98 */
670 #define IconManagerFocus userflags.IconManagerFocus
672 /* djhjr - 12/14/98 */
673 #define StaticIconPositions userflags.StaticIconPositions
675 /* djhjr - 10/2/01 */
676 #define StrictIconManager userflags.StrictIconManager
678 /* djhjr - 8/23/02 */
679 #define NoBorders userflags.NoBorders
681 #define NoTitlebar userflags.NoTitlebar
682 #define DecorateTransients userflags.DecorateTransients
683 #define IconifyByUnmapping userflags.IconifyByUnmapping
684 #define ShowIconManager userflags.ShowIconManager
685 #define IconManagerDontShow userflags.IconManagerDontShow
686 #define NoIconifyIconManagers userflags.NoIconifyIconManagers
687 #define BackingStore userflags.BackingStore
688 #define SaveUnder userflags.SaveUnder
689 #define RandomPlacement userflags.RandomPlacement
690 #define PointerPlacement userflags.PointerPlacement
691 #define OpaqueMove userflags.OpaqueMove
694 #define OpaqueResize userflags.OpaqueResize
696 #define Highlight userflags.Highlight
698 /* djhjr - 1/27/98 */
699 #define IconMgrHighlight userflags.IconMgrHighlight
701 #define StackMode userflags.StackMode
702 #define TitleHighlight userflags.TitleHighlight
703 #define SortIconMgr userflags.SortIconMgr
704 #define Shadow userflags.Shadow
705 #define InterpolateMenuColors userflags.InterpolateMenuColors
706 #define NoIconManagers userflags.NoIconManagers
707 #define ClientBorderWidth userflags.ClientBorderWidth
708 #define HaveFonts userflags.HaveFonts
709 #define FirstTime userflags.FirstTime
710 #define CaseSensitive userflags.CaseSensitive
711 #define WarpUnmapped userflags.WarpUnmapped
712 #define DeIconifyToScreen userflags.DeIconifyToScreen
713 #define WarpWindows userflags.WarpWindows
714 #define snapRealScreen userflags.snapRealScreen
715 #define GeometriesAreVirtual userflags.GeometriesAreVirtual
716 #define Virtual userflags.Virtual
717 #define NamesInVirtualDesktop userflags.NamesInVirtualDesktop
718 #define AutoRaiseDefault userflags.AutoRaiseDefault
719 #define UseWindowRing userflags.UseWindowRing
720 #define StayUpMenus userflags.StayUpMenus
721 #define StayUpOptionalMenus userflags.StayUpOptionalMenus
722 #define WarpToTransients userflags.WarpToTransients
723 #define EnhancedExecResources userflags.EnhancedExecResources
724 #define RightHandSidePulldownMenus userflags.RightHandSidePulldownMenus
725 #define LessRandomZoomZoom userflags.LessRandomZoomZoom
726 #define PrettyZoom userflags.PrettyZoom
727 #define StickyAbove userflags.StickyAbove
728 #define DontInterpolateTitles userflags.DontInterpolateTitles
731 #define FixManagedVirtualGeometries userflags.FixManagedVirtualGeometries
733 #define FixTransientVirtualGeometries userflags.FixTransientVirtualGeometries
734 #define WarpSnug userflags.WarpSnug
735 #define ShallowReliefWindowButton userflags.ShallowReliefWindowButton
737 /* obsoleted by the *BevelWidth resources - djhjr - 8/11/98
738 #define use3Dmenus userflags.use3Dmenus
739 #define use3Dtitles userflags.use3Dtitles
740 #define use3Diconmanagers userflags.use3Diconmanagers
741 #define use3Dborders userflags.use3Dborders
744 #define use3Dicons userflags.use3Dicons
747 #define BeNiceToColormap userflags.BeNiceToColormap
749 /* obsoleted by the ":xpm:*" built-in pixmaps - djhjr - 10/26/02
750 #define SunkFocusWindowTitle userflags.SunkFocusWindowTitle
753 /* for rader - djhjr - 2/9/99 */
754 #define NoPrettyTitles userflags.NoPrettyTitles
756 #define ButtonColorIsFrame userflags.ButtonColorIsFrame
758 /* djhjr - 4/17/98 */
759 #define VirtualReceivesMotionEvents userflags.VirtualReceivesMotionEvents
760 #define VirtualSendsMotionEvents userflags.VirtualSendsMotionEvents
762 /* djhjr - 6/22/99 */
763 #define DontDeiconifyTransients userflags.DontDeiconifyTransients
765 /* submitted by Ugen Antsilevitch - 5/28/00 */
766 #define WarpVisible userflags.WarpVisible
768 /* djhjr - 10/11/01 */
769 #define ZoomZoom userflags.ZoomZoom
771 /* djhjr - 10/20/02 */
772 #define NoBorderDecorations userflags.NoBorderDecorations
774 /* djhjr - 11/3/03 */
775 #define RaiseOnStart userflags.RaiseOnStart
778 /* djhjr - 9/10/03 */
779 int IgnoreModifiers; /* binding modifiers to ignore */
782 TwmDoor *Doors; /* a list of doors on this screen */
784 int AutoPanBorderWidth; /* of autopan windows, really - DSE */
785 int AutoPanExtraWarp; /* # of extra pixels to warp - DSE */
786 int RealScreenBorderWidth; /* in virtual desktop - DSE */
787 int AutoPanWarpWithRespectToRealScreen; /* percent - DSE */
790 extern int MultiScreen;
791 extern int NumScreens;
792 extern ScreenInfo **ScreenList;
793 extern ScreenInfo *Scr;
794 extern int FirstScreen;
798 #define PPOS_NON_ZERO 2
799 /* may eventually want an option for having the PPosition be the initial
800 location for the drag lines */
802 /* djhjr - 10/16/02 */
804 #define WARPC_TITLED 1
805 #define WARPC_UNTITLED 2
808 #endif /* _SCREEN_ */