upload tizen2.0 source
[framework/uifw/xorg/lib/libx11.git] / man / xkb / XkbFreeControls.man
1 '\" t
2 .\" Copyright 1999 Oracle and/or its affiliates. All rights reserved.
3 .\"
4 .\" Permission is hereby granted, free of charge, to any person obtaining a
5 .\" copy of this software and associated documentation files (the "Software"),
6 .\" to deal in the Software without restriction, including without limitation
7 .\" the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 .\" and/or sell copies of the Software, and to permit persons to whom the
9 .\" Software is furnished to do so, subject to the following conditions:
10 .\"
11 .\" The above copyright notice and this permission notice (including the next
12 .\" paragraph) shall be included in all copies or substantial portions of the
13 .\" Software.
14 .\"
15 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 .\" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 .\" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18 .\" THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 .\" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 .\" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21 .\" DEALINGS IN THE SOFTWARE.
22 .\"
23 .TH XkbFreeControls __libmansuffix__ __xorgversion__ "XKB FUNCTIONS"
24 .SH NAME
25 XkbFreeControls \- Frees memory used by the ctrls member of an XkbDescRec structure
26 .SH SYNOPSIS
27 .HP
28 .B void XkbFreeControls
29 .BI "(\^XkbDescPtr " "xkb" "\^,"
30 .BI "unsigned int " "which" "\^,"
31 .BI "Bool " "free_all" "\^);"
32 .if n .ti +5n
33 .if t .ti +.5i
34 .SH ARGUMENTS
35 .TP
36 .I \- xkb
37 Xkb description in which to free controls components
38 .TP
39 .I \- which
40 mask of components of ctrls to free
41 .TP
42 .I \- free_all
43 True => free everything + ctrls itself
44 .SH DESCRIPTION
45 .LP
46 .I XkbFreeControls 
47 frees the specified components of the 
48 .I ctrls 
49 field in the 
50 .I xkb 
51 keyboard description and sets the corresponding structure component values to NULL or zero. The 
52 .I which 
53 mask specifies the fields of 
54 .I ctrls 
55 to be freed and can contain any of the controls components specified in Table 1.
56
57 Table 1 shows the actual values for the individual mask bits used to select 
58 controls for 
59 modification and to enable and disable the control. Note that the same mask bit 
60 is used to 
61 specify general modifications to the parameters used to configure the control 
62 (which), and to 
63 enable and disable the control (enabled_ctrls). The anomalies in the table (no 
64 "ok" in column) 
65 are for controls that have no configurable attributes; and for controls that are 
66 not boolean 
67 controls and therefore cannot be enabled or disabled.
68
69 .TS
70 c s s s
71 l l l l
72 l l l l
73 l l l l. 
74 Table 1 Controls Mask Bits
75 _
76 Mask Bit        which or        enabled Value
77         changed_ctrls   _ctrls
78 _
79 XkbRepeatKeysMask       ok      ok      (1L<<0)
80 XkbSlowKeysMask ok      ok      (1L<<1)
81 XkbBounceKeysMask       ok      ok      (1L<<2)
82 XkbStickyKeysMask       ok      ok      (1L<<3)
83 XkbMouseKeysMask        ok      ok      (1L<<4)
84 XkbMouseKeysAccelMask   ok      ok      (1L<<5)
85 XkbAccessXKeysMask      ok      ok      (1L<<6)
86 XkbAccessXTimeoutMask   ok      ok      (1L<<7)
87 XkbAccessXFeedbackMask  ok      ok      (1L<<8)
88 XkbAudibleBellMask              ok      (1L<<9)
89 XkbOverlay1Mask         ok      (1L<<10)
90 XkbOverlay2Mask         ok      (1L<<11)
91 XkbIgnoreGroupLockMask          ok      (1L<<12)
92 XkbGroupsWrapMask       ok              (1L<<27)
93 XkbInternalModsMask     ok              (1L<<28)
94 XkbIgnoreLockModsMask   ok              (1L<<29)
95 XkbPerKeyRepeatMask     ok              (1L<<30)
96 XkbControlsEnabledMask  ok              (1L<<31)
97 XkbAccessXOptionsMask   ok      ok      (XkbStickyKeysMask | 
98                         XkbAccessXFeedbackMask)
99 XkbAllBooleanCtrlsMask          ok      (0x00001FFF) 
100 XkbAllControlsMask      ok              (0xF8001FFF)
101 .TE
102
103 If 
104 .I free_all 
105 is True, 
106 .I XkbFreeControls 
107 frees every non-NULL structure component in the controls, frees the XkbControlsRec structure referenced by the 
108 .I ctrls 
109 member of 
110 .I xkb, 
111 and sets 
112 .I ctrls 
113 to NULL.