Ignore:
Timestamp:
Mar 20, 2003, 2:20:46 PM (22 years ago)
Author:
sandervl
Message:

Changes for fake windows. Moved them into a seperate C++ class and overload some methods to correct the behaviour

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/win32wbase.cpp

    r9871 r9930  
    1 /* $Id: win32wbase.cpp,v 1.361 2003-02-28 09:56:00 sandervl Exp $ */
     1/* $Id: win32wbase.cpp,v 1.362 2003-03-20 13:20:45 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    9292//******************************************************************************
    9393//******************************************************************************
    94 Win32BaseWindow::Win32BaseWindow(HWND hwndOS2, ATOM classAtom)
    95                      : GenericObject(&windows, &critsect), ChildWindow(&critsect)
    96 {
    97     Init();
    98     OS2Hwnd = OS2HwndFrame = hwndOS2;
    99 
    100     /* Find the window class */
    101     windowClass = Win32WndClass::FindClass(NULL, (LPSTR)classAtom);
    102     if (!windowClass)
    103     {
    104         char buffer[32];
    105         GlobalGetAtomNameA( classAtom, buffer, sizeof(buffer) );
    106         dprintf(("Bad class '%s'", buffer ));
    107         DebugInt3();
    108     }
    109 
    110     //Allocate window words
    111     nrUserWindowBytes = windowClass->getExtraWndBytes();
    112     if(nrUserWindowBytes) {
    113         userWindowBytes = (char *)_smalloc(nrUserWindowBytes);
    114         memset(userWindowBytes, 0, nrUserWindowBytes);
    115     }
    116 
    117     WINPROC_SetProc((HWINDOWPROC *)&win32wndproc, windowClass->getWindowProc((isUnicode) ? WNDPROC_UNICODE : WNDPROC_ASCII), WINPROC_GetProcType(windowClass->getWindowProc((isUnicode) ? WNDPROC_UNICODE : WNDPROC_ASCII)), WIN_PROC_WINDOW);
    118     hInstance  = NULL;
    119     dwStyle    = WS_VISIBLE;
    120     dwOldStyle = dwStyle;
    121     dwExStyle  = 0;
    122 
    123     //We pretend this window has no parent and won't change size
    124     //(dangerous assumption!!)
    125     OSLibWinQueryWindowClientRect(OS2Hwnd, &rectClient);
    126     OSLibQueryWindowRectAbsolute (OS2Hwnd, &rectWindow);
    127 
    128     fFakeWindow = TRUE;
    129 }
    130 //******************************************************************************
    131 //******************************************************************************
    13294Win32BaseWindow::Win32BaseWindow(CREATESTRUCTA *lpCreateStructA, ATOM classAtom, BOOL isUnicode)
    13395                     : GenericObject(&windows, &critsect), ChildWindow(&critsect)
     
    156118  fVisibleRegionChanged = FALSE;
    157119  fEraseBkgndFlag  = TRUE;
    158   fFakeWindow      = FALSE;
    159120  fIsDragDropActive= FALSE;
    160121
     
    232193  lpVisRgnNotifyProc  = NULL;
    233194  dwVisRgnNotifyParam = NULL;
     195
     196  pfnOldPMWndProc     = NULL;
    234197}
    235198//******************************************************************************
     
    35093472    dprintf(("GetWindow %x %d returned %x", getWindowHandle(), uCmd, hwndRelated));
    35103473    return hwndRelated;
     3474}
     3475//******************************************************************************
     3476//******************************************************************************
     3477PRECT Win32BaseWindow::getWindowRect()
     3478{
     3479    return &rectWindow;
    35113480}
    35123481//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.