Changeset 4146 for trunk/src/ddraw/OS2CLIPPER.CPP
- Timestamp:
- Sep 2, 2000, 10:27:05 AM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/ddraw/OS2CLIPPER.CPP
r2174 r4146 1 /* $Id: OS2CLIPPER.CPP,v 1. 9 1999-12-21 01:28:15 hughExp $ */1 /* $Id: OS2CLIPPER.CPP,v 1.10 2000-09-02 08:27:05 sandervl Exp $ */ 2 2 3 3 /* … … 20 20 #include <misc.h> 21 21 #include <winerror.h> 22 #include <winuser.h> 22 23 23 24 //****************************************************************************** … … 41 42 lpDraw->Vtbl.AddRef(lpDraw); 42 43 hDive = lpDirectDraw->GetDiveInstance(); 44 windowRect.left = windowRect.right = windowRect.top = windowRect.bottom = 0; 43 45 } 44 46 //****************************************************************************** … … 50 52 //****************************************************************************** 51 53 //****************************************************************************** 52 HRESULT __stdcallClipQueryInterface(THIS This, REFIID riid, LPVOID FAR * ppvObj)54 HRESULT WIN32API ClipQueryInterface(THIS This, REFIID riid, LPVOID FAR * ppvObj) 53 55 { 54 #ifdef DEBUG 55 dprintf(("DDRAW: ClipQueryInterface\n")); 56 #endif 56 dprintf(("DDRAW: ClipQueryInterface\n")); 57 57 58 58 *ppvObj = NULL; … … 70 70 //****************************************************************************** 71 71 //****************************************************************************** 72 ULONG __stdcallClipAddRef(THIS This)72 ULONG WIN32API ClipAddRef(THIS This) 73 73 { 74 74 OS2IDirectDrawClipper *me = (OS2IDirectDrawClipper *)This; 75 75 76 #ifdef DEBUG 77 dprintf(("DDRAW: OS2IDirectDrawClipper::AddRef %d\n", me->Referenced+1)); 78 #endif 76 dprintf(("DDRAW: OS2IDirectDrawClipper::AddRef %d\n", me->Referenced+1)); 79 77 80 78 return ++me->Referenced; … … 82 80 //****************************************************************************** 83 81 //****************************************************************************** 84 ULONG __stdcallClipRelease(THIS This)82 ULONG WIN32API ClipRelease(THIS This) 85 83 { 86 84 OS2IDirectDrawClipper *me = (OS2IDirectDrawClipper *)This; 87 85 88 #ifdef DEBUG 89 dprintf(("DDRAW: OS2IDirectDrawClipper::Release %d\n", me->Referenced-1)); 90 #endif 86 dprintf(("DDRAW: OS2IDirectDrawClipper::Release %d", me->Referenced-1)); 91 87 92 88 if(me->Referenced) … … 106 102 //****************************************************************************** 107 103 //****************************************************************************** 108 HRESULT __stdcall ClipGetClipList(THIS, LPRECT, LPRGNDATA, LPDWORD) 104 HRESULT WIN32API ClipGetClipList(THIS This, LPRECT lpRect, LPRGNDATA lpClipList, 105 LPDWORD lpdwSize) 109 106 { 110 #ifdef DEBUG 111 dprintf(("DDRAW: ClipGetClipList\n")); 112 #endif 107 OS2IDirectDrawClipper *me = (OS2IDirectDrawClipper *)This; 108 HRESULT rc = DD_OK; 113 109 114 return(DD_OK); 110 dprintf(("DDRAW: ClipGetClipList %x %x %x %x", This, lpRect, lpClipList, lpdwSize)); 111 112 if(!lpdwSize) { 113 return DDERR_INVALIDPARAMS; 114 } 115 if(me->clipWindow) 116 { 117 HRGN hRgn, hRgn1; 118 HDC hdc; 119 int bufneeded; 120 121 hRgn = CreateRectRgn(0, 0, 1, 1); 122 hdc = GetDC(me->clipWindow); 123 if(GetClipRgn(hdc, hRgn)) { 124 if(lpRect) { 125 hRgn1 = CreateRectRgnIndirect(lpRect); 126 CombineRgn(hRgn, hRgn, hRgn1, RGN_AND); 127 DeleteObject(hRgn1); 128 } 129 bufneeded = GetRegionData(hRgn, *lpdwSize, lpClipList); 130 if(bufneeded > *lpdwSize) { 131 rc = DDERR_REGIONTOOSMALL; 132 } 133 } 134 else rc = DDERR_NOCLIPLIST; 135 DeleteObject(hRgn); 136 ReleaseDC(me->clipWindow, hdc); 137 } 138 else { //todo!! 139 dprintf(("ClipGetClipList not complete if not associated with window!")); 140 rc = DDERR_NOCLIPLIST; 141 } 142 return rc; 115 143 } 116 144 //****************************************************************************** 117 145 //****************************************************************************** 118 HRESULT __stdcallClipGetHWnd(THIS This, HWND FAR *pHwnd)146 HRESULT WIN32API ClipGetHWnd(THIS This, HWND FAR *pHwnd) 119 147 { 120 148 OS2IDirectDrawClipper *me = (OS2IDirectDrawClipper *)This; 121 149 122 #ifdef DEBUG 123 dprintf(("DDRAW: ClipGetHWnd\n")); 124 #endif 150 dprintf(("DDRAW: ClipGetHWnd %x %x", This, me->clipWindow)); 125 151 126 152 *pHwnd = me->clipWindow; … … 129 155 //****************************************************************************** 130 156 //****************************************************************************** 131 HRESULT __stdcall ClipInitialize(THIS, LPDIRECTDRAW, DWORD)157 HRESULT WIN32API ClipInitialize(THIS This, LPDIRECTDRAW lpDD, DWORD dwFlags) 132 158 { 133 #ifdef DEBUG 134 dprintf(("DDRAW: ClipInitialize\n")); 135 #endif 159 dprintf(("DDRAW: ClipInitialize %x %x %x", This, lpDD, dwFlags)); 136 160 137 161 return(DDERR_ALREADYINITIALIZED); // Init is done during creation see M$ Doc … … 139 163 //****************************************************************************** 140 164 //****************************************************************************** 141 HRESULT __stdcall ClipIsClipListChanged(THIS, BOOL FAR *)165 HRESULT WIN32API ClipIsClipListChanged(THIS This, BOOL *lpbChanged) 142 166 { 143 #ifdef DEBUG 144 dprintf(("DDRAW: ClipIsClipListChanged\n")); 145 #endif 167 dprintf(("DDRAW: ClipIsClipListChanged %x %x", This, lpbChanged)); 146 168 147 169 return(DD_OK); … … 149 171 //****************************************************************************** 150 172 //****************************************************************************** 151 HRESULT __stdcall ClipSetClipList(THIS, LPRGNDATA,DWORD)173 HRESULT WIN32API ClipSetClipList(THIS This, LPRGNDATA lpClipList, DWORD lpdwSize) 152 174 { 153 #ifdef DEBUG 154 dprintf(("DDRAW: ClipSetClipList\n")); 155 #endif 175 OS2IDirectDrawClipper *me = (OS2IDirectDrawClipper *)This; 156 176 177 dprintf(("DDRAW: ClipSetClipList %x %x %x", This, lpClipList, lpdwSize)); 178 179 if(me->clipWindow) { 180 return DDERR_CLIPPERISUSINGHWND; 181 } 157 182 return(DD_OK); 158 183 } … … 160 185 //DWORD param not used in DirectX 3 161 186 //****************************************************************************** 162 HRESULT __stdcallClipSetHWnd(THIS This, DWORD reserved, HWND hwnd)187 HRESULT WIN32API ClipSetHWnd(THIS This, DWORD reserved, HWND hwnd) 163 188 { 164 189 OS2IDirectDrawClipper *me = (OS2IDirectDrawClipper *)This; 165 190 166 #ifdef DEBUG 167 dprintf(("DDRAW: ClipSetHWnd\n")); 168 #endif 191 dprintf(("DDRAW: ClipSetHWnd %x %x %x", This, reserved, hwnd)); 169 192 170 193 me->clipWindow = hwnd; 194 GetClientRect(hwnd, &me->windowRect); 195 171 196 return(DD_OK); 172 197 }
Note:
See TracChangeset
for help on using the changeset viewer.