source: trunk/src/ddraw/OS2CLIPPER.H@ 6502

Last change on this file since 6502 was 5820, checked in by phaller, 24 years ago

Implemented DirectDrawCreateClipper

File size: 2.2 KB
Line 
1/* $Id: OS2CLIPPER.H,v 1.8 2001-05-28 17:17:12 phaller Exp $ */
2
3/*
4 * DX clipper class definition
5 *
6 * Copyright 1998 Sander va Leeuwen
7 *
8 * Project Odin Software License can be found in LICENSE.TXT
9 *
10 */
11#ifndef __OS2CLIPPER_H__
12#define __OS2CLIPPER_H__
13
14#include "divewrap.h"
15#define FAR
16#undef THIS
17#define THIS IDirectDrawClipper*
18class OS2IDirectDrawClipper
19{
20 public:
21 //this one has to go first!
22 IDirectDrawClipperVtbl *lpVtbl;
23 IDirectDrawClipperVtbl Vtbl;
24
25 OS2IDirectDrawClipper(OS2IDirectDraw *lpDirectDraw);
26 OS2IDirectDrawClipper(void);
27 ~OS2IDirectDrawClipper();
28
29 int Referenced;
30 inline HRESULT GetLastError() { return lastError; };
31 private:
32
33 protected:
34 HRESULT lastError;
35 OS2IDirectDraw *lpDraw;
36 HDIVE hDive;
37 HWND clipWindow;
38 RECT windowRect;
39
40 // Linked list management
41 OS2IDirectDrawClipper* next; // Next OS2IDirectDraw
42 static OS2IDirectDrawClipper* ddraw; // List of OS2IDirectDraw
43
44 friend HRESULT __stdcall ClipQueryInterface(THIS, REFIID riid, LPVOID FAR * ppvObj);
45 friend ULONG __stdcall ClipAddRef(THIS);
46 friend ULONG __stdcall ClipRelease(THIS);
47 friend HRESULT __stdcall ClipGetClipList(THIS, LPRECT, LPRGNDATA, LPDWORD);
48 friend HRESULT __stdcall ClipGetHWnd(THIS, HWND FAR *);
49 friend HRESULT __stdcall ClipInitialize(THIS, LPDIRECTDRAW, DWORD);
50 friend HRESULT __stdcall ClipIsClipListChanged(THIS, BOOL FAR *);
51 friend HRESULT __stdcall ClipSetClipList(THIS, LPRGNDATA,DWORD);
52 friend HRESULT __stdcall ClipSetHWnd(THIS, DWORD, HWND );
53};
54
55HRESULT __stdcall ClipQueryInterface(THIS, REFIID riid, LPVOID FAR * ppvObj);
56ULONG __stdcall ClipAddRef(THIS);
57ULONG __stdcall ClipRelease(THIS);
58HRESULT __stdcall ClipGetClipList(THIS, LPRECT, LPRGNDATA, LPDWORD);
59HRESULT __stdcall ClipGetHWnd(THIS, HWND FAR *);
60HRESULT __stdcall ClipInitialize(THIS, LPDIRECTDRAW, DWORD);
61HRESULT __stdcall ClipIsClipListChanged(THIS, BOOL FAR *);
62HRESULT __stdcall ClipSetClipList(THIS, LPRGNDATA,DWORD);
63HRESULT __stdcall ClipSetHWnd(THIS, DWORD, HWND );
64
65#endif
Note: See TracBrowser for help on using the repository browser.