Changeset 6941 for trunk/src


Ignore:
Timestamp:
Oct 3, 2001, 8:37:53 PM (24 years ago)
Author:
sandervl
Message:

window tracking rewrite + getdcex change (clipping)

Location:
trunk/src/user32
Files:
1 added
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/Makefile

    r6918 r6941  
    1 # $Id: Makefile,v 1.95 2001-10-01 01:41:38 bird Exp $
     1# $Id: Makefile,v 1.96 2001-10-03 18:37:51 sandervl Exp $
    22
    33#
     
    1919#
    2020!ifndef WMAKE
    21 CDEFINES  = $(CDEFINES) -DINVERT -DCLIENTFRAME
     21CDEFINES  = $(CDEFINES) -DINVERT -DCLIENTFRAME -DCUSTOM_TRACKFRAME
    2222!else
    23 CDEFINES += -DINVERT -DCLIENTFRAME
     23CDEFINES += -DINVERT -DCLIENTFRAME -DCUSTOM_TRACKFRAME
    2424!endif
    2525
     
    6464$(OBJDIR)\winproc.obj \
    6565$(OBJDIR)\oslibmsg.obj \
     66$(OBJDIR)\wintrack.obj \
    6667$(OBJDIR)\hook.obj \
    6768$(OBJDIR)\win32wmdiclient.obj \
  • trunk/src/user32/dc.cpp

    r6412 r6941  
    1 /* $Id: dc.cpp,v 1.111 2001-07-30 12:02:15 sandervl Exp $ */
     1/* $Id: dc.cpp,v 1.112 2001-10-03 18:37:51 sandervl Exp $ */
    22
    33/*
     
    969969            int clipstyle = 0;
    970970            int clipwnd   = HWND_TOP;
    971             if(flags & (DCX_USESTYLE_W)) {
     971            if(flags & (DCX_USESTYLE_W))
     972            {
    972973                int style = wnd->getStyle();
    973974                if(style & WS_CLIPCHILDREN_W) {
     
    990991                clipstyle |= PSF_PARENTCLIP;
    991992            }
    992             if(clipstyle) {
     993            //Always call WinGetClipPS; WinGetPS takes window & class style
     994            //into account
     995//            if(clipstyle || !(flags & DCX_DEFAULTCLIP_W)) {
    993996                 dprintf2(("WinGetClipPS style %x", clipstyle));
    994997                 hps = WinGetClipPS(hWindow, clipwnd, clipstyle);
    995             }
    996             else hps = WinGetPS (hWindow);
     998//            }
     999//            else hps = WinGetPS (hWindow);
    9971000
    9981001            // default cp is OS/2 one: set to windows default (ODIN.INI)
     
    11111114        return GetDCEx( GetDesktopWindow(), 0, DCX_CACHE_W | DCX_WINDOW_W );
    11121115
    1113     return GetDCEx (hwnd, NULL, 0);
     1116    return GetDCEx (hwnd, NULL, DCX_USESTYLE_W);
    11141117}
    11151118//******************************************************************************
     
    11181121{
    11191122    if (!hwnd) hwnd = GetDesktopWindow();
    1120     return GetDCEx (hwnd, NULL, DCX_WINDOW_W);
     1123    return GetDCEx (hwnd, NULL, DCX_WINDOW_W | DCX_USESTYLE_W);
    11211124}
    11221125//******************************************************************************
  • trunk/src/user32/oslibmsg.cpp

    r6620 r6941  
    1 /* $Id: oslibmsg.cpp,v 1.43 2001-09-01 12:41:42 sandervl Exp $ */
     1/* $Id: oslibmsg.cpp,v 1.44 2001-10-03 18:37:51 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    8282
    8383   //TODO: Needs better translation!
    84    WM_CHAR,          WINWM_KEYDOWN,
     84   WM_CHAR,          WINWM_KEYDOWN,   //WM_KEYFIRST
    8585   WM_CHAR,          WINWM_KEYUP,
    8686   WM_CHAR,          WINWM_CHAR,
     
    9797   //
    9898   //todo: not always right if mouse msg turns out to be for the nonclient window
    99    WM_MOUSEMOVE,     WINWM_MOUSEMOVE,
     99   WM_MOUSEMOVE,     WINWM_MOUSEMOVE,    //WM_MOUSEFIRST
    100100   WM_BUTTON1DOWN,   WINWM_LBUTTONDOWN,
    101101   WM_BUTTON1UP,     WINWM_LBUTTONUP,
     
    107107   WM_BUTTON3UP,     WINWM_MBUTTONUP,
    108108   WM_BUTTON3DBLCLK, WINWM_MBUTTONDBLCLK,
    109 
     109   WM_BUTTON3DBLCLK, WINWM_MOUSEWHEEL,    //WM_MOUSELAST
    110110   999999999,        999999999,
    111111};
     
    270270        do {
    271271                eaten = FALSE;
    272                 rc = WinGetMsg(teb->o.odin.hab, &os2msg, filtermin, filtermax, 0);
     272                rc = WinGetMsg(teb->o.odin.hab, &os2msg, 0, filtermin, filtermax);
    273273                if (os2msg.msg == WM_TIMER)
    274274                    eaten = TIMER_HandleTimer(&os2msg);
  • trunk/src/user32/oslibmsg.h

    r5137 r6941  
    1 /* $Id: oslibmsg.h,v 1.14 2001-02-15 00:33:01 sandervl Exp $ */
     1/* $Id: oslibmsg.h,v 1.15 2001-10-03 18:37:52 sandervl Exp $ */
    22/*
    33 * Window message translation functions for OS/2
     
    165165#define WINWM_MBUTTONUP             0x0208
    166166#define WINWM_MBUTTONDBLCLK         0x0209
    167 #define WINWM_MOUSELAST             0x0209
     167#define WINWM_MOUSEWHEEL            0x020A
     168#define WINWM_MOUSELAST             0x020A
    168169#define WINWM_PARENTNOTIFY          0x0210
    169170#define WINWM_ENTERMENULOOP         0x0211
  • trunk/src/user32/pmwindow.cpp

    r6936 r6941  
    1 /* $Id: pmwindow.cpp,v 1.151 2001-10-03 13:50:36 sandervl Exp $ */
     1/* $Id: pmwindow.cpp,v 1.152 2001-10-03 18:37:52 sandervl Exp $ */
    22/*
    33 * Win32 Window Managment Code for OS/2
     
    14051405        dprintf(("PMFRAME: WM_TRACKFRAME %x %x %x", win32wnd->getWindowHandle(), mp1, mp2));
    14061406        if(fOS2Look) {//sent by titlebar control
     1407#ifdef CUSTOM_TRACKFRAME
     1408            Frame_SysCommandSizeMove(win32wnd, SC_MOVE_W);
     1409#else
    14071410            FrameTrackFrame(win32wnd, TF_MOVE);
     1411#endif
    14081412        }
    14091413        rc = 0;
     
    14561460    return WinDefWindowProc( hwnd, msg, mp1, mp2 );
    14571461}
     1462#ifndef CUSTOM_TRACKFRAME
    14581463//******************************************************************************
    14591464//TODO: Quickly moving a window two times doesn't force a repaint (1st time)
     
    15561561   return;
    15571562}
     1563#endif
    15581564//******************************************************************************
    15591565//******************************************************************************
  • trunk/src/user32/pmwindow.h

    r5951 r6941  
    1 /* $Id: pmwindow.h,v 1.11 2001-06-10 12:05:39 sandervl Exp $ */
     1/* $Id: pmwindow.h,v 1.12 2001-10-03 18:37:52 sandervl Exp $ */
    22/*
    33 * Win32 Window Managment Code for OS/2
     
    3232
    3333VOID FrameTrackFrame(Win32BaseWindow *win32wnd,DWORD flags);
     34void Frame_SysCommandSizeMove(Win32BaseWindow *win32wnd, WPARAM wParam);
    3435
    3536#endif
  • trunk/src/user32/win32wbasenonclient.cpp

    r6064 r6941  
    1 /* $Id: win32wbasenonclient.cpp,v 1.35 2001-06-22 07:32:48 sandervl Exp $ */
     1/* $Id: win32wbasenonclient.cpp,v 1.36 2001-10-03 18:37:53 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2 (non-client methods)
     
    12701270    switch (uCommand)
    12711271    {
    1272 
    12731272    case SC_SIZE:
    12741273    {
     1274#ifdef CUSTOM_TRACKFRAME
     1275      Frame_SysCommandSizeMove(this, wParam);
     1276#else
    12751277      DWORD flags;
    12761278
     
    13161318      }
    13171319      if (flags) FrameTrackFrame(this,flags);
     1320#endif
    13181321      break;
    13191322    }
    13201323
    13211324    case SC_MOVE:
     1325#ifdef CUSTOM_TRACKFRAME
     1326        Frame_SysCommandSizeMove(this, wParam);
     1327#else
    13221328        if (dwStyle & WS_MAXIMIZE) break;
    13231329        FrameTrackFrame(this,TFOS_MOVE);
     1330#endif
    13241331        break;
    13251332
Note: See TracChangeset for help on using the changeset viewer.