source: trunk/src/user32/oslibclipbrd.h@ 22012

Last change on this file since 22012 was 10578, checked in by sandervl, 21 years ago

KSO: clipboard rewrite

File size: 4.6 KB
Line 
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)
60typedef 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
105HANDLE OSLibClipboardPMBitmapDuplicate(HANDLE hbmp);
106void OSLibClipboardPMBitmapDelete(HANDLE hbmp);
107HANDLE OSLibClipboardPMPaletteDuplicate(HANDLE hpal);
108void OSLibClipboardPMPaletteDelete(HANDLE hpal);
109
110BOOL OSLib_OpenClipbrd(HANDLE hab, HWND hwndOpenWindow);
111HWND OSLibWin32QueryOpenClipbrdWindow(void);
112BOOL OSLibWinEmptyClipbrd(HANDLE hab);
113BOOL OSLibWinSetClipbrdOwner(HANDLE hab, HWND hwndOwner);
114HWND OSLibWinQueryClipbrdOwner(HANDLE hab);
115HWND OSLibWin32QueryClipbrdViewerChain(void);
116BOOL OSLibWin32AddClipbrdViewer(HWND hwndNewViewer);
117BOOL OSLibWin32RemoveClipbrdViewer(HWND hwndRemove);
118BOOL OSLibWinQueryClipbrdFmtInfo(HANDLE hab, ULONG ulFormat, PULONG pfl);
119BOOL OSLibWinSetClipbrdData(HANDLE hab, ULONG ulData, ULONG ulFormat, ULONG ulFlags);
120ULONG OSLibWinQueryClipbrdData(HANDLE hab, ULONG ulFormat);
121BOOL OSLibWinCloseClipbrd(HANDLE hab);
122
123ULONG OSLibWinEnumClipbrdFmts(HANDLE hab, ULONG b);
124ULONG OSLibWinAddAtom(HANDLE hAtomTable, const char *pszAtomName);
125ULONG OSLibWinQueryAtomName(HANDLE hAtomTable, ULONG ulFormat, char *pszNameBuf, ULONG cchNameBuf);
126HANDLE OSLibWinQuerySystemAtomTable(void);
127
128ULONG OSLibWinSetErrorInfo(ULONG ulError, ULONG ulFlags, ...);
129
130ULONG OSLibDosAllocSharedMem(void **pv, const char *psz, ULONG cb, ULONG flFlags);
131ULONG OSLibDosFreeMem(void *);
132ULONG OSLibDosQueryMem(PVOID pvAddr, PULONG pcb, PULONG pfl);
133
134#endif
Note: See TracBrowser for help on using the repository browser.