2013-06-19 14:31 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbapigt.h
* include/hbgtcore.h
* moved macros to manipulate Harbour extended key codes from
hbgtcore.h to hbapigt.h
This commit is contained in:
@@ -10,6 +10,12 @@
|
||||
* Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment
|
||||
*/
|
||||
|
||||
2013-06-19 14:31 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
|
||||
* include/hbapigt.h
|
||||
* include/hbgtcore.h
|
||||
* moved macros to manipulate Harbour extended key codes from
|
||||
hbgtcore.h to hbapigt.h
|
||||
|
||||
2013-06-17 17:02 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
|
||||
* include/hbgtinfo.ch
|
||||
+ added new hb_gtInfo() action: HB_GTI_RESIZESTEP
|
||||
|
||||
@@ -317,6 +317,51 @@ extern HB_EXPORT int hb_inkeyKeyStd( int iKey ); /* convert Harbour e
|
||||
extern HB_EXPORT int hb_inkeyKeyMod( int iKey ); /* extract keyboard modifiers HB_KF_* from Harbour extended key code */
|
||||
extern HB_EXPORT int hb_inkeyKeyVal( int iKey ); /* extract key/character code from Harbour extended key code */
|
||||
|
||||
/* macros to manipulate Harbour extended key codes */
|
||||
#define HB_INKEY_EXT_MASK 0xF8000000
|
||||
#define HB_INKEY_EXT_BIT 0x40000000
|
||||
#define HB_INKEY_EXT_TYPEMASK 0xFF000000
|
||||
#define HB_INKEY_EXT_VALBITS 16
|
||||
#define HB_INKEY_EXT_VALMASK ( ( 1 << HB_INKEY_EXT_VALBITS ) - 1 )
|
||||
#define HB_INKEY_EXT_FLAGMASK ( 0xFF << HB_INKEY_EXT_VALBITS )
|
||||
#define HB_INKEY_EXT_KEY 0x01000000
|
||||
#define HB_INKEY_EXT_CHAR 0x02000000
|
||||
#define HB_INKEY_EXT_UNICODE 0x03000000
|
||||
#define HB_INKEY_EXT_MOUSEKEY 0x04000000
|
||||
#define HB_INKEY_EXT_MOUSEPOS 0x05000000
|
||||
#define HB_INKEY_EXT_EVENT 0x06000000
|
||||
#define HB_INKEY_EXT_POSBITS 12
|
||||
#define HB_INKEY_EXT_POSMASK ( ( 1 << HB_INKEY_EXT_POSBITS ) - 1 )
|
||||
|
||||
#define HB_INKEY_ISEXT( n ) ( ( ( n ) & HB_INKEY_EXT_MASK ) == HB_INKEY_EXT_BIT )
|
||||
#define HB_INKEY_TYPE( n ) ( ( ( n ) ^ HB_INKEY_EXT_BIT ) & HB_INKEY_EXT_TYPEMASK )
|
||||
#define HB_INKEY_ISKEY( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_KEY )
|
||||
#define HB_INKEY_ISCHAR( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_CHAR )
|
||||
#define HB_INKEY_ISUNICODE( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_UNICODE )
|
||||
#define HB_INKEY_ISMOUSEKEY( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_MOUSEKEY )
|
||||
#define HB_INKEY_ISMOUSEPOS( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_MOUSEPOS )
|
||||
#define HB_INKEY_ISEVENT( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_EVENT )
|
||||
|
||||
#define HB_INKEY_NEW_VALF( v, f ) ( ( ( v ) & HB_INKEY_EXT_VALMASK ) | \
|
||||
( ( ( f ) << HB_INKEY_EXT_VALBITS ) & HB_INKEY_EXT_FLAGMASK ) )
|
||||
|
||||
#define HB_INKEY_NEW_MKEY( k, f ) ( HB_INKEY_NEW_VALF( k, f ) | HB_INKEY_EXT_BIT | HB_INKEY_EXT_MOUSEKEY )
|
||||
#define HB_INKEY_NEW_KEY( k, f ) ( HB_INKEY_NEW_VALF( k, f ) | HB_INKEY_EXT_BIT | HB_INKEY_EXT_KEY )
|
||||
#define HB_INKEY_NEW_CHAR( b ) ( ( b ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_CHAR ) )
|
||||
#define HB_INKEY_NEW_CHARF( b, f ) ( HB_INKEY_NEW_VALF( b, f ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_CHAR ) )
|
||||
#define HB_INKEY_NEW_UNICODE( b ) ( ( b ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_UNICODE ) )
|
||||
#define HB_INKEY_NEW_UNICODEF( b, f ) ( HB_INKEY_NEW_VALF( b, f ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_UNICODE ) )
|
||||
|
||||
#define HB_INKEY_NEW_MPOS( x, y ) ( ( ( ( y ) & HB_INKEY_EXT_POSMASK ) << HB_INKEY_EXT_POSBITS ) | \
|
||||
( ( x ) & HB_INKEY_EXT_POSMASK ) | \
|
||||
( HB_INKEY_EXT_BIT | HB_INKEY_EXT_MOUSEPOS ) )
|
||||
|
||||
#define HB_INKEY_MOUSEPOSX( n ) ( ( n ) & HB_INKEY_EXT_POSMASK )
|
||||
#define HB_INKEY_MOUSEPOSY( n ) ( ( ( n ) >> HB_INKEY_EXT_POSBITS ) & HB_INKEY_EXT_POSMASK )
|
||||
|
||||
#define HB_INKEY_VALUE( n ) ( ( n ) & HB_INKEY_EXT_VALMASK )
|
||||
#define HB_INKEY_FLAGS( n ) ( ( ( n ) & HB_INKEY_EXT_FLAGMASK ) >> HB_INKEY_EXT_VALBITS )
|
||||
|
||||
HB_EXTERN_END
|
||||
|
||||
#endif /* HB_APIGT_H_ */
|
||||
|
||||
@@ -642,52 +642,6 @@ extern HB_EXPORT void hb_gt_winapi_tone( double dFrequency, double dDuration
|
||||
extern int hb_gt_dos_keyCodeTranslate( int iKey );
|
||||
#endif /* HB_OS_DOS || HB_OS_WIN || HB_OS_OS2 */
|
||||
|
||||
/* macros to manipulate Harbour extended key codes */
|
||||
#define HB_INKEY_EXT_MASK 0xF8000000
|
||||
#define HB_INKEY_EXT_BIT 0x40000000
|
||||
#define HB_INKEY_EXT_TYPEMASK 0xFF000000
|
||||
#define HB_INKEY_EXT_VALBITS 16
|
||||
#define HB_INKEY_EXT_VALMASK ( ( 1 << HB_INKEY_EXT_VALBITS ) - 1 )
|
||||
#define HB_INKEY_EXT_FLAGMASK ( 0xFF << HB_INKEY_EXT_VALBITS )
|
||||
#define HB_INKEY_EXT_KEY 0x01000000
|
||||
#define HB_INKEY_EXT_CHAR 0x02000000
|
||||
#define HB_INKEY_EXT_UNICODE 0x03000000
|
||||
#define HB_INKEY_EXT_MOUSEKEY 0x04000000
|
||||
#define HB_INKEY_EXT_MOUSEPOS 0x05000000
|
||||
#define HB_INKEY_EXT_EVENT 0x06000000
|
||||
#define HB_INKEY_EXT_POSBITS 12
|
||||
#define HB_INKEY_EXT_POSMASK ( ( 1 << HB_INKEY_EXT_POSBITS ) - 1 )
|
||||
|
||||
#define HB_INKEY_ISEXT( n ) ( ( ( n ) & HB_INKEY_EXT_MASK ) == HB_INKEY_EXT_BIT )
|
||||
#define HB_INKEY_TYPE( n ) ( ( ( n ) ^ HB_INKEY_EXT_BIT ) & HB_INKEY_EXT_TYPEMASK )
|
||||
#define HB_INKEY_ISKEY( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_KEY )
|
||||
#define HB_INKEY_ISCHAR( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_CHAR )
|
||||
#define HB_INKEY_ISUNICODE( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_UNICODE )
|
||||
#define HB_INKEY_ISMOUSEKEY( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_MOUSEKEY )
|
||||
#define HB_INKEY_ISMOUSEPOS( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_MOUSEPOS )
|
||||
#define HB_INKEY_ISEVENT( n ) ( HB_INKEY_TYPE( n ) == HB_INKEY_EXT_EVENT )
|
||||
|
||||
#define HB_INKEY_NEW_VALF( v, f ) ( ( ( v ) & HB_INKEY_EXT_VALMASK ) | \
|
||||
( ( ( f ) << HB_INKEY_EXT_VALBITS ) & HB_INKEY_EXT_FLAGMASK ) )
|
||||
|
||||
#define HB_INKEY_NEW_MKEY( k, f ) ( HB_INKEY_NEW_VALF( k, f ) | HB_INKEY_EXT_BIT | HB_INKEY_EXT_MOUSEKEY )
|
||||
#define HB_INKEY_NEW_KEY( k, f ) ( HB_INKEY_NEW_VALF( k, f ) | HB_INKEY_EXT_BIT | HB_INKEY_EXT_KEY )
|
||||
#define HB_INKEY_NEW_CHAR( b ) ( ( b ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_CHAR ) )
|
||||
#define HB_INKEY_NEW_CHARF( b, f ) ( HB_INKEY_NEW_VALF( b, f ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_CHAR ) )
|
||||
#define HB_INKEY_NEW_UNICODE( b ) ( ( b ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_UNICODE ) )
|
||||
#define HB_INKEY_NEW_UNICODEF( b, f ) ( HB_INKEY_NEW_VALF( b, f ) | ( HB_INKEY_EXT_BIT | HB_INKEY_EXT_UNICODE ) )
|
||||
|
||||
#define HB_INKEY_NEW_MPOS( x, y ) ( ( ( ( y ) & HB_INKEY_EXT_POSMASK ) << HB_INKEY_EXT_POSBITS ) | \
|
||||
( ( x ) & HB_INKEY_EXT_POSMASK ) | \
|
||||
( HB_INKEY_EXT_BIT | HB_INKEY_EXT_MOUSEPOS ) )
|
||||
|
||||
#define HB_INKEY_MOUSEPOSX( n ) ( ( n ) & HB_INKEY_EXT_POSMASK )
|
||||
#define HB_INKEY_MOUSEPOSY( n ) ( ( ( n ) >> HB_INKEY_EXT_POSBITS ) & HB_INKEY_EXT_POSMASK )
|
||||
|
||||
#define HB_INKEY_VALUE( n ) ( ( n ) & HB_INKEY_EXT_VALMASK )
|
||||
#define HB_INKEY_FLAGS( n ) ( ( ( n ) & HB_INKEY_EXT_FLAGMASK ) >> HB_INKEY_EXT_VALBITS )
|
||||
|
||||
|
||||
HB_EXTERN_END
|
||||
|
||||
#endif /* HB_GTCORE_H_ */
|
||||
|
||||
Reference in New Issue
Block a user