diff --git a/harbour/ChangeLog b/harbour/ChangeLog index d9fbdce007..7c35885a4c 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,52 +17,68 @@ past entries belonging to these authors: Viktor Szakats. */ +2009-05-26 21:41 UTC+0200 Viktor Szakats (harbour.01 syenar hu) + * contrib/hbwin/hbwapi.h + * contrib/hbwin/wapi_commctrl.c + ! wapi_par_COLORREF() fixed to use hb_parnl(). COLORREF is a 32bit value. + ! Rest of wapi_par_*() macros fixed to accept pointers only. + If someone needs to pass numbers, use WIN_N2P() to convert them + to pointers first. + ! Corrected casts in wapi_par_WORD() and wapi_par_DWORD(). + ! Fixed wapi_ret_HRESULT() to use hb_retnl(). It's a 32bit status value. + ! Fixed wapi_ret_COLORREF() to use hb_retnl(). + ! Fixed WAPI_TABCTRL_CREATE() for 64-bit mode, font type was wrong. + ! Fixed WAPI_TABCTRL_CREATE() to return pointer instead of number. + + * contrib/hbwin/Makefile + ! Reverted accidental edit in prev commit. + 2009-05-26 20:05 UTC+0200 Viktor Szakats (harbour.01 syenar hu) - * INSTALL - * Minor cleanups to prev. + * INSTALL + * Minor cleanups to prev. - * contrib/hbwin/axcore.c - * Minor formatting. - % Variable scopes adjusted. - % WIN_AXCREATEWINDOW() optimized. - - Deleted ToOutDebug() stuff. Please use TRACE() subsystem for - these parts. - ; NOTE: I'm note sure we should have a WIN_AXCREATEWINDOW() function - there. Rather, we should have a WAPI_CREATEWINDOWEX() function - which serves the same purpose, but in a generic manner, also - usable for AX purposes. Is there anything against this idea? + * contrib/hbwin/axcore.c + * Minor formatting. + % Variable scopes adjusted. + % WIN_AXCREATEWINDOW() optimized. + - Deleted ToOutDebug() stuff. Please use TRACE() subsystem for + these parts. + ; NOTE: I'm note sure we should have a WIN_AXCREATEWINDOW() function + there. Rather, we should have a WAPI_CREATEWINDOWEX() function + which serves the same purpose, but in a generic manner, also + usable for AX purposes. Is there anything against this idea? - * utils/hbformat/hbformat.prg - * contrib/gtwvg/wvgclass.prg - * contrib/gtwvg/wvgscrlb.prg - * contrib/gtwvg/wvgdlg.prg - * contrib/gtwvg/wvgpaint.prg - * contrib/gtwvg/wvgdarea.prg - * contrib/gtwvg/wvgmle.prg - * contrib/gtwvg/wvglistb.prg - * contrib/gtwvg/wvgtoolb.prg - * contrib/gtwvg/wvgpushb.prg - * contrib/gtwvg/wvgsle.prg - * contrib/gtwvg/wvgtreev.prg - * contrib/gtwvg/tests/demoxbp.prg - * contrib/gtwvg/tests/demowvg.prg - * contrib/gtwvg/wvgwnd.prg - * contrib/gtwvg/wvgcrt.prg - * contrib/gtwvg/wvgdatar.prg - * contrib/gtwvg/wvgradio.prg - * contrib/gtwvg/wvgsysw.prg - * contrib/gtwvg/wvgmenub.prg - * contrib/gtwvg/wvgphdlr.prg - * contrib/gtwvg/wvgbitmp.prg - * contrib/gtwvg/wvgcheck.prg - * contrib/gtwvg/wvgstatb.prg - * contrib/gtwvg/wvgstatc.prg - * contrib/gtwvg/wvghtmlv.prg - * contrib/gtwvg/wincback.prg - * contrib/gtwvg/wvgtabpg.prg - * contrib/gtwvg/wvg3stat.prg - * contrib/gtwvg/wvgcombo.prg - * Some formatting. (' -> " and #include lines) + * utils/hbformat/hbformat.prg + * contrib/gtwvg/wvgclass.prg + * contrib/gtwvg/wvgscrlb.prg + * contrib/gtwvg/wvgdlg.prg + * contrib/gtwvg/wvgpaint.prg + * contrib/gtwvg/wvgdarea.prg + * contrib/gtwvg/wvgmle.prg + * contrib/gtwvg/wvglistb.prg + * contrib/gtwvg/wvgtoolb.prg + * contrib/gtwvg/wvgpushb.prg + * contrib/gtwvg/wvgsle.prg + * contrib/gtwvg/wvgtreev.prg + * contrib/gtwvg/tests/demoxbp.prg + * contrib/gtwvg/tests/demowvg.prg + * contrib/gtwvg/wvgwnd.prg + * contrib/gtwvg/wvgcrt.prg + * contrib/gtwvg/wvgdatar.prg + * contrib/gtwvg/wvgradio.prg + * contrib/gtwvg/wvgsysw.prg + * contrib/gtwvg/wvgmenub.prg + * contrib/gtwvg/wvgphdlr.prg + * contrib/gtwvg/wvgbitmp.prg + * contrib/gtwvg/wvgcheck.prg + * contrib/gtwvg/wvgstatb.prg + * contrib/gtwvg/wvgstatc.prg + * contrib/gtwvg/wvghtmlv.prg + * contrib/gtwvg/wincback.prg + * contrib/gtwvg/wvgtabpg.prg + * contrib/gtwvg/wvg3stat.prg + * contrib/gtwvg/wvgcombo.prg + * Some formatting. (' -> " and #include lines) 2009-05-26 07:50 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbwin/axcore.c diff --git a/harbour/contrib/hbwin/Makefile b/harbour/contrib/hbwin/Makefile index 7086560d81..9416fd8fcc 100644 --- a/harbour/contrib/hbwin/Makefile +++ b/harbour/contrib/hbwin/Makefile @@ -21,7 +21,6 @@ C_SOURCES = \ olecore.c \ oleinit.c \ axcore.c \ - axcore1.c \ legacyc.c \ win_dll.c \ win_misc.c \ diff --git a/harbour/contrib/hbwin/hbwapi.h b/harbour/contrib/hbwin/hbwapi.h index 0e77084ca1..42511049f9 100644 --- a/harbour/contrib/hbwin/hbwapi.h +++ b/harbour/contrib/hbwin/hbwapi.h @@ -53,36 +53,36 @@ #ifndef __HBWAPI_H #define __HBWAPI_H -#define wapi_par_WNDPROC( n ) ( ( WNDPROC ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_WPARAM( n ) ( ( WPARAM ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_LPARAM( n ) ( ( LPARAM ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HWND( n ) ( ( HWND ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HDC( n ) ( ( HDC ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HANDLE( n ) ( ( HANDLE ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HGDIOBJ( n ) ( ( HGDIOBJ ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HBRUSH( n ) ( ( HBRUSH ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HBITMAP( n ) ( ( HBITMAP ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HICON( n ) ( ( HICON ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HIMAGELIST( n ) ( ( HIMAGELIST ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HFONT( n ) ( ( HFONT ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_HINSTANCE( n ) ( ( HINSTANCE ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) -#define wapi_par_COLORREF( n ) ( ( COLORREF ) ( ISNUM( n ) ? ( HB_PTRDIFF ) hb_parnint( n ) : ( HB_PTRDIFF ) hb_parptr( n ) ) ) +#define wapi_par_WNDPROC( n ) ( ( WNDPROC ) hb_parptr( n ) ) +#define wapi_par_WPARAM( n ) ( ( WPARAM ) hb_parptr( n ) ) +#define wapi_par_LPARAM( n ) ( ( LPARAM ) hb_parptr( n ) ) +#define wapi_par_HWND( n ) ( ( HWND ) hb_parptr( n ) ) +#define wapi_par_HDC( n ) ( ( HDC ) hb_parptr( n ) ) +#define wapi_par_HANDLE( n ) ( ( HANDLE ) hb_parptr( n ) ) +#define wapi_par_HGDIOBJ( n ) ( ( HGDIOBJ ) hb_parptr( n ) ) +#define wapi_par_HBRUSH( n ) ( ( HBRUSH ) hb_parptr( n ) ) +#define wapi_par_HBITMAP( n ) ( ( HBITMAP ) hb_parptr( n ) ) +#define wapi_par_HICON( n ) ( ( HICON ) hb_parptr( n ) ) +#define wapi_par_HIMAGELIST( n ) ( ( HIMAGELIST ) hb_parptr( n ) ) +#define wapi_par_HFONT( n ) ( ( HFONT ) hb_parptr( n ) ) +#define wapi_par_HINSTANCE( n ) ( ( HINSTANCE ) hb_parptr( n ) ) +#define wapi_par_COLORREF( n ) ( ( COLORREF ) hb_parnl( n ) ) #define wapi_par_STRUCT( n ) ( hb_parc( n ) ) -#define wapi_par_BOOL( n ) ( hb_parl( n ) ) -#define wapi_par_INT( n ) ( hb_parni( n ) ) +#define wapi_par_BOOL( n ) ( ( BOOL ) hb_parl( n ) ) +#define wapi_par_INT( n ) ( ( INT ) hb_parni( n ) ) #define wapi_par_UINT( n ) ( ( UINT ) hb_parni( n ) ) #define wapi_par_LONG( n ) ( ( LONG ) hb_parnl( n ) ) -#define wapi_par_WORD( n ) ( ( LONG ) hb_parnl( n ) ) -#define wapi_par_DWORD( n ) ( ( LONG ) hb_parnl( n ) ) +#define wapi_par_WORD( n ) ( ( WORD ) hb_parnl( n ) ) +#define wapi_par_DWORD( n ) ( ( DWORD ) hb_parnl( n ) ) #define wapi_ret_NINT( i ) ( hb_retnint( i ) ) #define wapi_ret_NI( i ) ( hb_retni( i ) ) #define wapi_ret_L( b ) ( hb_retl( b ) ) -#define wapi_ret_HANDLE( h ) ( hb_retptr( h ) ) -#define wapi_ret_HRESULT( hr ) ( hb_retptr( hr ) ) -#define wapi_ret_COLORREF( cr ) ( hb_retnint( ( HB_PTRDIFF ) cr ) ) +#define wapi_ret_HANDLE( h ) ( hb_retptr( h ) ) +#define wapi_ret_HRESULT( hr ) ( hb_retnl( hr ) ) +#define wapi_ret_COLORREF( cr ) ( hb_retnl( cr ) ) #endif /* __HBWAPI_H */ diff --git a/harbour/contrib/hbwin/wapi_commctrl.c b/harbour/contrib/hbwin/wapi_commctrl.c index e58a38f586..4c7d3cc4ba 100644 --- a/harbour/contrib/hbwin/wapi_commctrl.c +++ b/harbour/contrib/hbwin/wapi_commctrl.c @@ -762,16 +762,12 @@ HB_FUNC( WAPI_TABCTRL_GETUNICODEFORMAT ) HB_FUNC( WAPI_TABCTRL_CREATE ) { - HWND hwnd; - LONG style; - LONG hFont; - HWND hbutton; - hwnd = ( HWND ) wapi_par_HWND( 1 ); - style = ( LONG ) hb_parnl( 6 ); /* defaults to 0 */ - hFont = SendMessage( hwnd, WM_GETFONT, 0, 0 ); - hbutton = CreateWindowEx( 0, WC_TABCONTROL, NULL, style, hb_parni( 2 ), hb_parni( 3 ) , hb_parni( 4 ), hb_parni( 5 ), hwnd, NULL, GetModuleHandle( NULL ), NULL ); + HWND hwnd = ( HWND ) wapi_par_HWND( 1 ); + LONG style = ( LONG ) hb_parnl( 6 ); /* defaults to 0 */ + HFONT hFont = ( HFONT ) SendMessage( hwnd, WM_GETFONT, 0, 0 ); + HWND hbutton = CreateWindowEx( 0, WC_TABCONTROL, NULL, style, hb_parni( 2 ), hb_parni( 3 ) , hb_parni( 4 ), hb_parni( 5 ), hwnd, NULL, GetModuleHandle( NULL ), NULL ); SendMessage( hbutton, ( UINT ) WM_SETFONT, ( WPARAM ) hFont, 1 ); - hb_retnint( ( HB_PTRDIFF ) hbutton ); + wapi_ret_HANDLE( hbutton ); } /*----------------------------------------------------------------------*/