Changeset 2371 for trunk/src


Ignore:
Timestamp:
Jan 8, 2000, 3:15:38 PM (26 years ago)
Author:
sandervl
Message:

OSLibGetMsg bugfix + WM_QUIT translation fix

Location:
trunk/src/user32
Files:
2 added
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/Makefile

    r2269 r2371  
    1 # $Id: Makefile,v 1.54 1999-12-30 18:32:57 cbratschi Exp $
     1# $Id: Makefile,v 1.55 2000-01-08 14:15:05 sandervl Exp $
    22
    33#
     
    4343        win32wbasepos.obj oslibres.obj dummy.obj oslibmenu.obj dc.obj timer.obj \
    4444        caret.obj resource.obj winproc.obj text.obj oslibmsgtranslate.obj \
    45         windlgmsg.obj windlg.obj win32wdesktop.obj
     45        windlgmsg.obj windlg.obj win32wdesktop.obj pmtitlebar.obj
    4646
    4747
     
    131131pmwindow.obj:   pmwindow.cpp win32class.h win32wbase.h win32dlg.h pmwindow.h win32wndchild.h $(PDWIN32_INCLUDE)\wprocess.h oslibgdi.h oslibwin.h dc.h $(PDWIN32_INCLUDE)\win\thread.h
    132132pmframe.obj: pmframe.cpp win32class.h win32wbase.h pmframe.h win32wndchild.h
     133pmtitlebar.obj: pmtitlebar.cpp  win32class.h win32wbase.h win32dlg.h pmwindow.h $(PDWIN32_INCLUDE)\win\thread.h pmtitlebar.h oslibmsg.h
     134
    133135win32class.obj: win32class.cpp win32class.h win32wbase.h win32dlg.h gen_object.h $(PDWIN32_INCLUDE)\heapshared.h oslibwin.h win32wndchild.h $(PDWIN32_INCLUDE)\win\winproc.h
    134 win32wbase.obj:   win32wbase.cpp win32class.h win32wbase.h win32dlg.h gen_object.h $(PDWIN32_INCLUDE)\heapshared.h oslibwin.h win32wndchild.h  $(PDWIN32_INCLUDE)\winres.h oslibres.h win32wndhandle.h oslibdos.h dc.h pmframe.h win32wdesktop.h controls.h winmouse.h $(PDWIN32_INCLUDE)\win\winproc.h $(PDWIN32_INCLUDE)\win\hook.h oslibmsg.h
     136win32wbase.obj:   win32wbase.cpp win32class.h win32wbase.h win32dlg.h gen_object.h $(PDWIN32_INCLUDE)\heapshared.h oslibwin.h win32wndchild.h  $(PDWIN32_INCLUDE)\winres.h oslibres.h win32wndhandle.h oslibdos.h dc.h pmframe.h win32wdesktop.h controls.h winmouse.h $(PDWIN32_INCLUDE)\win\winproc.h $(PDWIN32_INCLUDE)\win\hook.h oslibmsg.h pmtitlebar.h
    135137win32wbasepos.obj: win32wbasepos.cpp win32class.h win32wbase.h win32dlg.h gen_object.h $(PDWIN32_INCLUDE)\heapshared.h oslibwin.h win32wndchild.h  $(PDWIN32_INCLUDE)\winres.h oslibres.h win32wndhandle.h oslibdos.h dc.h pmframe.h win32wdesktop.h
    136138win32wnd.obj:   win32wnd.cpp win32class.h win32wbase.h win32wnd.h win32dlg.h gen_object.h $(PDWIN32_INCLUDE)\heapshared.h oslibwin.h win32wndchild.h  $(PDWIN32_INCLUDE)\winres.h oslibres.h win32wndhandle.h oslibdos.h oslibmenu.h
  • trunk/src/user32/oslibmenu.cpp

    r1732 r2371  
    1 /* $Id: oslibmenu.cpp,v 1.5 1999-11-14 12:00:01 sandervl Exp $ */
     1/* $Id: oslibmenu.cpp,v 1.6 2000-01-08 14:15:06 sandervl Exp $ */
    22/*
    33 * Window Menu wrapper functions for OS/2
     
    104104//******************************************************************************
    105105//******************************************************************************
    106 
     106int OSLibGetMenuItemPos(HWND hMenu, int item)
     107{
     108   return (int)WinSendMsg(hMenu, MM_ITEMPOSITIONFROMID, MPFROM2SHORT(item, FALSE), (MPARAM)0);
     109}
     110//******************************************************************************
     111//******************************************************************************
  • trunk/src/user32/oslibmenu.h

    r1732 r2371  
    1 /* $Id: oslibmenu.h,v 1.4 1999-11-14 12:00:01 sandervl Exp $ */
     1/* $Id: oslibmenu.h,v 1.5 2000-01-08 14:15:06 sandervl Exp $ */
    22/*
    33 * Window Menu wrapper functions for OS/2
     
    2323int   OSLibGetMenuItemCount(HWND hMenu);
    2424BOOL  OSLibGetMenuItemRect(HWND hMenu, int index, LPRECT pRect);
     25int   OSLibGetMenuItemPos(HWND hMenu, int item);
    2526 
    2627#endif //__OSLIBGDI_H__
  • trunk/src/user32/oslibmsg.cpp

    r2314 r2371  
    1 /* $Id: oslibmsg.cpp,v 1.21 2000-01-03 22:53:16 sandervl Exp $ */
     1/* $Id: oslibmsg.cpp,v 1.22 2000-01-08 14:15:06 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    151151 APIRET rc;
    152152
    153   rc = WinPostQueueMsg(NULLHANDLE, WM_QUIT, (MPARAM)nExitCode, 0);
     153  rc = WinPostQueueMsg(NULLHANDLE, WM_QUIT, MPFROMLONG(nExitCode), 0);
    154154  dprintf(("WinPostQueueMsg %d returned %d", nExitCode, rc));
    155155}
     
    174174        memcpy(&os2msg, MsgThreadPtr, sizeof(QMSG));
    175175        MsgThreadPtr->time = -1;
    176         if(msg->hwnd) {
     176        if(os2msg.hwnd || os2msg.msg == WM_QUIT) {
    177177            thdb->nrOfMsgs = 1;
    178178            thdb->msgstate++; //odd -> next call to our PM window handler should dispatch the translated msg
    179179            memcpy(&thdb->msg, msg, sizeof(MSG));
    180         }
    181         return (LONG)WinDispatchMsg(thdb->hab, &os2msg);
     180            return (LONG)WinDispatchMsg(thdb->hab, &os2msg);
     181        }
     182        //SvL: Don't dispatch messages sent by PostThreadMessage (correct??)
     183        return 0;
     184
    182185  }
    183186  else {//is this allowed?
     
    225228        while(rc == FALSE);
    226229
    227         return rc;
     230    return (pMsg->message == WINWM_QUIT);
    228231  }
    229232  else
     
    236239    } while (eaten);
    237240  }
    238   if(rc) {
    239         OS2ToWinMsgTranslate((PVOID)thdb, &os2msg, pMsg, isUnicode, MSG_REMOVE);
    240         memcpy(MsgThreadPtr, &os2msg, sizeof(QMSG));
    241   }
     241  OS2ToWinMsgTranslate((PVOID)thdb, &os2msg, pMsg, isUnicode, MSG_REMOVE);
     242  memcpy(MsgThreadPtr, &os2msg, sizeof(QMSG));
    242243  return rc;
    243244}
     
    410411
    411412    return yyrc;
    412 } 
     413}
    413414//******************************************************************************
    414415BOOL OSLibPostThreadMessage(ULONG threadid, UINT msg, WPARAM wParam, LPARAM lParam, BOOL fUnicode)
  • trunk/src/user32/oslibmsgtranslate.cpp

    r2316 r2371  
    1 /* $Id: oslibmsgtranslate.cpp,v 1.8 2000-01-04 19:50:51 sandervl Exp $ */
     1/* $Id: oslibmsgtranslate.cpp,v 1.9 2000-01-08 14:15:06 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    108108  POSTMSG_PACKET  *packet;
    109109  THDB            *thdb = (THDB *)pThdb;
     110  BOOL             fIsFrameControl = FALSE, fTranslateFrameControlMsg = FALSE;
    110111  int i;
    111112
     113  if(os2Msg->msg == WM_COMMAND) {
     114    i = 0;
     115  }
    112116  memset(winMsg, 0, sizeof(MSG));
    113117  win32wnd = Win32BaseWindow::GetWindowFromOS2Handle(os2Msg->hwnd);
     118  if(win32wnd == 0) {//test if it's for frame controls
     119        HWND hwndFrame = OSLibWinIsFrameControl(os2Msg->hwnd);
     120        if(hwndFrame) {
     121            win32wnd = Win32BaseWindow::GetWindowFromOS2FrameHandle(hwndFrame);
     122            fIsFrameControl = (win32wnd != 0);
     123        }
     124        //NOTE: We only translate WM_PAINT/WM_HITTEST & mouse messages; the rest must not be seen by win32 apps
     125  }
    114126  //PostThreadMessage posts WIN32APP_POSTMSG msg without window handle
    115   if((win32wnd == 0 && os2Msg->msg != WM_CREATE && os2Msg->msg != WIN32APP_POSTMSG))
     127  if(win32wnd == 0 && (os2Msg->msg != WM_CREATE && os2Msg->msg != WM_QUIT && os2Msg->msg != WIN32APP_POSTMSG))
    116128  {
    117129        goto dummymessage; //not a win32 client window
     
    120132  winMsg->pt.x = os2Msg->ptl.x;
    121133  winMsg->pt.y = mapScreenY(os2Msg->ptl.y);
    122   if(win32wnd) //==0 for WM_CREATE
     134  if(win32wnd) //==0 for WM_CREATE/WM_QUIT
    123135    winMsg->hwnd = win32wnd->getWindowHandle();
    124136
     
    283295    case WM_BUTTON3UP:
    284296    case WM_BUTTON3DBLCLK:
     297        if(fIsFrameControl) {
     298            fTranslateFrameControlMsg = TRUE; //we want a win32 app to see this msg for a frame control
     299        }
     300
    285301        //WM_NC*BUTTON* is posted when the cursor is in a non-client area of the window
    286302        if(win32wnd->lastHitTestVal != HTCLIENT_W) {
     
    316332        ULONG keystate = 0, setcursormsg = WINWM_MOUSEMOVE;
    317333
     334        if(fIsFrameControl) {
     335            fTranslateFrameControlMsg = TRUE; //we want a win32 app to see this msg for a frame control
     336        }
     337
    318338        if(WinGetKeyState(HWND_DESKTOP, VK_BUTTON1) & 0x8000)
    319339            keystate |= MK_LBUTTON_W;
     
    333353          winMsg->wParam = (WPARAM)win32wnd->lastHitTestVal;
    334354          winMsg->lParam = MAKELONG(winMsg->pt.x,winMsg->pt.y);
    335         } else
     355        }
     356        else
    336357        {
    337358          winMsg->wParam = (WPARAM)keystate;
     
    558579    case WM_PAINT:
    559580    {
     581        if(fIsFrameControl) {
     582            fTranslateFrameControlMsg = TRUE; //we want a win32 app to see this msg for a frame control
     583            winMsg->message = WINWM_NCPAINT;
     584        }
     585        else
    560586        if(win32wnd->IsIconic()) {
    561587                winMsg->message = WINWM_PAINTICON;
     
    568594    {
    569595        OSLIBPOINT pt;
     596
     597        fTranslateFrameControlMsg = TRUE; //we want a win32 app to see this msg for a frame control
    570598
    571599        pt.x = (*(POINTS *)&os2Msg->mp1).x;
     
    616644        return FALSE;
    617645  }
     646  if(fIsFrameControl && !fTranslateFrameControlMsg) {
     647        winMsg->message = 0;
     648        winMsg->wParam  = 0;
     649        winMsg->lParam  = 0;
     650        return FALSE;
     651  }
    618652  return TRUE;
    619653}
  • trunk/src/user32/oslibwin.cpp

    r2257 r2371  
    1 /* $Id: oslibwin.cpp,v 1.56 1999-12-29 22:54:01 cbratschi Exp $ */
     1/* $Id: oslibwin.cpp,v 1.57 2000-01-08 14:15:06 sandervl Exp $ */
    22/*
    33 * Window API wrappers for OS/2
     
    7070  }
    7171  ULONG dwClientStyle;
    72 #if 1
    7372
    7473  BOOL TopLevel = hwndParent == HWND_DESKTOP;
     
    9897                                  NULL, dwClientStyle, 0, 0, 0, 0,
    9998                                  *hwndFrame, HWND_TOP, FID_CLIENT, NULL, NULL);
    100     if (hwndClient != NULLHANDLE)
    101       WinSendMsg (*hwndFrame, WM_UPDATEFRAME, 0, 0);
    102 
     99   
     100    if (hwndClient != NULLHANDLE) {
     101        WinSendMsg (*hwndFrame, WM_UPDATEFRAME, 0, 0);
     102    }
    103103    return hwndClient;
    104104  }
    105105  dprintf(("OSLibWinCreateWindow: (FRAME) WinCreateStdWindow failed (%x)", WinGetLastError(GetThreadHAB())));
    106106  return 0;
    107 #else
    108         dwClientStyle = dwWinStyle & ~(WS_TABSTOP | WS_GROUP);
    109 
    110         dwFrameStyle |= FCF_NOBYTEALIGN;
    111         if ((hwndParent == HWND_DESKTOP) && (dwFrameStyle & FCF_TITLEBAR))
    112                 dwFrameStyle |= FCF_TASKLIST | FCF_NOMOVEWITHOWNER;
    113 
    114         dwWinStyle   &= ~WS_CLIPCHILDREN;
    115 
    116         *hwndFrame = WinCreateStdWindow(hwndParent, dwWinStyle,
    117                                        &dwFrameStyle, WIN32_STDCLASS,
    118                                        "", dwClientStyle, 0, id, &hwndClient);
    119         if(*hwndFrame) {
    120                 if(pszName) {
    121                         WinSetWindowText(*hwndFrame, pszName);
    122                 }
    123                 return hwndClient;
    124         }
    125         dprintf(("OSLibWinCreateWindow: (FRAME) WinCreateStdWindow failed (%x)", WinGetLastError(GetThreadHAB())));
    126         return 0;
    127 #endif
    128107}
    129108//******************************************************************************
     
    216195    if(dwStyle & WS_THICKFRAME_W)
    217196          *OSFrameStyle |= FCF_SIZEBORDER;        //??
    218     if(dwStyle & WS_MINIMIZEBOX_W)
     197
     198    //SvL: We subclass the titlebar control when win32 look is selected
     199    if(fOS2Look) {
     200        if(dwStyle & WS_MINIMIZEBOX_W)
    219201          *OSFrameStyle |= FCF_MINBUTTON;
    220     if(dwStyle & WS_MAXIMIZEBOX_W)
     202        if(dwStyle & WS_MAXIMIZEBOX_W)
    221203          *OSFrameStyle |= FCF_MAXBUTTON;
     204    }
    222205
    223206    if(*dwExStyle & WS_EX_DLGMODALFRAME_W)
     
    11651148  return WinGetLastError(GetThreadHAB()) & 0xFFFF;
    11661149}
     1150//******************************************************************************
     1151//TODO: Include scroll bars?
     1152//******************************************************************************
     1153HWND OSLibWinIsFrameControl(HWND hwnd)
     1154{
     1155 HWND hwndFrame = WinQueryWindow(hwnd, QW_PARENT);
     1156   
     1157   if(hwnd == WinWindowFromID(hwndFrame, FID_TITLEBAR)) {
     1158        return hwndFrame;
     1159   }
     1160   if(hwnd == WinWindowFromID(hwndFrame, FID_MENU)) {
     1161        return hwndFrame;
     1162   }
     1163   return 0;
     1164}
     1165//******************************************************************************
     1166//******************************************************************************
  • trunk/src/user32/oslibwin.h

    r2257 r2371  
    1 /* $Id: oslibwin.h,v 1.31 1999-12-29 22:54:01 cbratschi Exp $ */
     1/* $Id: oslibwin.h,v 1.32 2000-01-08 14:15:06 sandervl Exp $ */
    22/*
    33 * Window API wrappers for OS/2
     
    288288ULONG OSLibWinGetLastError();
    289289
     290HWND  OSLibWinIsFrameControl(HWND hwnd);
     291 
    290292#endif //__OSLIBWIN_H__
  • trunk/src/user32/pmframe.cpp

    r2289 r2371  
    1 /* $Id: pmframe.cpp,v 1.32 2000-01-01 14:37:34 cbratschi Exp $ */
     1/* $Id: pmframe.cpp,v 1.33 2000-01-08 14:15:06 sandervl Exp $ */
    22/*
    33 * Win32 Frame Managment Code for OS/2
     
    665665    }
    666666    return HTBORDER_W;
    667   } else
     667  }
     668  else
    668669  {
    669670    if (child == WinWindowFromID(hwnd,FID_CLIENT)) return HTCLIENT_W;
  • trunk/src/user32/pmwindow.cpp

    r2257 r2371  
    1 /* $Id: pmwindow.cpp,v 1.74 1999-12-29 22:54:02 cbratschi Exp $ */
     1/* $Id: pmwindow.cpp,v 1.75 2000-01-08 14:15:07 sandervl Exp $ */
    22/*
    33 * Win32 Window Managment Code for OS/2
     
    3737#include "timer.h"
    3838#include <codepage.h>
     39#include <win\options.h>
    3940
    4041HMQ  hmq = 0;                             /* Message queue handle         */
     
    4546ULONG ScreenHeight = 0;
    4647ULONG ScreenBitsPerPel = 0;
     48BOOL  fOS2Look = TRUE;
    4749
    4850
     
    7173            return(FALSE);
    7274        }
    73     else
     75        else
    7476        {
    75         if(!hab) {
    76                 hab = WinQueryAnchorBlock(HWND_DESKTOP);
    77             dprintf(("WinQueryAnchorBlock returned %x", hab));
    78         }
    79         if(!hmq) {
    80             hmq = HMQ_CURRENT;
    81         }
    82         }
     77            if(!hab) {
     78                    hab = WinQueryAnchorBlock(HWND_DESKTOP);
     79                    dprintf(("WinQueryAnchorBlock returned %x", hab));
     80            }
     81            if(!hmq) {
     82                hmq = HMQ_CURRENT;
     83            }
     84    }
    8385  }
    8486  SetThreadHAB(hab);
     
    9395     (PSZ)WIN32_STDCLASS,               /* Window class name            */
    9496     (PFNWP)Win32WindowProc,            /* Address of window procedure  */
    95 //     CS_SIZEREDRAW | CS_HITTEST | CS_MOVENOTIFY,
    96      //CS_SIZEREDRAW | CS_HITTEST,
    9797     CS_HITTEST,
    9898     NROF_WIN32WNDBYTES)) {
     
    130130
    131131   dprintf(("InitPM: Desktop (%d,%d)", ScreenWidth, ScreenHeight));
     132
     133   fOS2Look = PROFILE_GetOdinIniInt(ODINCUSTOMIZATION,"OS2Look",1);
     134
    132135   return OSLibInitMsgQueue();
    133136} /* End of main */
  • trunk/src/user32/pmwindow.h

    r1818 r2371  
    1 /* $Id: pmwindow.h,v 1.5 1999-11-23 19:34:19 sandervl Exp $ */
     1/* $Id: pmwindow.h,v 1.6 2000-01-08 14:15:07 sandervl Exp $ */
    22/*
    33 * Win32 Window Managment Code for OS/2
     
    2222extern ULONG ScreenHeight;
    2323extern ULONG ScreenBitsPerPel;
     24extern BOOL  fOS2Look;
    2425
    2526#endif
  • trunk/src/user32/win32wbase.cpp

    r2294 r2371  
    1 /* $Id: win32wbase.cpp,v 1.132 2000-01-02 20:20:01 sandervl Exp $ */
     1/* $Id: win32wbase.cpp,v 1.133 2000-01-08 14:15:08 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    3838#include "dc.h"
    3939#include "pmframe.h"
     40#include "pmtitlebar.h"
    4041#include "win32wdesktop.h"
    4142#include "pmwindow.h"
     
    136137void Win32BaseWindow::Init()
    137138{
    138   isUnicode        = FALSE;
    139   fIsSubclassedOS2Wnd = FALSE;
    140   fFirstShow       = TRUE;
    141   fIsDialog        = FALSE;
    142   fIsModalDialogOwner = FALSE;
    143   OS2HwndModalDialog  = 0;
    144   fInternalMsg     = FALSE;
    145   fNoSizeMsg       = FALSE;
    146   fIsDestroyed     = FALSE;
     139  isUnicode            = FALSE;
     140  fIsSubclassedOS2Wnd  = FALSE;
     141  fFirstShow           = TRUE;
     142  fIsDialog            = FALSE;
     143  fIsModalDialogOwner  = FALSE;
     144  OS2HwndModalDialog   = 0;
     145  fInternalMsg         = FALSE;
     146  fNoSizeMsg           = FALSE;
     147  fIsDestroyed         = FALSE;
    147148  fDestroyWindowCalled = FALSE;
    148   fCreated         = FALSE;
    149   fTaskList        = FALSE;
    150   fParentDC        = FALSE;
     149  fCreated             = FALSE;
     150  fTaskList            = FALSE;
     151  fParentDC            = FALSE;
     152  fDefWndProcCalled    = FALSE;
    151153
    152154  windowNameA      = NULL;
     
    180182  contextHelpId    = 0;
    181183
    182   pOldFrameProc = NULL;
     184  pOldFrameProc    = NULL;
     185  pOldTitleBarProc = NULL;
     186  pOldMenuProc     = NULL;
     187
    183188  borderWidth   = 0;
    184189  borderHeight  = 0;
     
    639644  FrameGetScrollBarHandles(this,dwStyle & WS_HSCROLL,dwStyle & WS_VSCROLL);
    640645  subclassScrollBars(dwStyle & WS_HSCROLL,dwStyle & WS_VSCROLL);
     646
     647  FrameSubclassTitleBar(this);
    641648
    642649  fakeWinBase.hwndThis     = OS2Hwnd;
     
    10571064    }
    10581065
    1059     //TODO: hiword should be 0 if window enters menu mode (SDK docs)
    1060     SendInternalMessageA(WM_SETCURSOR, Win32Hwnd, MAKELONG(lastHitTestVal, msg->message));
     1066    //SvL: Correct??
     1067    if(msg->message != WM_NCMOUSEMOVE) {
     1068        //TODO: hiword should be 0 if window enters menu mode (SDK docs)
     1069        SendInternalMessageA(WM_SETCURSOR, Win32Hwnd, MAKELONG(lastHitTestVal, msg->message));
     1070    }
    10611071
    10621072    //translated message == WM_(NC)MOUSEMOVE
     
    15431553LRESULT Win32BaseWindow::DefWindowProcA(UINT Msg, WPARAM wParam, LPARAM lParam)
    15441554{
     1555    fDefWndProcCalled = TRUE;
    15451556    switch(Msg)
    15461557    {
    15471558    case WM_CLOSE:
    1548     dprintf(("DefWindowProcA: WM_CLOSE %x", getWindowHandle()));
     1559        dprintf(("DefWindowProcA: WM_CLOSE %x", getWindowHandle()));
    15491560        DestroyWindow();
    15501561        return 0;
     
    19361947LRESULT Win32BaseWindow::DefWindowProcW(UINT Msg, WPARAM wParam, LPARAM lParam)
    19371948{
     1949    fDefWndProcCalled = TRUE;
     1950
    19381951    switch(Msg)
    19391952    {
  • trunk/src/user32/win32wbase.h

    r2312 r2371  
    1 /* $Id: win32wbase.h,v 1.66 2000-01-03 21:37:17 sandervl Exp $ */
     1/* $Id: win32wbase.h,v 1.67 2000-01-08 14:15:09 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    113113         BOOL   getIgnoreHitTest()              { return fIgnoreHitTest; }
    114114         VOID   setIgnoreHitTest(BOOL ignore)   { fIgnoreHitTest = ignore; }
     115
     116         BOOL   getDefWndProcCalled()           { return fDefWndProcCalled; };
     117         void   clearDefWndProcCalled()         { fDefWndProcCalled = 0; };
    115118
    116119         DWORD  getWindowContextHelpId()        { return contextHelpId; };
     
    255258       PVOID getOldFrameProc() { return pOldFrameProc; };
    256259       VOID  setOldFrameProc(PVOID aOldFrameProc) { pOldFrameProc = aOldFrameProc; };
     260       PVOID getOldTitleBarProc() { return pOldTitleBarProc; };
     261       VOID  setOldTitleBarProc(PVOID aOldTitleBarProc) { pOldTitleBarProc = aOldTitleBarProc; };
     262       PVOID getOldMenuProc() { return pOldMenuProc; };
     263       VOID  setOldMenuProc(PVOID aOldMenuProc) { pOldMenuProc = aOldMenuProc; };
    257264       ULONG getBorderWidth() { return borderWidth; };
    258265       ULONG getBorderHeight() { return borderHeight; };
     
    314321        BOOL    fParentDC;
    315322
     323        BOOL    fDefWndProcCalled;      //set when DefWndProc called; used in PM window handlers to determine what to do next
     324
    316325        HRGN    hWindowRegion;
    317326
     
    319328        DWORD   dwProcessId;            //id of process that created this window
    320329        PVOID   pOldFrameProc;
     330        PVOID   pOldTitleBarProc;
     331        PVOID   pOldMenuProc;
    321332        ULONG   borderWidth;
    322333        ULONG   borderHeight;
Note: See TracChangeset for help on using the changeset viewer.