' ' ---------------------------------------------------------------------------- ' SET NEW WINDOW PROCEDURE MANY CALLBACK TURN AROUND by Jacques ' ' NO INDEX, AS MANY NEW WNDPROC AS YOU WANT, MUCH EASIERS ' ' Thanks to Warriant for relaunching the subject ' August 13th, 2006 ' ---------------------------------------------------------------------------- ' Note: ' NewWndProc.Inc is fully compatible with all the CallBack_X.Inc ' You can include any or all of them in your code. CallBackAll.Inc ' Include all the CallBack_X.Inc and NewWndProc.Inc ' ---------------------------------------------------------------------------- ' ' NewWndProc.Inc is designed to ease RapidQ Component SubClassing, what, 95% ' of the time, CallBacks do. ' ' Example: ' ------- ' $Include "NewWndProc.inc" '' ' CREATE RichEdit1 AS QRICHEDIT ' Height = 200 ' Align = alTop ' END CREATE '' ' DefInt OldWndProc1 '' ' FUNCTION RichEditCallback1(hWnd AS LONG, uMsg AS LONG, wParam AS LONG, lParam AS LONG) As Long ' ' Do Stuff ' Result = CallWindowProc(OldWndProc1, hWnd, uMsg, wParam, lParam) ' END FUNCTION ' ' ---- Subclassing process ---- ' DefInt iTmpBind ' Bind iTmpBind To RichEditCallback1 ' OldWndProc1 = SetNewWndProc (RichEdit1.Handle, iTmpBind) ' ' ----------------------------- ' ' Note: Include are fully protected from double definitions . You can include ' all these includes and do it twice, RC.EXE will report no error. ' ---------------------------------------------------------------------------- '