#endif // Win32/16
// wnd proc for radio buttons
+#ifdef __WIN32__
LRESULT APIENTRY _EXPORT wxRadioBtnWndProc(HWND hWnd,
UINT message,
WPARAM wParam,
LPARAM lParam);
+#endif
// ---------------------------------------------------------------------------
// global vars
// ---------------------------------------------------------------------------
// the pointer to standard radio button wnd proc
-static WNDPROC s_wndprocRadioBtn = (WNDPROC)NULL;
+// static WNDPROC s_wndprocRadioBtn = (WNDPROC)NULL;
+static WXFARPROC s_wndprocRadioBtn = (WXFARPROC)NULL;
// ===========================================================================
// implementation
HWND hwndBtn = (HWND)hWndBtn;
if ( !s_wndprocRadioBtn )
- s_wndprocRadioBtn = (WNDPROC)::GetWindowLong(hwndBtn, GWL_WNDPROC);
+ s_wndprocRadioBtn = (WXFARPROC)::GetWindowLong(hwndBtn, GWL_WNDPROC);
+// s_wndprocRadioBtn = (WNDPROC)::GetWindowLong(hwndBtn, GWL_WNDPROC);
+ // No GWL_USERDATA in Win16, so omit this subclassing.
+#ifdef __WIN32__
::SetWindowLong(hwndBtn, GWL_WNDPROC, (long)wxRadioBtnWndProc);
::SetWindowLong(hwndBtn, GWL_USERDATA, (long)this);
+#endif
}
// ---------------------------------------------------------------------------
// window proc for radio buttons
// ---------------------------------------------------------------------------
+#ifdef __WIN32__
+
LRESULT APIENTRY _EXPORT wxRadioBtnWndProc(HWND hwnd,
UINT msg,
WPARAM wParam,
}
if ( !processed )
- return ::CallWindowProc(s_wndprocRadioBtn, hwnd, msg, wParam, lParam);
+ return ::CallWindowProc(CASTWNDPROC s_wndprocRadioBtn, hwnd, msg, wParam, lParam);
else
return 0;
}
+#endif