1 | /* $Id: oslibclipbrd.h,v 1.1 2004-04-13 14:17:01 sandervl Exp $ */
|
---|
2 | /** @file
|
---|
3 | *
|
---|
4 | * OSLIB for Clipboard
|
---|
5 | *
|
---|
6 | * InnoTek Systemberatung GmbH
|
---|
7 | *
|
---|
8 | * Copyright (c) 2004 InnoTek Systemberatung GmbH
|
---|
9 | * Author: knut st. osmundsen <bird-srcspam@anduin.net>
|
---|
10 | *
|
---|
11 | * All Rights Reserved
|
---|
12 | *
|
---|
13 | */
|
---|
14 |
|
---|
15 | #ifndef __oslibclipbrd_h__
|
---|
16 | #define __oslibclipbrd_h__
|
---|
17 |
|
---|
18 | /*
|
---|
19 | * Error codes.
|
---|
20 | */
|
---|
21 | #define OSLIB_PMERR_CALL_FROM_WRONG_THREAD 0x1009
|
---|
22 |
|
---|
23 |
|
---|
24 | /*
|
---|
25 | * Formats
|
---|
26 | */
|
---|
27 | #define OSLIB_CF_TEXT 1
|
---|
28 | #define OSLIB_CF_BITMAP 2
|
---|
29 | #define OSLIB_CF_DSPTEXT 3
|
---|
30 | #define OSLIB_CF_DSPBITMAP 4
|
---|
31 | #define OSLIB_CF_METAFILE 5
|
---|
32 | #define OSLIB_CF_DSPMETAFILE 6
|
---|
33 | #define OSLIB_CF_PALETTE 9
|
---|
34 | #define OSLIB_CF_MMPMFIRST 10
|
---|
35 | #define OSLIB_CF_MMPMLAST 19
|
---|
36 |
|
---|
37 | #define OSLIB_SZFMT_TEXT "#1"
|
---|
38 | #define OSLIB_SZFMT_BITMAP "#2"
|
---|
39 | #define OSLIB_SZFMT_DSPTEXT "#3"
|
---|
40 | #define OSLIB_SZFMT_DSPBITMAP "#4"
|
---|
41 | #define OSLIB_SZFMT_METAFILE "#5"
|
---|
42 | #define OSLIB_SZFMT_DSPMETAFILE "#6"
|
---|
43 | #define OSLIB_SZFMT_PALETTE "#9"
|
---|
44 | #define OSLIB_SZFMT_SYLK "Sylk"
|
---|
45 | #define OSLIB_SZFMT_DIF "Dif"
|
---|
46 | #define OSLIB_SZFMT_TIFF "Tiff"
|
---|
47 | #define OSLIB_SZFMT_OEMTEXT "OemText"
|
---|
48 | #define OSLIB_SZFMT_DIB "Dib"
|
---|
49 | #define OSLIB_SZFMT_OWNERDISPLAY "OwnerDisplay"
|
---|
50 | #define OSLIB_SZFMT_LINK "Link"
|
---|
51 | #define OSLIB_SZFMT_METAFILEPICT "MetaFilePict"
|
---|
52 | #define OSLIB_SZFMT_DSPMETAFILEPICT "DspMetaFilePict"
|
---|
53 | #define OSLIB_SZFMT_CPTEXT "Codepage Text"
|
---|
54 | #define OSLIB_SZFMT_WINMETAFILEPICT "Win_MetaFilePict"
|
---|
55 | #define OSLIB_SZFMT_WINDSPMETAFILEPICT "Win_DspMetaFilePict"
|
---|
56 | #define OSLIB_SZFMT_WINENHMETAFILE "Win_EnhMetaFile"
|
---|
57 | #define OSLIB_SZFMT_WINDSPENHMETAFILE "Win_DspEnhMetaFile"
|
---|
58 |
|
---|
59 | #pragma pack(1)
|
---|
60 | typedef struct _OSLIB_BITMAPINFOHEADER2
|
---|
61 | {
|
---|
62 | DWORD cbFix;
|
---|
63 | DWORD cx;
|
---|
64 | DWORD cy;
|
---|
65 | WORD cPlanes;
|
---|
66 | WORD cBitCount;
|
---|
67 | DWORD ulCompression;
|
---|
68 | DWORD cbImage;
|
---|
69 | DWORD cxResolution;
|
---|
70 | DWORD cyResolution;
|
---|
71 | DWORD cclrUsed;
|
---|
72 | DWORD cclrImportant;
|
---|
73 | WORD usUnits;
|
---|
74 | WORD usReserved;
|
---|
75 | WORD usRecording;
|
---|
76 | WORD usRendering;
|
---|
77 | DWORD cSize1;
|
---|
78 | DWORD cSize2;
|
---|
79 | DWORD ulColorEncoding;
|
---|
80 | DWORD ulIdentifier;
|
---|
81 | } OSLIB_BITMAPINFOHEADER2, *POSLIB_BITMAPINFOHEADER2;
|
---|
82 | #pragma pack()
|
---|
83 |
|
---|
84 | #define OSLIB_CFI_OWNERFREE 0x0001
|
---|
85 | #define OSLIB_CFI_OWNERDISPLAY 0x0002
|
---|
86 | #define OSLIB_CFI_HANDLE 0x0200
|
---|
87 | #define OSLIB_CFI_POINTER 0x0400
|
---|
88 |
|
---|
89 | #define OSLIB_PAG_READ 0x0001
|
---|
90 | #define OSLIB_PAG_WRITE 0x0002
|
---|
91 | #define OSLIB_PAG_EXECUTE 0x0004
|
---|
92 | #define OSLIB_PAG_GUARD 0x0008
|
---|
93 | #define OSLIB_PAG_COMMIT 0x0010
|
---|
94 | #define OSLIB_PAG_DECOMMIT 0x0020
|
---|
95 | #define OSLIB_OBJ_TILE 0x0040
|
---|
96 | #define OSLIB_OBJ_PROTECTED 0x0080
|
---|
97 | #define OSLIB_OBJ_GETTABLE 0x0100
|
---|
98 | #define OSLIB_OBJ_GIVEABLE 0x0200
|
---|
99 | #define OSLIB_PAG_DEFAULT 0x0400
|
---|
100 | #define OSLIB_PAG_SHARED 0x2000
|
---|
101 | #define OSLIB_PAG_FREE 0x4000
|
---|
102 | #define OSLIB_PAG_BASE 0x00010000
|
---|
103 |
|
---|
104 |
|
---|
105 | HANDLE OSLibClipboardPMBitmapDuplicate(HANDLE hbmp);
|
---|
106 | void OSLibClipboardPMBitmapDelete(HANDLE hbmp);
|
---|
107 | HANDLE OSLibClipboardPMPaletteDuplicate(HANDLE hpal);
|
---|
108 | void OSLibClipboardPMPaletteDelete(HANDLE hpal);
|
---|
109 |
|
---|
110 | BOOL OSLib_OpenClipbrd(HANDLE hab, HWND hwndOpenWindow);
|
---|
111 | HWND OSLibWin32QueryOpenClipbrdWindow(void);
|
---|
112 | BOOL OSLibWinEmptyClipbrd(HANDLE hab);
|
---|
113 | BOOL OSLibWinSetClipbrdOwner(HANDLE hab, HWND hwndOwner);
|
---|
114 | HWND OSLibWinQueryClipbrdOwner(HANDLE hab);
|
---|
115 | HWND OSLibWin32QueryClipbrdViewerChain(void);
|
---|
116 | BOOL OSLibWin32AddClipbrdViewer(HWND hwndNewViewer);
|
---|
117 | BOOL OSLibWin32RemoveClipbrdViewer(HWND hwndRemove);
|
---|
118 | BOOL OSLibWinQueryClipbrdFmtInfo(HANDLE hab, ULONG ulFormat, PULONG pfl);
|
---|
119 | BOOL OSLibWinSetClipbrdData(HANDLE hab, ULONG ulData, ULONG ulFormat, ULONG ulFlags);
|
---|
120 | ULONG OSLibWinQueryClipbrdData(HANDLE hab, ULONG ulFormat);
|
---|
121 | BOOL OSLibWinCloseClipbrd(HANDLE hab);
|
---|
122 |
|
---|
123 | ULONG OSLibWinEnumClipbrdFmts(HANDLE hab, ULONG b);
|
---|
124 | ULONG OSLibWinAddAtom(HANDLE hAtomTable, const char *pszAtomName);
|
---|
125 | ULONG OSLibWinQueryAtomName(HANDLE hAtomTable, ULONG ulFormat, char *pszNameBuf, ULONG cchNameBuf);
|
---|
126 | HANDLE OSLibWinQuerySystemAtomTable(void);
|
---|
127 |
|
---|
128 | ULONG OSLibWinSetErrorInfo(ULONG ulError, ULONG ulFlags, ...);
|
---|
129 |
|
---|
130 | ULONG OSLibDosAllocSharedMem(void **pv, const char *psz, ULONG cb, ULONG flFlags);
|
---|
131 | ULONG OSLibDosFreeMem(void *);
|
---|
132 | ULONG OSLibDosQueryMem(PVOID pvAddr, PULONG pcb, PULONG pfl);
|
---|
133 |
|
---|
134 | #endif
|
---|