dtwm: Change to ANSI function definitions
[oweals/cde.git] / cde / programs / dtwm / FAQ.wm
1 /*************************************<+>*************************************
2  *****************************************************************************
3  **
4  **  File:        FAQ.wm
5  **
6  **  Project:     Window/Workspace Manager
7  **
8  **  Description:
9  **  -----------
10  **     When we get a call from a "customer" we can refer to this 
11  **     list for an available answer, or, add any new information
12  **     we gain from the call.   Please try to group questions by topic.
13  **     Add new topics as needed.
14  **
15  **
16  *****************************************************************************
17  **
18  **     (c) Copyright 1990, 1991 Hewlett-Packard Company
19  **     All Rights reserved
20  **
21  **
22  *****************************************************************************
23  *************************************<+>*************************************/
24
25
26
27 /*
28  * Focus Policy
29  */
30
31
32 Q. When the window/workspace manager keyboardFocusPolicy == pointer,
33    how can I help the user dismiss one of my application's modal
34    dialogs without forcing the user to move the mouse?  Should I 
35    warp the pointer?
36
37 A. If the user has chosen pointer focus policy, the user has declared that 
38    she wants to control the focus directly.  We believe an application
39    should not warp the pointer.  [ In any case, when the user grows up,
40    he will change to explicit keyboardFocusPolicy  :-) ]
41
42 /*
43  * Backdrops
44  */
45
46 Q. I set a gif image into my root window, but I can't see it with DT.
47    How come?
48
49 A. DT normally covers the root windows with backdrops for each
50    workspace. Your image is there, but the root window is covered, so 
51    you can't see it. To disable backdrops, add a resource like:
52
53        Dtwm*<screen_name>*<workspace_name>*backdrop*image: none
54
55    example:
56
57        Dtwm*HighResHighColor*One*backdrop*image: none
58
59    This disables backdrops for workspace One and lets the root window
60    show through.
61
62
63 /*
64  * Killing Windows
65  */
66
67 Q. How do I stop the window manager from killing my client when the 
68    user double-clicks on the system menu box?
69
70 A. There are two ways of approaching this. 
71
72    1. Set the clientFunctions for your client to disable the "Close"
73       item. This will work with mwm or dtwm. For example:
74
75           Dtwm*Console*clientFunctions:     -close
76         
77       disables "close" for the Console window.
78
79
80    2. Modify your client to follow the WM_DELETE_WINDOW protocol as
81       described in the ICCCM. This will work with any window manager.
82       If your client is Motif you can:
83
84       a. Call XmAddWMProtocolCallback to add a WM_DELETE_WINDOW
85          callback.
86
87       b. Set XmNdeleteResponse to XmDO_NOTHING so that VendorShell
88          won't destroy the window when the WM_DELETE_WINDOW comes
89          in.
90
91       This allows your client to post a "Are You Sure?" dialog when
92       "Close" is activated. Your client decides when and if it should
93       die in this case.
94
95
96 /*
97  * Geometry
98  */
99
100
101 /*
102  * Making a window larger than the screen
103  */
104
105
106 Q. How can I map a window to be larger than the screen. For example
107    I have a 14 inch monitor and I want my term windows to use a large font.
108    The window manager does not let my term window map to a larger than
109    screen size so I get less than 80 columns.
110
111 A. There are a number of resources that affect this behavior
112
113    1) Set the "limitResize" resource to false.
114
115    2) The other thing is to specify an explicit maximum size for your
116       term windows. Mwm/dtwm computes the maximum size to fit on the screen
117       by default. You could do something like:
118
119     Dtwm*xterm*maximumClientSize:  160x66
120
121       so that 80x24 windows will come up regardless of whether they
122       fit on the screen or not. 
123
124    3) There may be other resource lurking out there (such as in 
125       /usr/lib/X11/app-defaults/Dtwm, xrdb, $HOME/Dtwm, etc.) that are more 
126       specific than the "*resource" specs you have given. If so, they'll 
127       win. Try being more specific. If that fixes it, then you'll probably 
128       want to find out where your resources are coming from (app-defaults, 
129       xrdb, $HOME/Dtwm, etc.).
130
131
132 /*
133  * Top/Bottom Shadows
134  */
135
136
137
138 /*
139  * New Topic
140  */