1XmMainWindow(library call) XmMainWindow(library call)
2
3
4
6 XmMainWindow — The MainWindow widget class
7
9 #include <Xm/MainW.h>
10
12 MainWindow provides a standard layout for the primary window of an
13 application. This layout includes a MenuBar, a CommandWindow, a work
14 region, a MessageWindow, and ScrollBars. Any or all of these areas are
15 optional. The work region and ScrollBars in the MainWindow behave iden‐
16 tically to the work region and ScrollBars in the ScrolledWindow widget.
17 The user can think of the MainWindow as an extended ScrolledWindow with
18 an optional MenuBar and optional CommandWindow and MessageWindow.
19
20 In a fully loaded MainWindow, the MenuBar spans the top of the window
21 horizontally. The CommandWindow spans the MainWindow horizontally just
22 below the MenuBar, and the work region lies below the CommandWindow.
23 The MessageWindow is below the work region. Any space remaining below
24 the MessageWindow is managed in a manner identical to ScrolledWindow.
25 The behavior of ScrolledWindow can be controlled by the ScrolledWindow
26 resources. To create a MainWindow, first create the work region ele‐
27 ments, a MenuBar, a CommandWindow, a MessageWindow, a horizontal
28 ScrollBar, and a vertical ScrollBar widget, and then call XmMainWin‐
29 dowSetAreas with those widget IDs.
30
31 MainWindow can also create three Separator widgets that provide a vis‐
32 ual separation of MainWindow's four components. The user can specify
33 resources in a resource file for the automatically created gadgets that
34 contain the MainWindow separators. The name of the first separator gad‐
35 get is Separator1; the second is Separator2; and the third is Separa‐
36 tor3.
37
38 MainWindow also provides the following three child types for layout at
39 creation time:
40
41 · XmMENU_BAR
42
43 · XmCOMMAND_WINDOW
44
45 · XmMESSAGE_WINDOW
46
47 MainWindow can use these child types at creation time instead of their
48 associated resource values. MainWindow uses the XmQTmenuSystem trait.
49
50 Descendants
51 MainWindow automatically creates the descendants shown in the following
52 table. An application can use XtNameToWidget to gain access to the
53 named descendant. In addition, a user or an application can use the
54 named descendant when specifying resource values.
55
56 ┌─────────────────┬───────────────────┬───────────────────────────┐
57 │Named Descendant │ Class │ Identity │
58 ├─────────────────┼───────────────────┼───────────────────────────┤
59 ├─────────────────┼───────────────────┼───────────────────────────┤
60 ├─────────────────┼───────────────────┼───────────────────────────┤
61 │HorScrollBar │ XmScrollBar │ horizontal scroll bar │
62 ├─────────────────┼───────────────────┼───────────────────────────┤
63 │Separator1 │ XmSeparatorGadget │ optional first separator │
64 ├─────────────────┼───────────────────┼───────────────────────────┤
65 │Separator2 │ XmSeparatorGadget │ optional second separator │
66 ├─────────────────┼───────────────────┼───────────────────────────┤
67 │Separator3 │ XmSeparatorGadget │ optional third separator │
68 ├─────────────────┼───────────────────┼───────────────────────────┤
69 │VertScrollBar │ XmScrollBar │ vertical scroll bar │
70 ├─────────────────┼───────────────────┼───────────────────────────┤
71 └─────────────────┴───────────────────┴───────────────────────────┘
72 Classes
73 MainWindow inherits behavior and resources from Core, Composite, Con‐
74 straint, XmManager, and XmScrolledWindow.
75
76 The class pointer is xmMainWindowWidgetClass.
77
78 The class name is XmMainWindow.
79
80 New Resources
81 The following table defines a set of widget resources used by the pro‐
82 grammer to specify data. The programmer can also set the resource val‐
83 ues for the inherited classes to set attributes for this widget. To
84 reference a resource by name or by class in a .Xdefaults file, remove
85 the XmN or XmC prefix and use the remaining letters. To specify one of
86 the defined values for a resource in a .Xdefaults file, remove the Xm
87 prefix and use the remaining letters (in either lowercase or uppercase,
88 but include any underscores between words). The codes in the access
89 column indicate if the given resource can be set at creation time (C),
90 set by using XtSetValues (S), retrieved by using XtGetValues (G), or is
91 not applicable (N/A).
92
93 ┌──────────────────────────────────────────────────────────────────────────────────────────────────┐
94 │ │ XmMainWindow Resou│rce Set │ │ │
95 │Name │ Class │ Type │ Default │ Access │
96 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
97 │XmNcommandWindow │ XmCCommandWindow │ Widget │ NULL │ CSG │
98 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
99 │XmNcommandWindowLocation │ XmCCommandWindowLocation │ unsigned char │ ABOVE (SeeDesc.) │ CG │
100 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
101 │XmNmainWindowMarginHeight │ XmCMainWindowMarginHeight │ Dimension │ 0 │ CSG │
102 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
103 │XmNmainWindowMarginWidth │ XmCMainWindowMarginWidth │ Dimension │ 0 │ CSG │
104 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
105 │XmNmenuBar │ XmCMenuBar │ Widget │ NULL │ CSG │
106 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
107 │XmNmessageWindow │ XmCMessageWindow │ Widget │ NULL │ CSG │
108 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
109 │XmNshowSeparator │ XmCShowSeparator │ Boolean │ False │ CSG │
110 ├──────────────────────────┼───────────────────────────┼───────────────┼──────────────────┼────────┤
111 └──────────────────────────┴───────────────────────────┴───────────────┴──────────────────┴────────┘
112 XmNcommandWindow
113 Specifies the widget to be laid out as the CommandWindow.
114 This widget must have been previously created and managed as
115 a child of MainWindow.
116
117 XmNcommandWindowLocation
118 Controls the position of the command window. XmCOM‐
119 MAND_ABOVE_WORKSPACE locates the command window between the
120 menu bar and the work window. XmCOMMAND_BELOW_WORKSPACE
121 locates the command window between the work window and the
122 message window.
123
124 XmNmainWindowMarginHeight
125 Specifies the margin height on the top and bottom of MainWin‐
126 dow. This resource overrides any setting of the ScrolledWin‐
127 dow resource XmNscrolledWindowMarginHeight.
128
129 XmNmainWindowMarginWidth
130 Specifies the margin width on the right and left sides of
131 MainWindow. This resource overrides any setting of the
132 ScrolledWindow resource XmNscrolledWindowMarginWidth.
133
134 XmNmenuBar
135 Specifies the widget to be laid out as the MenuBar. This wid‐
136 get must have been previously created and managed as a child
137 of MainWindow.
138
139 XmNmessageWindow
140 Specifies the widget to be laid out as the MessageWindow.
141 This widget must have been previously created and managed as
142 a child of MainWindow. The MessageWindow is positioned at
143 the bottom of the MainWindow. If this value is NULL, no mes‐
144 sage window is included in the MainWindow.
145
146 XmNshowSeparator
147 Displays separators between the components of the MainWindow
148 when set to True. If set to False, no separators are dis‐
149 played.
150
151 Inherited Resources
152 MainWindow inherits behavior and resources from the superclasses
153 described in the following table. For a complete description of each
154 resource, refer to the reference page for that superclass.
155
156 ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
157 │ │ XmScrolledWindow Reso│urce Set │ │ │
158 │Name │ Class │ Type │ Default │ Access │
159 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
160 │XmNautoDragModel │ XmCAutoDragModel │ XtEnum │ XmAUTO_DRAG_ENABLED │ CSG │
161 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
162 │XmNclipWindow │ XmCClipWindow │ Widget │ dynamic │ G │
163 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
164 │XmNhorizontalScrollBar │ XmCHorizontalScrollBar │ Widget │ dynamic │ CSG │
165 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
166 │XmNscrollBarDisplayPolicy │ XmCScrollBarDisplayPolicy │ unsigned char │ dynamic │ CSG │
167 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
168 │XmNscrollBarPlacement │ XmCScrollBarPlacement │ unsigned char │ XmBOTTOM_RIGHT │ CSG │
169 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
170 │XmNscrolledWindowMarginHeight │ XmCScrolledWindowMarginHeight │ Dimension │ 0 │ N/A │
171 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
172 │XmNscrolledWindowMarginWidth │ XmCScrolledWindowMarginWidth │ Dimension │ 0 │ N/A │
173 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
174 │XmNscrollingPolicy │ XmCScrollingPolicy │ unsigned char │ XmAPPLICATION_DEFINED │ CG │
175 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
176 │XmNspacing │ XmCSpacing │ Dimension │ 4 │ CSG │
177 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
178 │XmNtraverseObscuredCallback │ XmCCallback │ XtCallbackList │ NULL │ CSG │
179 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
180 │XmNverticalScrollBar │ XmCVerticalScrollBar │ Widget │ dynamic │ CSG │
181 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
182 │XmNvisualPolicy │ XmCVisualPolicy │ unsigned char │ dynamic │ G │
183 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
184 │XmNworkWindow │ XmCWorkWindow │ Widget │ NULL │ CSG │
185 ├──────────────────────────────┼───────────────────────────────┼────────────────┼───────────────────────┼────────┤
186 └──────────────────────────────┴───────────────────────────────┴────────────────┴───────────────────────┴────────┘
187 ┌────────────────────────────────────────────────────────────────────────────────────────────────────┐
188 │ │ XmManager │Resource Set │ │ │
189 │Name │ Class │ Type │ Default │ Access │
190 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
191 │XmNbottomShadowColor │ XmCBottomShadowColor │ Pixel │ dynamic │ CSG │
192 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
193 │XmNbottomShadowPixmap │ XmCBottomShadowPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
194 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
195 │XmNforeground │ XmCForeground │ Pixel │ dynamic │ CSG │
196 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
197 │XmNhelpCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
198 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
199 │XmNhighlightColor │ XmCHighlightColor │ Pixel │ dynamic │ CSG │
200 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
201 │XmNhighlightPixmap │ XmCHighlightPixmap │ Pixmap │ dynamic │ CSG │
202 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
203 │XmNinitialFocus │ XmCInitialFocus │ Widget │ NULL │ CSG │
204 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
205 │XmNlayoutDirection │ XmCLayoutDirection │ XmDirection │ dynamic │ CG │
206 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
207 │XmNnavigationType │ XmCNavigationType │ XmNavigationType │ XmTAB_GROUP │ CSG │
208 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
209 │XmNpopupHandlerCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
210 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
211 │XmNshadowThickness │ XmCShadowThickness │ Dimension │ 0 │ CSG │
212 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
213 │XmNstringDirection │ XmCStringDirection │ XmStringDirection │ dynamic │ CG │
214 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
215 │XmNtopShadowColor │ XmCTopShadowColor │ Pixel │ dynamic │ CSG │
216 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
217 │XmNtopShadowPixmap │ XmCTopShadowPixmap │ Pixmap │ dynamic │ CSG │
218 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
219 │XmNtraversalOn │ XmCTraversalOn │ Boolean │ True │ CSG │
220 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
221 │XmNunitType │ XmCUnitType │ unsigned char │ dynamic │ CSG │
222 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
223 │XmNuserData │ XmCUserData │ XtPointer │ NULL │ CSG │
224 ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
225 └────────────────────────┴───────────────────────┴───────────────────┴──────────────────────┴────────┘
226 ┌───────────────────────────────────────────────────────────────────────┐
227 │ │ Composite Reso│urce Set │ │ │
228 │Name │ Class │ Type │ Default │ Access │
229 ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
230 │XmNchildren │ XmCReadOnly │ WidgetList │ NULL │ G │
231 ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
232 │XmNinsertPosition │ XmCInsertPosition │ XtOrderProc │ NULL │ CSG │
233 ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
234 │XmNnumChildren │ XmCReadOnly │ Cardinal │ 0 │ G │
235 ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
236 └──────────────────┴───────────────────┴─────────────┴─────────┴────────┘
237 ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
238 │ │ Core Resource Se│t │ │ │
239 │Name │ Class │ Type │ Default │ Access │
240 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
241 │XmNaccelerators │ XmCAccelerators │ XtAccelerators │ dynamic │ CSG │
242 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
243 │XmNancestorSensitive │ XmCSensitive │ Boolean │ dynamic │ G │
244 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
245 │XmNbackground │ XmCBackground │ Pixel │ dynamic │ CSG │
246 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
247 │XmNbackgroundPixmap │ XmCPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
248 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
249 │XmNborderColor │ XmCBorderColor │ Pixel │ XtDefaultForeground │ CSG │
250 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
251 │XmNborderPixmap │ XmCPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
252 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
253 │XmNborderWidth │ XmCBorderWidth │ Dimension │ 0 │ CSG │
254 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
255 │XmNcolormap │ XmCColormap │ Colormap │ dynamic │ CG │
256 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
257 │XmNdepth │ XmCDepth │ int │ dynamic │ CG │
258 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
259 │XmNdestroyCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
260 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
261 │XmNheight │ XmCHeight │ Dimension │ dynamic │ CSG │
262 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
263 │XmNinitialResourcesPersistent │ XmCInitialResourcesPersistent │ Boolean │ True │ C │
264 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
265 │XmNmappedWhenManaged │ XmCMappedWhenManaged │ Boolean │ True │ CSG │
266 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
267 │XmNscreen │ XmCScreen │ Screen * │ dynamic │ CG │
268 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
269 │XmNsensitive │ XmCSensitive │ Boolean │ True │ CSG │
270 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
271 │XmNtranslations │ XmCTranslations │ XtTranslations │ dynamic │ CSG │
272 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
273 │XmNwidth │ XmCWidth │ Dimension │ dynamic │ CSG │
274 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
275 │XmNx │ XmCPosition │ Position │ 0 │ CSG │
276 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
277 │XmNy │ XmCPosition │ Position │ 0 │ CSG │
278 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
279 └──────────────────────────────┴───────────────────────────────┴────────────────┴──────────────────────┴────────┘
280 Translations
281 MainWindow inherits translations from ScrolledWindow.
282
284 Composite(3), Constraint(3), Core(3), XmCreateMainWindow(3), XmMainWin‐
285 dowSep1(3), XmMainWindowSep2(3), XmMainWindowSep3(3), XmMainWin‐
286 dowSetAreas(3), XmManager(3), XmScrolledWindow(3) XmVaCreateMainWin‐
287 dow(3), and XmVaCreateManagedMainWindow(3).
288
289
290
291 XmMainWindow(library call)