summaryrefslogtreecommitdiff
path: root/src/corelib/x11
diff options
context:
space:
mode:
authorGraeme Geldenhuys <graeme@mastermaths.co.za>2010-09-20 13:03:49 +0200
committerGraeme Geldenhuys <graeme@mastermaths.co.za>2010-09-20 13:03:49 +0200
commitaa2cc53f0dc07a7f43d3dbc6e5c607fc9401c1b9 (patch)
treecbbba5f3a92928b81d0995b5db377c16bdab1755 /src/corelib/x11
parent51d6e695e7c311afc3cbe9bc4ac17ba405388d09 (diff)
downloadfpGUI-aa2cc53f0dc07a7f43d3dbc6e5c607fc9401c1b9.tar.xz
Add some programmer comments in X11 backend code.
Diffstat (limited to 'src/corelib/x11')
-rw-r--r--src/corelib/x11/fpg_x11.pas9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/corelib/x11/fpg_x11.pas b/src/corelib/x11/fpg_x11.pas
index 2b4c0418..b6fbd3a6 100644
--- a/src/corelib/x11/fpg_x11.pas
+++ b/src/corelib/x11/fpg_x11.pas
@@ -335,6 +335,8 @@ function XdbeDeallocateBackBufferName(ADisplay: PXDisplay; ABuffer: TfpgWinHandl
function XOpenIM(para1: PDisplay; para2: PXrmHashBucketRec; para3: Pchar; para4: Pchar): PXIM; cdecl; external;
function XCreateIC(para1: PXIM; para2: array of const): PXIC; cdecl; external;
+const
+ AltGrMask = 1 shl 13; // missing from X unit
function ConvertTo565Pixel(rgb: longword): word;
begin
@@ -592,11 +594,12 @@ begin
Include(Result, ssAlt);
if (AState and Mod2Mask) <> 0 then
Include(Result, ssNum);
- if (AState and Mod4Mask) <> 0 then
+ { NOTE: Mod3Mask is normally unused for some reason }
+ if (AState and Mod4Mask) <> 0 then { aka "Windows key" }
Include(Result, ssSuper);
if (AState and Mod5Mask) <> 0 then
Include(Result, ssScroll);
- if (AState and (1 shl 13)) <> 0 then
+ if (AState and AltGrMask) <> 0 then
Include(Result, ssAltGr);
end;
@@ -627,7 +630,7 @@ begin
0..Ord('a')-1, Ord('z')+1..$bf, $f7:
Result := KeySym;
Ord('a')..Ord('z'), $c0..$f6, $f8..$ff:
- Result := KeySym - 32;
+ Result := KeySym - 32; // ignore case: convert lowercase a-z to A-Z keysyms;
$20a0..$20ac: Result := Table_20aX[KeySym];
$fe20: Result := keyTab;
$fe50..$fe60: Result := Table_feXX[KeySym];