    '
    ' ----------------------------------------------------------------------------
    ' 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. NewCallAll.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.
    ' ----------------------------------------------------------------------------
    '