[PATCH kbproto v2 2/5] Convert mask specifications to (next - 1) scheme
Dirk Wallenstein
halsmit at t-online.de
Sun Feb 7 03:45:52 PST 2010
This makes editing flags less error-prone.
It also changes the types of the affected masks to the type of its
component-flags. To be consistent it adapts the type of related flags
where appropriate.
Signed-off-by: Dirk Wallenstein <halsmit at t-online.de>
---
Diff to v1 is that the types of related masks are changed, too. However, I'm
beginning to worry if the type adaption shouldn't be the other way round.
Then the 32bit msb of XkbAllControlsMask and XkbAllControlEventsMask should
definitely be unused.
This would then contain three changes (bits, type and spec) and should be
split. Together with the other worries I revoke this patch and number 5 with
it.
XKB.h | 44 ++++++++++++++++++++++----------------------
XKBgeom.h | 2 +-
XKBproto.h | 2 +-
3 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/XKB.h b/XKB.h
index a3b3bc0..e871433 100644
--- a/XKB.h
+++ b/XKB.h
@@ -104,7 +104,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbActionMessageMask (1L << 9)
#define XkbAccessXNotifyMask (1L << 10)
#define XkbExtensionDeviceNotifyMask (1L << 11)
-#define XkbAllEventsMask (0xFFF)
+#define XkbAllEventsMask ((1L << 12)-1)
/*
* NewKeyboardNotify event details:
@@ -112,7 +112,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbNKN_KeycodesMask (1L << 0)
#define XkbNKN_GeometryMask (1L << 1)
#define XkbNKN_DeviceIDMask (1L << 2)
-#define XkbAllNewKeyboardEventsMask (0x7)
+#define XkbAllNewKeyboardEventsMask ((1L << 3)-1)
/*
* AccessXNotify event types:
@@ -139,7 +139,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbAXN_BKAcceptMask (1L << 4)
#define XkbAXN_BKRejectMask (1L << 5)
#define XkbAXN_AXKWarningMask (1L << 6)
-#define XkbAllAccessXEventsMask (0x7f)
+#define XkbAllAccessXEventsMask ((1L << 7)-1)
/*
* Miscellaneous event details:
@@ -186,7 +186,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbNamesMask (1L << 4)
#define XkbGeometryMask (1L << 5)
#define XkbControlsMask (1L << 6)
-#define XkbAllComponentsMask (0x7f)
+#define XkbAllComponentsMask ((1L << 7)-1)
/*
* State detail mask:
@@ -209,7 +209,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbLookupModsMask (1L << 11)
#define XkbCompatLookupModsMask (1L << 12)
#define XkbPointerButtonMask (1L << 13)
-#define XkbAllStateComponentsMask (0x3fff)
+#define XkbAllStateComponentsMask ((1L << 14)-1)
/*
* Controls detail masks:
@@ -252,6 +252,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbOverlay1Mask (1L << 10)
#define XkbOverlay2Mask (1L << 11)
#define XkbIgnoreGroupLockMask (1L << 12)
+#define XkbAllBooleanCtrlsMask ((1L << 13)-1)
#define XkbGroupsWrapMask (1L << 27)
#define XkbInternalModsMask (1L << 28)
#define XkbIgnoreLockModsMask (1L << 29)
@@ -260,8 +261,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbAccessXOptionsMask (XkbStickyKeysMask|XkbAccessXFeedbackMask)
-#define XkbAllBooleanCtrlsMask (0x00001FFF)
-#define XkbAllControlsMask (0xF8001FFF)
+#define XkbAllControlsMask (0xF8000000L|XkbAllBooleanCtrlsMask)
#define XkbAllControlEventsMask XkbAllControlsMask
/*
@@ -285,9 +285,9 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbAX_SKRejectFBMask (1L << 9)
#define XkbAX_BKRejectFBMask (1L << 10)
#define XkbAX_DumbBellFBMask (1L << 11)
-#define XkbAX_FBOptionsMask (0xF3F)
-#define XkbAX_SKOptionsMask (0x0C0)
-#define XkbAX_AllOptionsMask (0xFFF)
+#define XkbAX_AllOptionsMask ((1L << 12)-1)
+#define XkbAX_FBOptionsMask (0xf3fL)
+#define XkbAX_SKOptionsMask (0x0c0L)
/*
* XkbUseCoreKbd is used to specify the core keyboard without having
@@ -368,8 +368,8 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbGroup2Mask (1<<1)
#define XkbGroup3Mask (1<<2)
#define XkbGroup4Mask (1<<3)
+#define XkbAllGroupsMask ((1<<4)-1)
#define XkbAnyGroupMask (1<<7)
-#define XkbAllGroupsMask (0xf)
/*
* BuildCoreState: Given a keyboard group and a modifier state,
@@ -586,7 +586,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbTwoLevelMask (1<<1)
#define XkbAlphabeticMask (1<<2)
#define XkbKeypadMask (1<<3)
-#define XkbAllRequiredTypes (0xf)
+#define XkbAllRequiredTypes ((1<<4)-1)
#define XkbShiftLevel(n) ((n)-1)
#define XkbShiftLevelMask(n) (1<<((n)-1))
@@ -613,7 +613,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbExplicitAutoRepeatMask (1<<5)
#define XkbExplicitBehaviorMask (1<<6)
#define XkbExplicitVModMapMask (1<<7)
-#define XkbAllExplicitMask (0xff)
+#define XkbAllExplicitMask ((1<<8)-1)
/*
* Map components masks:
@@ -691,7 +691,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#define XkbSymInterpMask (1<<0)
#define XkbGroupCompatMask (1<<1)
-#define XkbAllCompatMask (0x3)
+#define XkbAllCompatMask ((1<<2)-1)
/*
* Names component mask:
@@ -706,6 +706,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbPhysSymbolsNameMask (1<<3)
#define XkbTypesNameMask (1<<4)
#define XkbCompatNameMask (1<<5)
+#define XkbComponentNamesMask ((1<<6)-1)
#define XkbKeyTypeNamesMask (1<<6)
#define XkbKTLevelNamesMask (1<<7)
#define XkbIndicatorNamesMask (1<<8)
@@ -714,8 +715,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbVirtualModNamesMask (1<<11)
#define XkbGroupNamesMask (1<<12)
#define XkbRGNamesMask (1<<13)
-#define XkbComponentNamesMask (0x3f)
-#define XkbAllNamesMask (0x3fff)
+#define XkbAllNamesMask ((1<<14)-1)
/*
* GetByName components:
@@ -731,7 +731,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbGBN_KeyNamesMask (1L << 5)
#define XkbGBN_GeometryMask (1L << 6)
#define XkbGBN_OtherNamesMask (1L << 7)
-#define XkbGBN_AllComponentsMask (0xff)
+#define XkbGBN_AllComponentsMask ((1L << 8)-1)
/*
* ListComponents flags
@@ -762,12 +762,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbXI_IndicatorNamesMask (1L << 2)
#define XkbXI_IndicatorMapsMask (1L << 3)
#define XkbXI_IndicatorStateMask (1L << 4)
+#define XkbXI_AllFeaturesMask ((1L << 5)-1)
#define XkbXI_UnsupportedFeatureMask (1L << 15)
-#define XkbXI_AllFeaturesMask (0x001f)
-#define XkbXI_AllDeviceFeaturesMask (0x001e)
+#define XkbXI_AllDeviceFeaturesMask (0x001eL)
-#define XkbXI_IndicatorsMask (0x001c)
-#define XkbAllExtensionDeviceEventsMask (0x801f)
+#define XkbXI_IndicatorsMask (0x001cL)
+#define XkbAllExtensionDeviceEventsMask (0x801fL)
/*
* Per-Client Flags:
@@ -778,7 +778,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define XkbPCF_AutoResetControlsMask (1L << 2)
#define XkbPCF_LookupStateWhenGrabbed (1L << 3)
#define XkbPCF_SendEventUsesXKBState (1L << 4)
-#define XkbPCF_AllFlagsMask (0x1F)
+#define XkbPCF_AllFlagsMask ((1L << 5)-1)
/*
* Debugging flags and controls
diff --git a/XKBgeom.h b/XKBgeom.h
index 89f902f..7c36146 100644
--- a/XKBgeom.h
+++ b/XKBgeom.h
@@ -303,7 +303,7 @@ typedef struct _XkbGeometry {
#define XkbGeomSectionsMask (1<<3)
#define XkbGeomDoodadsMask (1<<4)
#define XkbGeomKeyAliasesMask (1<<5)
-#define XkbGeomAllMask (0x3f)
+#define XkbGeomAllMask ((1<<6)-1)
typedef struct _XkbGeometrySizes {
unsigned int which;
diff --git a/XKBproto.h b/XKBproto.h
index 97dd4d2..8bd21ef 100644
--- a/XKBproto.h
+++ b/XKBproto.h
@@ -356,7 +356,7 @@ typedef struct _xkbGetMapReply {
#define XkbSetMapResizeTypes (1L<<0)
#define XkbSetMapRecomputeActions (1L<<1)
-#define XkbSetMapAllFlags (0x3)
+#define XkbSetMapAllFlags ((1L<<2)-1)
typedef struct _xkbSetMap {
CARD8 reqType;
--
1.6.5.3
More information about the xorg-devel
mailing list