1XmDataField(library call) XmDataField(library call)
2
3
4
6 XmDataField — The DataField widget class
7
9 #include <Xm/DataF.h>
10
12 The DataField widget is a Data Presentation widget that handles display
13 and entry of data as text. The DataField widget is a subclass of the
14 XmTextField widget intended for data entry applications. In addition to
15 all of the normal XmTextField functionality, it supports regular
16 expression-based parsing and acceptance/rejection of its input through
17 the XmNpicture resource, and right justification through the XmNalign‐
18 ment resource.
19
20 The DataField widget provides added capability by supporting several
21 types of validation: a DataField widget containing an invalid value
22 will not give-up focus; the user must enter a correct value before pro‐
23 ceeding to another field.
24
25 Classes
26 DataField inherits behavior, resources, and traits from Core, XmPrimi‐
27 tive, and XmTextField.
28
29 The class pointer is xmDataFieldWidgetClass.
30
31 The class name is XmDataField.
32
33 New Resources
34 The following table defines a set of widget resources used by the pro‐
35 grammer to specify data. The programmer can also set the resource val‐
36 ues for the inherited classes to set attributes for this widget. To
37 reference a resource by name or by class in a .Xdefaults file, remove
38 the XmN or XmC prefix and use the remaining letters. To specify one of
39 the defined values for a resource in a .Xdefaults file, remove the Xm
40 prefix and use the remaining letters (in either lowercase or uppercase,
41 but include any underscores between words). The codes in the access
42 column indicate if the given resource can be set at creation time (C),
43 set by using XtSetValues (S), retrieved by using XtGetValues (G), or is
44 not applicable (N/A).
45
46 ┌─────────────────────────────────────────────────────────────────────────────────────────┐
47 │ │ XmDataF│ield Resource Set│ │ │
48 │Name │ Class │ Type │ Default │ Access │
49 ├────────────────────────┼──────────────┼────────────────┼───────────────────────┼────────┤
50 │XmNalignment │ XmCAlignment │ unsigned char │ XmALIGNMENT_BEGINNING │ CSG │
51 ├────────────────────────┼──────────────┼────────────────┼───────────────────────┼────────┤
52 │XmNautoFill │ XmCAutoFill │ Boolean │ True │ CSG │
53 ├────────────────────────┼──────────────┼────────────────┼───────────────────────┼────────┤
54 │XmNpicture │ XmCPicture │ String │ NULL │ CSG │
55 ├────────────────────────┼──────────────┼────────────────┼───────────────────────┼────────┤
56 │XmNpictureErrorCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
57 ├────────────────────────┼──────────────┼────────────────┼───────────────────────┼────────┤
58 │XmNvalidateCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
59 ├────────────────────────┼──────────────┼────────────────┼───────────────────────┼────────┤
60 └────────────────────────┴──────────────┴────────────────┴───────────────────────┴────────┘
61 XmNalignment
62 When set to XmALIGNMENT_END, the widget aligns all its text
63 with the right hand side of the input area.
64
65 XmNautoFill
66 When set to True, the widget "auto-fills" its contents when
67 it can determine that the next character in the string must
68 be a particular literal. For instance, the picture "###-####"
69 automatically inserts a '-' character after receiving three
70 numeric digits as input.
71
72 XmNpicture
73 Specifies a picture for data entry in the widget. A picture
74 acts as a template that formats the value you enter in a
75 field. An example would be the US Phone Number picture:
76 (###)###-####. The picture is used to convert characters
77 entered into the field to a formatted value.
78
79 Character interpretations
80
81 The following lists and defines the characters you can use in
82 a picture, and how the DataField widget interprets them.
83
84 # Any numeric digit
85
86 ? Case insensitive letter
87
88 & Uppercase letter (forces lowercase to uppercase)
89
90 @ Case insensitive character
91
92 ! Uppercase character
93
94 ; Interpret the following character literally
95
96 * Repeat the following character some number of times
97
98 [] Characters within brackets are optional
99
100 {} Characters within braces are grouped
101
102 , Alternative values
103
104 Other characters are interpreted literally.
105
106 Set XmNpicture to NULL to disable regular expression
107 processing. The DataField widget is cleared whenever
108 the XmNpicture resource is changed.
109
110 XmNpictureErrorCallback
111 Specifies a list of callbacks to be called when the
112 XmDataField widget determines that data is being entered that
113 does not match the format specified by the XmNpicture
114 resource.
115
116 XmNvalidateCallback
117 Specifies a list of callbacks to be called when data has been
118 entered in the XmDataField widget and the user has moved out
119 of the XmDataField widget (usually by pressing the Tab key).
120 The callbacks can reject the movement of focus.
121
122 Inherited Resources
123 DataField inherits behavior and resources from the superclasses
124 described in the following tables. For a complete description of each
125 resource, refer to the reference page for that superclass.
126
127 ┌──────────────────────────────────────────────────────────────────────────────────────────────────┐
128 │ │ XmTextFieldResour│ce Set │ │ │
129 │Name │ Class │ Type │ Default │ Access │
130 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
131 │XmNactivateCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
132 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
133 │XmNblinkRate │ XmCBlinkRate │ int │ 500 │ CSG │
134 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
135 │XmNcolumns │ XmCColumns │ short │ dynamic │ CSG │
136 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
137 │XmNcursorPosition │ XmCCursorPosition │ XmTextPosition │ 0 │ CSG │
138 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
139 │XmNcursorPositionVisible │ XmCCursorPositionVisible │ Boolean │ dynamic │ CSG │
140 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
141 │XmNdestinationCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
142 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
143 │XmNeditable │ XmCEditable │ Boolean │ True │ CSG │
144 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
145 │XmNfocusCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
146 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
147 │XmNfontList │ XmCFontList │ XmFontList │ dynamic │ CSG │
148 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
149 │XmNgainPrimaryCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
150 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
151 │XmNlosePrimaryCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
152 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
153 │XmNlosingFocusCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
154 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
155 │XmNmarginHeight │ XmCMarginHeight │ Dimension │ 5 │ CSG │
156 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
157 │XmNmarginWidth │ XmCMarginWidth │ Dimension │ 5 │ CSG │
158 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
159 │XmNmaxLength │ XmCMaxLength │ int │ largest integer │ CSG │
160 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
161 │XmNmodifyVerifyCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
162 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
163 │XmNmodifyVerifyCallbackWcs │ XmCCallback │ XtCallbackList │ NULL │ C │
164 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
165 │XmNmotionVerifyCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
166 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
167 │XmNpendingDelete │ XmCPendingDelete │ Boolean │ True │ CSG │
168 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
169 │XmNrenderTable │ XmCRenderTable │ XmRenderTable │ dynamic │ CSG │
170 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
171 │XmNresizeWidth │ XmCResizeWidth │ Boolean │ False │ CSG │
172 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
173 │XmNselectionArray │ XmCSelectionArray │ XtPointer │ default array │ CSG │
174 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
175 │XmNselectionArrayCount │ XmCSelectionArrayCount │ int │ 3 │ CSG │
176 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
177 │XmNselectThreshold │ XmCSelectThreshold │ int │ 5 │ CSG │
178 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
179 │XmNvalue │ XmCValue │ String │ "" │ CSG │
180 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
181 │XmNvalueChangedCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
182 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
183 │XmNvalueWcs │ XmCValueWcs │ wchar_t * │ (wchar_t *)"" │ CSG │
184 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
185 │XmNverifyBell │ XmCVerifyBell │ Boolean │ dynamic │ CSG │
186 ├───────────────────────────┼──────────────────────────┼────────────────┼─────────────────┼────────┤
187 └───────────────────────────┴──────────────────────────┴────────────────┴─────────────────┴────────┘
188 ┌───────────────────────────────────────────────────────────────────────────────────────────────────┐
189 │ │ XmPrimitive│Resource Set │ │ │
190 │Name │ Class │ Type │ Default │ Access │
191 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
192 │XmNbottomShadowColor │ XmCBottomShadowColor │ Pixel │ dynamic │ CSG │
193 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
194 │XmNbottomShadowPixmap │ XmCBottomShadowPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
195 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
196 │XmNconvertCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
197 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
198 │XmNforeground │ XmCForeground │ Pixel │ dynamic │ CSG │
199 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
200 │XmNhelpCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
201 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
202 │XmNhighlightColor │ XmCHighlightColor │ Pixel │ dynamic │ CSG │
203 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
204 │XmNhighlightOnEnter │ XmCHighlightOnEnter │ Boolean │ False │ CSG │
205 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
206 │XmNhighlightPixmap │ XmCHighlightPixmap │ Pixmap │ dynamic │ CSG │
207 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
208 │XmNhighlightThickness │ XmCHighlightThickness │ Dimension │ 2 │ CSG │
209 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
210 │XmNlayoutDirection │ XmCLayoutDirection │ XmDirection │ dynamic │ CG │
211 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
212 │XmNnavigationType │ XmCNavigationType │ XmNavigationType │ XmTAB_GROUP │ CSG │
213 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
214 │XmNpopupHandlerCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
215 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
216 │XmNshadowThickness │ XmCShadowThickness │ Dimension │ 2 │ CSG │
217 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
218 │XmNtopShadowColor │ XmCTopShadowColor │ Pixel │ dynamic │ CSG │
219 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
220 │XmNtopShadowPixmap │ XmCTopShadowPixmap │ Pixmap │ dynamic │ CSG │
221 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
222 │XmNtraversalOn │ XmCTraversalOn │ Boolean │ True │ CSG │
223 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
224 │XmNunitType │ XmCUnitType │ unsigned char │ dynamic │ CSG │
225 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
226 │XmNuserData │ XmCUserData │ XtPointer │ NULL │ CSG │
227 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
228 └────────────────────────┴───────────────────────┴──────────────────┴──────────────────────┴────────┘
229 ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
230 │ │ Core Resource Se│t │ │ │
231 │Name │ Class │ Type │ Default │ Access │
232 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
233 │XmNaccelerators │ XmCAccelerators │ XtAccelerators │ dynamic │ CSG │
234 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
235 │XmNancestorSensitive │ XmCSensitive │ Boolean │ dynamic │ G │
236 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
237 │XmNbackground │ XmCBackground │ Pixel │ dynamic │ CSG │
238 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
239 │XmNbackgroundPixmap │ XmCPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
240 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
241 │XmNborderColor │ XmCBorderColor │ Pixel │ XtDefaultForeground │ CSG │
242 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
243 │XmNborderPixmap │ XmCPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
244 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
245 │XmNborderWidth │ XmCBorderWidth │ Dimension │ 0 │ CSG │
246 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
247 │XmNcolormap │ XmCColormap │ Colormap │ dynamic │ CG │
248 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
249 │XmNdepth │ XmCDepth │ int │ dynamic │ CG │
250 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
251 │XmNdestroyCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
252 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
253 │XmNheight │ XmCHeight │ Dimension │ dynamic │ CSG │
254 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
255 │XmNinitialResourcesPersistent │ XmCInitialResourcesPersistent │ Boolean │ True │ C │
256 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
257 │XmNmappedWhenManaged │ XmCMappedWhenManaged │ Boolean │ True │ CSG │
258 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
259 │XmNscreen │ XmCScreen │ Screen * │ dynamic │ CG │
260 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
261 │XmNsensitive │ XmCSensitive │ Boolean │ True │ CSG │
262 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
263 │XmNtranslations │ XmCTranslations │ XtTranslations │ dynamic │ CSG │
264 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
265 │XmNwidth │ XmCWidth │ Dimension │ dynamic │ CSG │
266 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
267 │XmNx │ XmCPosition │ Position │ 0 │ CSG │
268 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
269 │XmNy │ XmCPosition │ Position │ 0 │ CSG │
270 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
271 └──────────────────────────────┴───────────────────────────────┴────────────────┴──────────────────────┴────────┘
272 Translations
273 XmDataField inherits translations from XmTextField.
274
276 A pointer to the following structure is passed to the list of routines
277 for the XmNvalidateCallback:
278 typedef struct _XmDataFieldCallbackStruct {
279 Widget w; /* The XmDataField */
280 String text; /* Proposed string */
281 Boolean accept; /* Accept return value, for validation */
282 } XmDataFieldCallbackStruct;
283
285 Core(3), XmCreateDataField(3), XmPrimitive(3), XmTextFieldSetString(3),
286 XmTextFieldSetStringWcs(3), XmVaCreateDataField(3), and XmVaCreateMan‐
287 agedDataField(3).
288
290 This manual page documents the XmDataField widget shipped in Motif ver‐
291 sion 2.2
292
294 (c) 2002 by Integrated Computer Solutions, Inc.
295
296 Edited by Kevin Cook.
297
298 XmDataField(library call)