Implemented (Register|Get|Revoke)ActiveObject from the docs.
[wine.git] / include / clipboard.h
blobf6439fb0093e2cf865b68e05b576ed0ca222dd3d
1 #ifndef __WINE_CLIPBOARD_H
2 #define __WINE_CLIPBOARD_H
4 #include "windef.h"
6 struct tagWND;
8 typedef struct tagWINE_CLIPFORMAT {
9 WORD wFormatID;
10 WORD wRefCount;
11 WORD wDataPresent;
12 LPSTR Name;
13 HANDLE16 hData16;
14 HANDLE hDataSrc32;
15 HANDLE hData32;
16 ULONG drvData;
17 struct tagWINE_CLIPFORMAT *PrevFormat;
18 struct tagWINE_CLIPFORMAT *NextFormat;
19 } WINE_CLIPFORMAT, *LPWINE_CLIPFORMAT;
21 typedef struct tagCLIPBOARD_DRIVER
23 void (*pAcquire)(void); /* Acquire selection */
24 void (*pRelease)(void); /* Release selection */
25 void (*pSetData)(UINT); /* Set specified selection data */
26 BOOL (*pGetData)(UINT); /* Get specified selection data */
27 BOOL (*pIsFormatAvailable)(UINT); /* Check if specified format is available */
28 BOOL (*pRegisterFormat)(LPCSTR); /* Register a clipboard format */
29 BOOL (*pIsSelectionOwner)(void); /* Check if we own the selection */
30 void (*pResetOwner)(struct tagWND *, BOOL);
31 } CLIPBOARD_DRIVER;
33 extern CLIPBOARD_DRIVER *CLIPBOARD_Driver;
35 extern LPWINE_CLIPFORMAT CLIPBOARD_LookupFormat( WORD wID );
36 extern BOOL CLIPBOARD_IsCacheRendered();
37 extern void CLIPBOARD_DeleteRecord(LPWINE_CLIPFORMAT lpFormat, BOOL bChange);
38 extern void CLIPBOARD_EmptyCache( BOOL bChange );
39 extern BOOL CLIPBOARD_IsPresent(WORD wFormat);
40 extern char * CLIPBOARD_GetFormatName(UINT wFormat);
41 extern void CLIPBOARD_ReleaseOwner();
44 #endif /* __WINE_CLIPBOARD_H */