source: trunk/include/win/shell.h@ 10367

Last change on this file since 10367 was 7822, checked in by sandervl, 24 years ago

header updates

File size: 3.3 KB
Line 
1/*
2 * Shell Library definitions
3 */
4#ifndef __WINE_SHELL_H
5#define __WINE_SHELL_H
6
7#include "windef.h"
8
9#ifdef __cplusplus
10extern "C" {
11#endif /* defined(__cplusplus) */
12
13/****************************************************************************
14* shell 16
15*/
16extern void SHELL_LoadRegistry(void);
17extern void SHELL_SaveRegistry(void);
18extern void SHELL_Init(void);
19
20/* global functions used from shell32 */
21extern HINSTANCE SHELL_FindExecutable(LPCSTR,LPCSTR ,LPSTR);
22extern HGLOBAL WINAPI InternalExtractIcon(HINSTANCE,LPCSTR,UINT,WORD);
23
24/****************************************************************************
25* shell 32
26*/
27/****************************************************************************
28* common return codes
29*/
30#define SHELL_ERROR_SUCCESS 0L
31#define SHELL_ERROR_BADDB 1L
32#define SHELL_ERROR_BADKEY 2L
33#define SHELL_ERROR_CANTOPEN 3L
34#define SHELL_ERROR_CANTREAD 4L
35#define SHELL_ERROR_CANTWRITE 5L
36#define SHELL_ERROR_OUTOFMEMORY 6L
37#define SHELL_ERROR_INVALID_PARAMETER 7L
38#define SHELL_ERROR_ACCESS_DENIED 8L
39
40/****************************************************************************
41* common shell file structures
42*/
43/******************************
44* DRAG&DROP API
45*/
46typedef struct { /* structure for dropped files */
47 WORD wSize;
48 POINT16 ptMousePos;
49 BOOL16 fInNonClientArea;
50 /* memory block with filenames follows */
51} DROPFILESTRUCT16, *LPDROPFILESTRUCT16;
52
53typedef struct { /* structure for dropped files */
54 DWORD lSize;
55 POINT ptMousePos;
56 BOOL fInNonClientArea;
57 BOOL fWideChar;
58 /* memory block with filenames follows */
59} DROPFILESTRUCT, *LPDROPFILESTRUCT;
60
61
62/****************************************************************************
63* SHITEMID, ITEMIDLIST, PIDL API
64*/
65#include "pshpack1.h"
66typedef struct
67{ WORD cb; /* nr of bytes in this item */
68 BYTE abID[1];/* first byte in this item */
69} SHITEMID,*LPSHITEMID;
70typedef LPSHITEMID const LPCSHITEMID;
71
72typedef struct
73{ SHITEMID mkid; /* first itemid in list */
74} ITEMIDLIST,*LPITEMIDLIST,*LPCITEMIDLIST;
75#include "poppack.h"
76
77DWORD WINAPI SHGetPathFromIDListA (LPCITEMIDLIST pidl,LPSTR pszPath);
78DWORD WINAPI SHGetPathFromIDListW (LPCITEMIDLIST pidl,LPWSTR pszPath);
79#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
80
81
82/****************************************************************************
83* other functions
84*/
85
86#ifdef __WIN32OS2__
87/****************************************************************************
88* STRRET
89*/
90#define STRRET_WSTR 0x0000
91#define STRRET_OFFSETA 0x0001
92#define STRRET_CSTRA 0x0002
93#define STRRET_ASTR 0X0003
94#define STRRET_OFFSETW 0X0004
95#define STRRET_CSTRW 0X0005
96
97
98typedef struct _STRRET
99{ UINT uType; /* STRRET_xxx */
100 union
101 { LPWSTR pOleStr; /* OLESTR that will be freed */
102 LPSTR pStr;
103 UINT uOffset; /* OffsetINT32o SHITEMID (ANSI) */
104 char cStr[MAX_PATH]; /* Buffer to fill in */
105 WCHAR cStrW[MAX_PATH];
106 }u;
107} STRRET,*LPSTRRET;
108#endif
109
110#ifdef __cplusplus
111} /* extern "C" */
112#endif /* defined(__cplusplus) */
113
114#endif /* __WINE_SHELL_H */
Note: See TracBrowser for help on using the repository browser.