diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 27ccb3a5cd..cf1b28e085 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,28 @@ 2009-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-02-18 16:05 UTC+0100 Viktor Szakats (harbour.01 syenar hu) + * config/win/bcc32.cf + * Synced flags with non-GNU make. This adds MT support. + + * config/win/install.cf + ! Install command modified to not give errors and block + the whole build process if the target file already exists. + The workaround consisted of changing 'copy' to 'xcopy /d /y'. + + * include/inkey.ch + + Added comments on K_MM*DOWN codes. + These also should be protected, and moved to + local the local headers belonging to GTs + supporting this feature (GTWVG notably). + + * source/rtl/gtwvt/gtwvt.c + + Protected non-Clipper compatible extension regarding + K_MM*DOWN with __HB_GTWVT_GEN_K_MMDOWN_EVENTS #define. + Also see notes in about app level code modification + needed if you want to continue using default Harbour build: + 2009-02-18 12:20 UTC+0100 Viktor Szakats (harbour.01 syenar hu) + 2009-02-18 14:36 UTC+0100 Viktor Szakats (harbour.01 syenar hu) * contrib/gtalleg/tests/gtalleg-static.hbp + Added some Windows libs. The libs seem compiler diff --git a/harbour/config/win/bcc32.cf b/harbour/config/win/bcc32.cf index 0f223aa734..f853b5fd00 100644 --- a/harbour/config/win/bcc32.cf +++ b/harbour/config/win/bcc32.cf @@ -15,7 +15,7 @@ CC = bcc32.exe CC_IN = -c CC_OUT = -o CPPFLAGS = -I. -I$(HB_INC_COMPILE) -CFLAGS = -4 -O2 -OS -Ov -Oi -Oc -q -d -w -w-sig- +CFLAGS = -4 -O2 -OS -Ov -Oi -Oc -q -d -Q -w -w-sig- -tWM LD = bcc32.exe LDFLAGS = -O2 diff --git a/harbour/config/win/install.cf b/harbour/config/win/install.cf index b386ca5f0e..890b84c376 100644 --- a/harbour/config/win/install.cf +++ b/harbour/config/win/install.cf @@ -15,7 +15,7 @@ INSTALL_LIST = $(subst /,\,$(INSTALL_OBJS)) ifeq ($(CMD_EXE),yes) # cmd.exe no command line size limit INSTALL_RULE = \ - $(COMSPEC) /c for %f in ($(INSTALL_LIST)) do copy %f $(subst /,\,$(INSTALL_DIR)) + $(COMSPEC) /c for %f in ($(INSTALL_LIST)) do xcopy /d /y %f $(subst /,\,$(INSTALL_DIR)) else # We have to use script to overcome the DOS limit of max 128 characters # NOTE: The empty line directly before 'endef' HAVE TO exist! diff --git a/harbour/include/inkey.ch b/harbour/include/inkey.ch index d421bca220..3e2fb681d1 100644 --- a/harbour/include/inkey.ch +++ b/harbour/include/inkey.ch @@ -85,9 +85,9 @@ #define K_MBUTTONDOWN 1008 /* Middle Button Down */ #define K_MBUTTONUP 1009 /* Middle Button Up */ #define K_MDBLCLK 1010 /* Middle Button Double Click */ -#define K_MMLEFTDOWN 1011 /* Mouse Move Left Down */ -#define K_MMRIGHTDOWN 1012 /* Mouse Move Right Down */ -#define K_MMMIDDLEDOWN 1013 /* Mouse Move Middle Down */ +#define K_MMLEFTDOWN 1011 /* Mouse Move Left Down (non-Clipper compatible, GTWVT only, needs #define __HB_GTWVT_GEN_K_MMDOWN_EVENTS) */ +#define K_MMRIGHTDOWN 1012 /* Mouse Move Right Down (non-Clipper compatible, GTWVT only, needs #define __HB_GTWVT_GEN_K_MMDOWN_EVENTS) */ +#define K_MMMIDDLEDOWN 1013 /* Mouse Move Middle Down (non-Clipper compatible, GTWVT only, needs #define __HB_GTWVT_GEN_K_MMDOWN_EVENTS) */ #define K_MWFORWARD 1014 /* Mouse Wheel Forward */ #define K_MWBACKWARD 1015 /* Mouse Wheel Backward */ #define K_NCMOUSEMOVE 1016 /* Non-Client Area Mouse Movement */ diff --git a/harbour/source/rtl/gtwvt/gtwvt.c b/harbour/source/rtl/gtwvt/gtwvt.c index 40a7ee5997..96f2ee3556 100644 --- a/harbour/source/rtl/gtwvt/gtwvt.c +++ b/harbour/source/rtl/gtwvt/gtwvt.c @@ -901,7 +901,6 @@ static void hb_gt_wvt_MouseEvent( PHB_GTWVT pWVT, UINT message, WPARAM wParam, L { POINT xy, colrow; SHORT keyCode = 0; - SHORT keyState; HB_SYMBOL_UNUSED( wParam ); @@ -1084,7 +1083,8 @@ static void hb_gt_wvt_MouseEvent( PHB_GTWVT pWVT, UINT message, WPARAM wParam, L } else { - keyState = ( SHORT ) wParam; +#if defined( __HB_GTWVT_GEN_K_MMDOWN_EVENTS ) + SHORT keyState = ( SHORT ) wParam; switch( keyState ) { @@ -1101,13 +1101,18 @@ static void hb_gt_wvt_MouseEvent( PHB_GTWVT pWVT, UINT message, WPARAM wParam, L keyCode = K_MOUSEMOVE; } break; +#else + keyCode = K_MOUSEMOVE; + break; +#endif } } case WM_MOUSEWHEEL: - keyState = HIWORD( wParam ); + { + SHORT keyState = ( SHORT ) HIWORD( wParam ); keyCode = keyState > 0 ? K_MWFORWARD : K_MWBACKWARD; break; - + } case WM_NCMOUSEMOVE: keyCode = K_NCMOUSEMOVE; break;