From 563604d564cf533f0751a5a1e433a12d88edec12 Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Thu, 2 Apr 2020 13:51:04 +0000 Subject: Fix [220811] and [220808]: Docs missing for Tk_TranslateWinEvent/Tk_PointerEvent API. Moved functions to tkWinInt.h as MODULE_SCOPE. (Stub entry still kept, as long as not -DTK_NO_DEPRECATED) --- generic/tkStubInit.c | 11 +++++++++-- win/tkWinButton.c | 2 +- win/tkWinInt.h | 4 ++++ win/tkWinMenu.c | 2 +- win/tkWinPointer.c | 6 +++--- win/tkWinScrlbr.c | 4 ++-- win/tkWinWm.c | 2 +- win/tkWinX.c | 10 +++++----- 8 files changed, 26 insertions(+), 15 deletions(-) diff --git a/generic/tkStubInit.c b/generic/tkStubInit.c index f247fd7..6a46efb 100644 --- a/generic/tkStubInit.c +++ b/generic/tkStubInit.c @@ -44,6 +44,15 @@ MODULE_SCOPE const TkStubs tkStubs; #undef TkPutImage #undef XPutImage +#if defined(_WIN32) && !defined(TK_NO_DEPRECATED) && TCL_MAJOR_VERSION < 9 +# define Tk_TranslateWinEvent TkTranslateWinEvent +# define Tk_PointerEvent TkWinPointerEvent +#else +# define Tk_TranslateWinEvent 0 +# define Tk_PointerEvent 0 +#endif + + #if defined(TK_NO_DEPRECATED) || TCL_MAJOR_VERSION > 8 #define Tk_MainEx 0 #define Tk_FreeXId 0 @@ -190,8 +199,6 @@ TkPutImage( # define Tk_AttachHWND 0 # define Tk_GetHWND 0 # define Tk_HWNDToWindow 0 -# define Tk_PointerEvent 0 -# define Tk_TranslateWinEvent 0 # define TkAlignImageData 0 # define TkpGetMS 0 # define TkpGetCapture 0 diff --git a/win/tkWinButton.c b/win/tkWinButton.c index bc2f16a..adcaa04 100644 --- a/win/tkWinButton.c +++ b/win/tkWinButton.c @@ -1303,7 +1303,7 @@ ButtonProc( } /* FALLTHRU */ default: - if (Tk_TranslateWinEvent(hwnd, message, wParam, lParam, &result)) { + if (TkTranslateWinEvent(hwnd, message, wParam, lParam, &result)) { return result; } } diff --git a/win/tkWinInt.h b/win/tkWinInt.h index ef4f1bd..c1b0658 100644 --- a/win/tkWinInt.h +++ b/win/tkWinInt.h @@ -200,6 +200,10 @@ MODULE_SCOPE long TkpWinToplevelOverrideRedirect(TkWindow *winPtr, MODULE_SCOPE void TkpWinToplevelDetachWindow(TkWindow *winPtr); MODULE_SCOPE int TkpWmGetState(TkWindow *winPtr); +MODULE_SCOPE int TkTranslateWinEvent(HWND hwnd, UINT message, + WPARAM wParam, LPARAM lParam, LRESULT *result); +MODULE_SCOPE void TkWinPointerEvent(HWND hwnd, int x, int y); + /* * The following is implemented in tkWinPointer.c and also used in tkWinWindow.c */ diff --git a/win/tkWinMenu.c b/win/tkWinMenu.c index 3c0f83c..ecccb94 100644 --- a/win/tkWinMenu.c +++ b/win/tkWinMenu.c @@ -841,7 +841,7 @@ TkpPostMenu( Tcl_SetServiceMode(oldServiceMode); GetCursorPos(&point); - Tk_PointerEvent(NULL, point.x, point.y); + TkWinPointerEvent(NULL, point.x, point.y); if (tsdPtr->inPostMenu) { tsdPtr->inPostMenu = 0; diff --git a/win/tkWinPointer.c b/win/tkWinPointer.c index 561d90e..222d938 100644 --- a/win/tkWinPointer.c +++ b/win/tkWinPointer.c @@ -93,7 +93,7 @@ TkWinGetModifierState(void) /* *---------------------------------------------------------------------- * - * Tk_PointerEvent -- + * TkWinPointerEvent -- * * This procedure is called for each pointer-related event. It converts * the position to root coords and updates the global pointer state @@ -109,7 +109,7 @@ TkWinGetModifierState(void) */ void -Tk_PointerEvent( +TkWinPointerEvent( HWND hwnd, /* Window for coords, or NULL for the root * window. */ int x, int y) /* Coords relative to hwnd, or screen if hwnd @@ -248,7 +248,7 @@ MouseTimerProc( */ GetCursorPos(&pos); - Tk_PointerEvent(NULL, pos.x, pos.y); + TkWinPointerEvent(NULL, pos.x, pos.y); } /* diff --git a/win/tkWinScrlbr.c b/win/tkWinScrlbr.c index 9f8c636..d00b324 100644 --- a/win/tkWinScrlbr.c +++ b/win/tkWinScrlbr.c @@ -497,7 +497,7 @@ ScrollbarProc( int code; GetCursorPos(&point); - Tk_TranslateWinEvent(NULL, WM_MOUSEMOVE, 0, + TkTranslateWinEvent(NULL, WM_MOUSEMOVE, 0, MAKELPARAM(point.x, point.y), &result); if (command == SB_ENDSCROLL) { @@ -564,7 +564,7 @@ ScrollbarProc( } default: - if (Tk_TranslateWinEvent(hwnd, message, wParam, lParam, &result)) { + if (TkTranslateWinEvent(hwnd, message, wParam, lParam, &result)) { return result; } } diff --git a/win/tkWinWm.c b/win/tkWinWm.c index 2124d80..2f00672 100644 --- a/win/tkWinWm.c +++ b/win/tkWinWm.c @@ -8125,7 +8125,7 @@ WmProc( if (message == WM_SETFOCUS) { SetFocus(child); result = 0; - } else if (!Tk_TranslateWinEvent(child, message, wParam, lParam, + } else if (!TkTranslateWinEvent(child, message, wParam, lParam, &result)) { result = DefWindowProcW(hwnd, message, wParam, lParam); } diff --git a/win/tkWinX.c b/win/tkWinX.c index 0413a5f..c275120 100644 --- a/win/tkWinX.c +++ b/win/tkWinX.c @@ -802,7 +802,7 @@ TkWinChildProc( result = 1; } else { /* If the event was translated, we must return 0 */ - if (Tk_TranslateWinEvent(hwnd, message, wParam, lParam, &result)) { + if (TkTranslateWinEvent(hwnd, message, wParam, lParam, &result)) { result = 0; } else { result = 1; @@ -811,7 +811,7 @@ TkWinChildProc( break; default: - if (!Tk_TranslateWinEvent(hwnd, message, wParam, lParam, &result)) { + if (!TkTranslateWinEvent(hwnd, message, wParam, lParam, &result)) { result = DefWindowProcW(hwnd, message, wParam, lParam); } break; @@ -828,7 +828,7 @@ TkWinChildProc( /* *---------------------------------------------------------------------- * - * Tk_TranslateWinEvent -- + * TkTranslateWinEvent -- * * This function is called by widget window functions to handle the * translation from Win32 events to Tk events. @@ -843,7 +843,7 @@ TkWinChildProc( */ int -Tk_TranslateWinEvent( +TkTranslateWinEvent( HWND hwnd, UINT message, WPARAM wParam, @@ -912,7 +912,7 @@ Tk_TranslateWinEvent( case WM_RBUTTONUP: case WM_XBUTTONUP: case WM_MOUSEMOVE: - Tk_PointerEvent(hwnd, (short) LOWORD(lParam), (short) HIWORD(lParam)); + TkWinPointerEvent(hwnd, (short) LOWORD(lParam), (short) HIWORD(lParam)); return 1; case WM_SYSKEYDOWN: -- cgit v0.12