2015-11-02 17:13 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

* src/rtl/gtsln/kbsln.c
  * tests/inkey.prg
    - removed not longer used HB_INKEY_RAW flag

  * tests/inkey.prg
    * test HB_INKEY_EXT keycodes when second parameter contains "E" letter

  * src/rtl/gtwvt/gtwvt.c
    * minor switch order modification
    * accept 127 as unicode character value if system also do that

  * src/rtl/gtwin/gtwin.c
    + added support for Harbour extended key codes
    + added support for mouse middle button
    + added support for some missing key combinations
    ! fixed mouse event processing
    ! fixed ALT + KeyPad NUMs processing - now it's disabled by default
      because current GTWIN supports native ALT + KeyPad NUMs processing
      provided by MS-Windows console. It works when NUMLOCK is ON. If
      someone needs to process it also when NUMLOCK is OFF then he can
      enable it by:
            hb_gtInfo( HB_GTI_KBDALT, .T. )
    ! fixed and simplified workaround for bug in MS-Windows 95 and 98
      consoles which wrongly decode SHIFT + <NUMBER> with CAPSLOCK ON
      for standard US keyboard drivers. Now enabling this workaround by:
         hb_gtInfo( HB_GTI_KBDSPECIAL, .T. )
      should not break input with fixed keyboard drivers.
    ; please test it with different windows versions and national keyboard
      layouts, tests/gtkeys.prg is quite good test program.
This commit is contained in:
Przemysław Czerpak
2015-11-02 17:13:20 +01:00
parent 12a38cfdc5
commit ef13a4a651
5 changed files with 633 additions and 755 deletions

View File

@@ -14,7 +14,7 @@
#define hb_ntos( n ) LTrim( Str( n ) )
#endif
PROCEDURE Main( cSkip, cRaw )
PROCEDURE Main( cSkip, cExt )
AltD( 0 )
@@ -40,7 +40,7 @@ PROCEDURE Main( cSkip, cRaw )
NextTest()
ENDIF
TEST7( cSkip, cRaw )
TEST7( cSkip, cExt )
?
RETURN
@@ -203,7 +203,7 @@ PROCEDURE TEST6
RETURN
PROCEDURE TEST7( cSkip, cRaw )
PROCEDURE TEST7( cSkip, cExt )
LOCAL nKey, nMask
@@ -216,9 +216,9 @@ PROCEDURE TEST7( cSkip, cRaw )
? "Press any key."
nMask := HB_INKEY_ALL
IF ! Empty( cRaw )
IF Upper( Left( cRaw, 1 ) ) == "R"
nMask += HB_INKEY_RAW
IF ! Empty( cExt )
IF "E" $ Upper( cExt )
nMask += HB_INKEY_EXT
ENDIF
ENDIF