1XmVaCreateSimplePulldownMenu(libraryXcmaVlalC)reateSimplePulldownMenu(library call)
2
3
4
6 XmVaCreateSimplePulldownMenu — A RowColumn widget convenience creation
7 function
8
10 #include <Xm/RowColumn.h>
11 Widget XmVaCreateSimplePulldownMenu(
12 Widget parent,
13 String name,
14 int post_from_button,
15 XtCallbackProc callback);
16
18 XmVaCreateSimplePulldownMenu creates an instance of a RowColumn widget
19 of type XmMENU_PULLDOWN and returns the associated widget ID. This
20 routine uses the ANSI C variable-length argument list (varargs) calling
21 convention.
22
23 This routine creates a Pulldown menu pane and its button children. The
24 name of each button is button_n, where n is an integer from 0 to the
25 number of buttons in the menu minus 1. The name of each separator is
26 separator_n, where n is an integer from 0 to the number of separators
27 in the menu minus 1. The name of each title is label_n, where n is an
28 integer from 0 (zero) to the number of titles in the menu minus 1.
29 Buttons, separators, and titles are named and created in the order in
30 which they are specified in the variable portion of the argument list.
31
32 This routine also attaches the PulldownMenu to a CascadeButton or Cas‐
33 cadeButtonGadget in the parent. The PulldownMenu is then posted from
34 this button.
35
36 parent Specifies the widget ID of the parent of the MenuShell.
37
38 name Specifies the name of the created widget.
39
40 post_from_button
41 Specifies the CascadeButton or CascadeButtonGadget in the
42 parent to which the Pulldown menu pane is attached. The
43 value is the integer n that corresponds to the nth Cascade‐
44 Button or CascadeButtonGadget specified for the parent of the
45 Pulldown menu pane. A Pulldown menu pane can be attached
46 only to a CascadeButton or CascadeButtonGadget, and only Cas‐
47 cadeButtons and CascadeButtonGadgets are counted in determin‐
48 ing the integer n. The first CascadeButton or CascadeButton‐
49 Gadget is number 0 (zero).
50
51 callback Specifies a callback procedure to be called when a button is
52 activated or when its value changes. This callback function
53 is added to each button after creation. For a CascadeButton‐
54 Gadget or a PushButtonGadget, the callback is added as the
55 button's XmNactivateCallback, and it is called when the but‐
56 ton is activated. For a ToggleButtonGadget, the callback is
57 added as the button's XmNvalueChangedCallback, and it is
58 called when the button's value changes. The button number is
59 returned in the client_data field.
60
61 The variable portion of the argument list consists of groups of argu‐
62 ments. The first argument in each group is a constant or a string and
63 determines which arguments follow in that group. The last argument in
64 the list must be NULL. Following are the possible first arguments in
65 each group of varargs:
66
67 XmVaCASCADEBUTTON
68 This is followed by two additional arguments. The set speci‐
69 fies one button in the PulldownMenu and some of its resource
70 values. The button created is a CascadeButtonGadget. Follow‐
71 ing are the additional two arguments, in order:
72
73 label The label string, of type XmString
74
75 mnemonic The mnemonic, of type KeySym
76
77 XmVaPUSHBUTTON
78 This is followed by four additional arguments. The set speci‐
79 fies one button in the PulldownMenu and some of its resource
80 values. The button created is a PushButtonGadget. Following
81 are the additional four arguments, in order:
82
83 label The label string, of type XmString
84
85 mnemonic The mnemonic, of type KeySym
86
87 accelerator
88 The accelerator, of type String
89
90 accelerator_text
91 The accelerator text, of type XmString
92
93 XmVaRADIOBUTTON
94 This is followed by four additional arguments. The set speci‐
95 fies one button in the PulldownMenu and some of its resource
96 values. The button created is a ToggleButtonGadget. Following
97 are the additional four arguments, in order:
98
99 label The label string, of type XmString
100
101 mnemonic The mnemonic, of type KeySym
102
103 accelerator
104 The accelerator, of type String
105
106 accelerator_text
107 The accelerator text, of type XmString
108
109 XmVaCHECKBUTTON
110 This is followed by four additional arguments. The set speci‐
111 fies one button in the PulldownMenu and some of its resource
112 values. The button created is a ToggleButtonGadget. Following
113 are the additional four arguments, in order:
114
115 label The label string, of type XmString.
116
117 mnemonic The mnemonic, of type KeySym
118
119 accelerator
120 The accelerator, of type String
121
122 accelerator_text
123 The accelerator text, of type XmString
124
125 XmVaTITLE This is followed by one additional argument. The pair speci‐
126 fies a title LabelGadget in the PulldownMenu. Following is
127 the additional argument:
128
129 title The title string, of type XmString
130
131 XmVaSEPARATOR
132 This is followed by no additional arguments. It specifies one
133 separator in the PulldownMenu.
134
135 XmVaDOUBLE_SEPARATOR
136 This is followed by no additional arguments. It specifies one
137 separator in the PulldownMenu. The separator type is XmDOU‐
138 BLE_LINE.
139
140 resource_name
141 This is followed by one additional argument, the value of the
142 resource, of type XtArgVal. The pair specifies a resource and
143 its value for the RowColumn widget.
144
145 XtVaTypedArg
146 This is followed by four additional arguments. The set speci‐
147 fies a resource and its value for the RowColumn widget. A
148 resource type conversion is performed if necessary. Following
149 are the additional four arguments, in order:
150
151 name The resource name, of type String.
152
153 type The type of the resource value supplied, of type
154 String.
155
156 value The resource value (or a pointer to the resource
157 value, depending on the type and size of the
158 value), of type XtArgVal.
159
160 size The size of the resource value in bytes, of type
161 int.
162
163 XtVaNestedList
164 This is followed by one additional argument of type
165 XtVarArgsList. This argument is a nested list of varargs
166 returned by XtVaCreateArgsList.
167
168 For more information on variable-length argument lists, see the X Tool‐
169 kit Intrinsics documentation.
170
171 A number of resources exist specifically for use with this and other
172 simple menu creation routines. For a complete definition of RowColumn
173 and its associated resources, see XmRowColumn(3).
174
176 Returns the RowColumn widget ID.
177
179 XmCreatePulldownMenu(3), XmCreateRowColumn(3), XmCreateSimplePulldown‐
180 Menu, and XmRowColumn(3).
181
182
183
184 XmVaCreateSimplePulldownMenu(library call)