From 28613d3d0eab9295c3f80d9a7d91306d0530d338 Mon Sep 17 00:00:00 2001 From: Juergen Schmied Date: Thu, 22 Apr 1999 10:11:04 +0000 Subject: [PATCH] Moved stuff to the right place. --- dlls/shell32/brsfolder.c | 2 +- dlls/shell32/iconcache.c | 4 +- dlls/shell32/regstream.c | 2 - dlls/shell32/shell32_main.c | 72 +++++------ dlls/shell32/shellord.c | 1 + include/shell.h | 151 ---------------------- include/shellapi.h | 246 +++++++++++++++++++++++++++++++++++- include/shlobj.h | 14 -- 8 files changed, 280 insertions(+), 212 deletions(-) diff --git a/dlls/shell32/brsfolder.c b/dlls/shell32/brsfolder.c index 40f8db56ad3..ebc24411607 100644 --- a/dlls/shell32/brsfolder.c +++ b/dlls/shell32/brsfolder.c @@ -19,9 +19,9 @@ #include "wine/obj_enumidlist.h" #include "wine/obj_shellfolder.h" -#include "shell.h" #include "pidl.h" #include "shell32_main.h" +#include "shellapi.h" DEFAULT_DEBUG_CHANNEL(shell) diff --git a/dlls/shell32/iconcache.c b/dlls/shell32/iconcache.c index b7118e63f4c..b01197280c3 100644 --- a/dlls/shell32/iconcache.c +++ b/dlls/shell32/iconcache.c @@ -12,7 +12,9 @@ #include "debug.h" #include "sysmetrics.h" #include "winversion.h" -#include "shell.h" + + +#include "shellapi.h" #include "shlobj.h" #include "pidl.h" #include "shell32_main.h" diff --git a/dlls/shell32/regstream.c b/dlls/shell32/regstream.c index 5e3050cd22a..67aeb8a7b0c 100644 --- a/dlls/shell32/regstream.c +++ b/dlls/shell32/regstream.c @@ -10,8 +10,6 @@ #include "winerror.h" #include "winreg.h" -#include "shell.h" -#include "pidl.h" #include "shell32_main.h" DEFAULT_DEBUG_CHANNEL(shell) diff --git a/dlls/shell32/shell32_main.c b/dlls/shell32/shell32_main.c index ed37acb9702..6bb5b924cbc 100644 --- a/dlls/shell32/shell32_main.c +++ b/dlls/shell32/shell32_main.c @@ -19,7 +19,6 @@ #include "authors.h" #include "winversion.h" -#include "shell.h" #include "shellapi.h" #include "pidl.h" #include "shlobj.h" @@ -34,44 +33,45 @@ DECLARE_DEBUG_CHANNEL(shell) * CommandLineToArgvW [SHELL32.7] */ LPWSTR* WINAPI CommandLineToArgvW(LPWSTR cmdline,LPDWORD numargs) -{ LPWSTR *argv,s,t; +{ LPWSTR *argv,s,t; int i; - TRACE(shell,"\n"); + TRACE(shell,"\n"); - /* to get writeable copy */ + /* to get writeable copy */ cmdline = HEAP_strdupW( GetProcessHeap(), 0, cmdline); s=cmdline;i=0; - while (*s) - { /* space */ - if (*s==0x0020) - { i++; - s++; - while (*s && *s==0x0020) - s++; - continue; - } - s++; + while (*s) + { /* space */ + if (*s==0x0020) + { i++; + s++; + while (*s && *s==0x0020) + s++; + continue; + } + s++; } argv=(LPWSTR*)HeapAlloc( GetProcessHeap(), 0, sizeof(LPWSTR)*(i+1) ); s=t=cmdline; i=0; - while (*s) - { if (*s==0x0020) - { *s=0; - argv[i++]=HEAP_strdupW( GetProcessHeap(), 0, t ); - *s=0x0020; - while (*s && *s==0x0020) - s++; - if (*s) - t=s+1; - else - t=s; - continue; - } - s++; + while (*s) + { if (*s==0x0020) + { *s=0; + argv[i++]=HEAP_strdupW( GetProcessHeap(), 0, t ); + *s=0x0020; + while (*s && *s==0x0020) + s++; + if (*s) + t=s+1; + else + t=s; + continue; + } + s++; } if (*t) - argv[i++]=(LPWSTR)HEAP_strdupW( GetProcessHeap(), 0, t ); + argv[i++]=(LPWSTR)HEAP_strdupW( GetProcessHeap(), 0, t ); + HeapFree( GetProcessHeap(), 0, cmdline ); argv[i]=NULL; *numargs=i; @@ -670,8 +670,8 @@ HRESULT WINAPI SHGetSpecialFolderLocation(HWND hwndOwner, INT nFolder, LPITEMIDL LocalToWideChar(lpszDisplayName, tpath, 256); if (SHGetDesktopFolder(&shellfolder)==S_OK) - { shellfolder->lpvtbl->fnParseDisplayName(shellfolder,hwndOwner, NULL,lpszDisplayName,&pchEaten,ppidl,NULL); - shellfolder->lpvtbl->fnRelease(shellfolder); + { IShellFolder_ParseDisplayName(shellfolder,hwndOwner, NULL,lpszDisplayName,&pchEaten,ppidl,NULL); + IShellFolder_Release(shellfolder); } TRACE(shell, "-- (new pidl %p)\n",*ppidl); @@ -904,7 +904,7 @@ BOOL WINAPI ShellAboutW( HWND hWnd, LPCWSTR szApp, LPCWSTR szOtherStuff, * This function is supposed to deal with the systray. * Any ideas on how this is to be implimented? */ -BOOL WINAPI Shell_NotifyIcon( DWORD dwMessage, PNOTIFYICONDATA pnid ) +BOOL WINAPI Shell_NotifyIcon( DWORD dwMessage, PNOTIFYICONDATAA pnid ) { TRACE(shell,"\n"); return FALSE; } @@ -915,7 +915,7 @@ BOOL WINAPI Shell_NotifyIcon( DWORD dwMessage, PNOTIFYICONDATA pnid ) * This function is supposed to deal with the systray. * Any ideas on how this is to be implimented? */ -BOOL WINAPI Shell_NotifyIconA(DWORD dwMessage, PNOTIFYICONDATA pnid ) +BOOL WINAPI Shell_NotifyIconA(DWORD dwMessage, PNOTIFYICONDATAA pnid ) { TRACE(shell,"\n"); return FALSE; } @@ -972,8 +972,8 @@ DWORD WINAPI SHGetPathFromIDListA (LPCITEMIDLIST pidl,LPSTR pszPath) } else { if (SHGetDesktopFolder(&shellfolder)==S_OK) - { shellfolder->lpvtbl->fnGetDisplayNameOf(shellfolder,pidl,SHGDN_FORPARSING,&lpName); - shellfolder->lpvtbl->fnRelease(shellfolder); + { IShellFolder_GetDisplayNameOf(shellfolder,pidl,SHGDN_FORPARSING,&lpName); + IShellFolder_Release(shellfolder); } strcpy(pszPath,lpName.u.cStr); } @@ -1144,7 +1144,7 @@ BOOL WINAPI Shell32LibMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID fImpLoad) bShell32IsInitialized = FALSE; if (pdesktopfolder) - { pdesktopfolder->lpvtbl->fnRelease(pdesktopfolder); + { IShellFolder_Release(pdesktopfolder); } SIC_Destroy(); diff --git a/dlls/shell32/shellord.c b/dlls/shell32/shellord.c index 37678ae0bc7..1b135e59dfd 100644 --- a/dlls/shell32/shellord.c +++ b/dlls/shell32/shellord.c @@ -13,6 +13,7 @@ #include "winversion.h" #include "heap.h" +#include "shellapi.h" #include "shlobj.h" #include "shell32_main.h" diff --git a/include/shell.h b/include/shell.h index 6a1c18a2bab..63179beab59 100644 --- a/include/shell.h +++ b/include/shell.h @@ -37,31 +37,6 @@ extern HGLOBAL16 WINAPI InternalExtractIcon16(HINSTANCE16,LPCSTR,UINT16,WORD); /**************************************************************************** * common shell file structures */ -#define FO_MOVE 0x0001 -#define FO_COPY 0x0002 -#define FO_DELETE 0x0003 -#define FO_RENAME 0x0004 - -#define FOF_MULTIDESTFILES 0x0001 -#define FOF_CONFIRMMOUSE 0x0002 -#define FOF_SILENT 0x0004 -#define FOF_RENAMEONCOLLISION 0x0008 -#define FOF_NOCONFIRMATION 0x0010 -#define FOF_WANTMAPPINGHANDLE 0x0020 -#define FOF_ALLOWUNDO 0x0040 -#define FOF_FILESONLY 0x0080 -#define FOF_SIMPLEPROGRESS 0x0100 -#define FOF_NOCONFIRMMKDIR 0x0200 -#define FOF_NOERRORUI 0x0400 - -typedef WORD FILEOP_FLAGS; - -#define PO_DELETE 0x0013 -#define PO_RENAME 0x0014 -#define PO_PORTCHANGE 0x0020 - -typedef WORD PRINTEROP_FLAGS; - /****************************** * DRAG&DROP API */ @@ -81,31 +56,6 @@ typedef struct { /* structure for dropped files */ } DROPFILESTRUCT, *LPDROPFILESTRUCT; -void WINAPI DragAcceptFiles16(HWND16 hWnd, BOOL16 b); -void WINAPI DragAcceptFiles(HWND hWnd, BOOL b); -UINT16 WINAPI DragQueryFile16(HDROP16 hDrop, WORD wFile, LPSTR lpszFile, WORD wLength); -UINT WINAPI DragQueryFileA(HDROP hDrop, UINT lFile, LPSTR lpszFile, UINT lLength); -UINT WINAPI DragQueryFileW(HDROP hDrop, UINT lFile, LPWSTR lpszFile, UINT lLength); -#define DragQueryFile WINELIB_NAME_AW(DragQueryFile) -void WINAPI DragFinish(HDROP h); -void WINAPI DragFinish16(HDROP16 h); -BOOL WINAPI DragQueryPoint(HDROP hDrop, POINT *p); -BOOL16 WINAPI DragQueryPoint16(HDROP16 hDrop, POINT16 *p); - - -/**************************************************************************** -* NOTIFYICONDATA -*/ -typedef struct _NOTIFYICONDATA { - DWORD cbSize; - HWND hWnd; - UINT uID; - UINT uFlags; - UINT uCallbackMessage; - HICON hIcon; - CHAR szTip[64]; -} NOTIFYICONDATA, *PNOTIFYICONDATA; - /**************************************************************************** * SHITEMID, ITEMIDLIST, PIDL API */ @@ -124,96 +74,7 @@ DWORD WINAPI SHGetPathFromIDListA (LPCITEMIDLIST pidl,LPSTR pszPath); DWORD WINAPI SHGetPathFromIDListW (LPCITEMIDLIST pidl,LPWSTR pszPath); #define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList) -/**************************************************************************** -* SHFILEINFO API -*/ -typedef struct tagSHFILEINFOA { - HICON hIcon; /* icon */ - int iIcon; /* icon index */ - DWORD dwAttributes; /* SFGAO_ flags */ - CHAR szDisplayName[MAX_PATH];/* display name (or path) */ - CHAR szTypeName[80]; /* type name */ -} SHFILEINFOA; -typedef struct tagSHFILEINFOW { - HICON hIcon; /* icon */ - int iIcon; /* icon index */ - DWORD dwAttributes; /* SFGAO_ flags */ - WCHAR szDisplayName[MAX_PATH];/* display name (or path) */ - WCHAR szTypeName[80]; /* type name */ -} SHFILEINFOW; - -DECL_WINELIB_TYPE_AW(SHFILEINFO) - -DWORD WINAPI SHGetFileInfoA(LPCSTR,DWORD,SHFILEINFOA*,UINT,UINT); -DWORD WINAPI SHGetFileInfoW(LPCWSTR,DWORD,SHFILEINFOW*,UINT,UINT); -#define SHGetFileInfo WINELIB_NAME_AW(SHGetFileInfo) - -/**************************************************************************** -* SHFILEOPSTRUCT API -*/ -typedef struct _SHFILEOPSTRUCTA -{ HWND hwnd; - UINT wFunc; - LPCSTR pFrom; - LPCSTR pTo; - FILEOP_FLAGS fFlags; - BOOL fAnyOperationsAborted; - LPVOID hNameMappings; - LPCSTR lpszProgressTitle; -} SHFILEOPSTRUCTA, *LPSHFILEOPSTRUCTA; - -typedef struct _SHFILEOPSTRUCTW -{ HWND hwnd; - UINT wFunc; - LPCWSTR pFrom; - LPCWSTR pTo; - FILEOP_FLAGS fFlags; - BOOL fAnyOperationsAborted; - LPVOID hNameMappings; - LPCWSTR lpszProgressTitle; -} SHFILEOPSTRUCTW, *LPSHFILEOPSTRUCTW; - -#define SHFILEOPSTRUCT WINELIB_NAME_AW(SHFILEOPSTRUCT) -#define LPSHFILEOPSTRUCT WINELIB_NAME_AW(LPSHFILEOPSTRUCT) - -DWORD WINAPI SHFileOperationA (LPSHFILEOPSTRUCTA lpFileOp); -DWORD WINAPI SHFileOperationW (LPSHFILEOPSTRUCTW lpFileOp); -#define SHFileOperation WINELIB_NAME_AW(SHFileOperation) - -DWORD WINAPI SHFileOperationAW(DWORD x); - -/**************************************************************************** -* APPBARDATA -*/ -typedef struct _AppBarData { - DWORD cbSize; - HWND hWnd; - UINT uCallbackMessage; - UINT uEdge; - RECT rc; - LPARAM lParam; -} APPBARDATA, *PAPPBARDATA; - -#define SHGFI_LARGEICON 0x000000000 /* get large icon */ -#define SHGFI_SMALLICON 0x000000001 /* get small icon */ -#define SHGFI_OPENICON 0x000000002 /* get open icon */ -#define SHGFI_SHELLICONSIZE 0x000000004 /* get shell size icon */ -#define SHGFI_PIDL 0x000000008 /* pszPath is a pidl */ -#define SHGFI_USEFILEATTRIBUTES 0x000000010 /* use passed dwFileAttribute */ -#define SHGFI_UNKNOWN1 0x000000020 -#define SHGFI_UNKNOWN2 0x000000040 -#define SHGFI_UNKNOWN3 0x000000080 -#define SHGFI_ICON 0x000000100 /* get icon */ -#define SHGFI_DISPLAYNAME 0x000000200 /* get display name */ -#define SHGFI_TYPENAME 0x000000400 /* get type name */ -#define SHGFI_ATTRIBUTES 0x000000800 /* get attributes */ -#define SHGFI_ICONLOCATION 0x000001000 /* get icon location */ -#define SHGFI_EXETYPE 0x000002000 /* return exe type */ -#define SHGFI_SYSICONINDEX 0x000004000 /* get system icon index */ -#define SHGFI_LINKOVERLAY 0x000008000 /* put a link overlay on icon */ -#define SHGFI_SELECTED 0x000010000 /* show icon in selected state */ -#define SHGFI_ATTR_SPECIFIED 0x000020000 /* get only specified attributes */ /**************************************************************************** * SHChangeNotifyRegister API @@ -313,22 +174,10 @@ LPWSTR WINAPI StrFormatByteSizeW ( DWORD dw, LPWSTR pszBuf, UINT cchBuf ); /**************************************************************************** * other functions */ -HICON16 WINAPI ExtractIconEx16 ( LPCSTR, INT16, HICON16 *, HICON16 *, UINT16 ); -HICON WINAPI ExtractIconExA( LPCSTR, INT, HICON *, HICON *, UINT ); -HICON WINAPI ExtractIconExW( LPCWSTR, INT, HICON *, HICON *, UINT ); -#define ExtractIconEx WINELIB_NAME_AW(ExtractIconEx) -HICON WINAPI ExtractIconExAW(LPCVOID, INT, HICON *, HICON *, UINT ); LPVOID WINAPI SHAlloc(DWORD len); DWORD WINAPI SHFree(LPVOID x); -#define SE_ERR_SHARE 26 -#define SE_ERR_ASSOCINCOMPLETE 27 -#define SE_ERR_DDETIMEOUT 28 -#define SE_ERR_DDEFAIL 29 -#define SE_ERR_DDEBUSY 30 -#define SE_ERR_NOASSOC 31 - #define CSIDL_DESKTOP 0x0000 #define CSIDL_PROGRAMS 0x0002 #define CSIDL_CONTROLS 0x0003 diff --git a/include/shellapi.h b/include/shellapi.h index 2f112b7e941..b0b4c8b30c2 100644 --- a/include/shellapi.h +++ b/include/shellapi.h @@ -3,26 +3,258 @@ #include "windef.h" -HICON16 WINAPI ExtractIcon16(HINSTANCE16,LPCSTR,UINT16); -HICON WINAPI ExtractIconA(HINSTANCE,LPCSTR,UINT); -HICON WINAPI ExtractIconW(HINSTANCE,LPCWSTR,UINT); +#pragma pack(1) + +/****************************************** + * DragObject + */ + +typedef struct _DRAGINFOA +{ UINT uSize; + POINT pt; + BOOL fNC; + LPSTR lpFileList; + DWORD grfKeyState; +} DRAGINFOA, * LPDRAGINFOA; + +typedef struct _DRAGINFOW +{ UINT uSize; + POINT pt; + BOOL fNC; + LPWSTR lpFileList; + DWORD grfKeyState; +} DRAGINFOW, LPDRAGINFOW; + +void WINAPI DragAcceptFiles(HWND hWnd, BOOL b); +void WINAPI DragAcceptFiles16(HWND16 hWnd, BOOL16 b); + +UINT16 WINAPI DragQueryFile16(HDROP16 hDrop, WORD wFile, LPSTR lpszFile, WORD wLength); +UINT WINAPI DragQueryFileA(HDROP hDrop, UINT lFile, LPSTR lpszFile, UINT lLength); +UINT WINAPI DragQueryFileW(HDROP hDrop, UINT lFile, LPWSTR lpszFile, UINT lLength); +#define DragQueryFile WINELIB_NAME_AW(DragQueryFile) + +void WINAPI DragFinish16(HDROP16 h); +void WINAPI DragFinish(HDROP h); + +BOOL16 WINAPI DragQueryPoint16(HDROP16 hDrop, POINT16 *p); +BOOL WINAPI DragQueryPoint(HDROP hDrop, POINT *p); + + +/****************************************** + * Application Bar + */ +#define ABM_NEW 0x00000000 +#define ABM_REMOVE 0x00000001 +#define ABM_QUERYPOS 0x00000002 +#define ABM_SETPOS 0x00000003 +#define ABM_GETSTATE 0x00000004 +#define ABM_GETTASKBARPOS 0x00000005 +#define ABM_ACTIVATE 0x00000006 +#define ABM_GETAUTOHIDEBAR 0x00000007 +#define ABM_SETAUTOHIDEBAR 0x00000008 +#define ABM_WINDOWPOSCHANGED 0x00000009 + +#define ABN_STATECHANGE 0x00000000 +#define ABN_POSCHANGED 0x00000001 +#define ABN_FULLSCREENAPP 0x00000002 +#define ABN_WINDOWARRANGE 0x00000003 + +#define ABS_AUTOHIDE 0x00000001 +#define ABS_ALWAYSONTOP 0x00000002 + +#define ABE_LEFT 0 +#define ABE_TOP 1 +#define ABE_RIGHT 2 +#define ABE_BOTTOM 3 + +typedef struct _AppBarData +{ DWORD cbSize; + HWND hWnd; + UINT uCallbackMessage; + UINT uEdge; + RECT rc; + LPARAM lParam; +} APPBARDATA, *PAPPBARDATA; + + +/****************************************** + * SHGetFileInfo + */ + +#define SHGFI_LARGEICON 0x000000000 /* get large icon */ +#define SHGFI_SMALLICON 0x000000001 /* get small icon */ +#define SHGFI_OPENICON 0x000000002 /* get open icon */ +#define SHGFI_SHELLICONSIZE 0x000000004 /* get shell size icon */ +#define SHGFI_PIDL 0x000000008 /* pszPath is a pidl */ +#define SHGFI_USEFILEATTRIBUTES 0x000000010 /* use passed dwFileAttribute */ +#define SHGFI_UNKNOWN1 0x000000020 +#define SHGFI_UNKNOWN2 0x000000040 +#define SHGFI_UNKNOWN3 0x000000080 +#define SHGFI_ICON 0x000000100 /* get icon */ +#define SHGFI_DISPLAYNAME 0x000000200 /* get display name */ +#define SHGFI_TYPENAME 0x000000400 /* get type name */ +#define SHGFI_ATTRIBUTES 0x000000800 /* get attributes */ +#define SHGFI_ICONLOCATION 0x000001000 /* get icon location */ +#define SHGFI_EXETYPE 0x000002000 /* return exe type */ +#define SHGFI_SYSICONINDEX 0x000004000 /* get system icon index */ +#define SHGFI_LINKOVERLAY 0x000008000 /* put a link overlay on icon */ +#define SHGFI_SELECTED 0x000010000 /* show icon in selected state */ +#define SHGFI_ATTR_SPECIFIED 0x000020000 /* get only specified attributes */ + +typedef struct tagSHFILEINFOA +{ HICON hIcon; /* icon */ + int iIcon; /* icon index */ + DWORD dwAttributes; /* SFGAO_ flags */ + CHAR szDisplayName[MAX_PATH];/* display name (or path) */ + CHAR szTypeName[80]; /* type name */ +} SHFILEINFOA; + +typedef struct tagSHFILEINFOW +{ HICON hIcon; /* icon */ + int iIcon; /* icon index */ + DWORD dwAttributes; /* SFGAO_ flags */ + WCHAR szDisplayName[MAX_PATH];/* display name (or path) */ + WCHAR szTypeName[80]; /* type name */ +} SHFILEINFOW; + +DECL_WINELIB_TYPE_AW(SHFILEINFO) + +DWORD WINAPI SHGetFileInfoA(LPCSTR,DWORD,SHFILEINFOA*,UINT,UINT); +DWORD WINAPI SHGetFileInfoW(LPCWSTR,DWORD,SHFILEINFOW*,UINT,UINT); +#define SHGetFileInfo WINELIB_NAME_AW(SHGetFileInfo) + +/****************************************** + * SHSetFileInfo + */ + +/****************************************** +* SHFileOperation +*/ +#define FO_MOVE 0x0001 +#define FO_COPY 0x0002 +#define FO_DELETE 0x0003 +#define FO_RENAME 0x0004 + +#define FOF_MULTIDESTFILES 0x0001 +#define FOF_CONFIRMMOUSE 0x0002 +#define FOF_SILENT 0x0004 +#define FOF_RENAMEONCOLLISION 0x0008 +#define FOF_NOCONFIRMATION 0x0010 +#define FOF_WANTMAPPINGHANDLE 0x0020 +#define FOF_ALLOWUNDO 0x0040 +#define FOF_FILESONLY 0x0080 +#define FOF_SIMPLEPROGRESS 0x0100 +#define FOF_NOCONFIRMMKDIR 0x0200 +#define FOF_NOERRORUI 0x0400 + +typedef WORD FILEOP_FLAGS; + +#define PO_DELETE 0x0013 +#define PO_RENAME 0x0014 +#define PO_PORTCHANGE 0x0020 + +typedef WORD PRINTEROP_FLAGS; + +typedef struct _SHFILEOPSTRUCTA +{ HWND hwnd; + UINT wFunc; + LPCSTR pFrom; + LPCSTR pTo; + FILEOP_FLAGS fFlags; + BOOL fAnyOperationsAborted; + LPVOID hNameMappings; + LPCSTR lpszProgressTitle; +} SHFILEOPSTRUCTA, *LPSHFILEOPSTRUCTA; + +typedef struct _SHFILEOPSTRUCTW +{ HWND hwnd; + UINT wFunc; + LPCWSTR pFrom; + LPCWSTR pTo; + FILEOP_FLAGS fFlags; + BOOL fAnyOperationsAborted; + LPVOID hNameMappings; + LPCWSTR lpszProgressTitle; +} SHFILEOPSTRUCTW, *LPSHFILEOPSTRUCTW; + +#define SHFILEOPSTRUCT WINELIB_NAME_AW(SHFILEOPSTRUCT) +#define LPSHFILEOPSTRUCT WINELIB_NAME_AW(LPSHFILEOPSTRUCT) + +DWORD WINAPI SHFileOperationA (LPSHFILEOPSTRUCTA lpFileOp); +DWORD WINAPI SHFileOperationW (LPSHFILEOPSTRUCTW lpFileOp); +#define SHFileOperation WINELIB_NAME_AW(SHFileOperation) + +DWORD WINAPI SHFileOperationAW(DWORD x); + +/****************************************** + * ShellExecute + */ +#define SE_ERR_SHARE 26 +#define SE_ERR_ASSOCINCOMPLETE 27 +#define SE_ERR_DDETIMEOUT 28 +#define SE_ERR_DDEFAIL 29 +#define SE_ERR_DDEBUSY 30 +#define SE_ERR_NOASSOC 31 + +HINSTANCE16 WINAPI ShellExecute16(HWND16,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT16); +HINSTANCE WINAPI ShellExecuteA(HWND,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT); +HINSTANCE WINAPI ShellExecuteW(HWND,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT); +#define ShellExecute WINELIB_NAME_AW(ShellExecute) + +/****************************************** + * Tray Notification + */ +typedef struct _NOTIFYICONDATAA +{ DWORD cbSize; + HWND hWnd; + UINT uID; + UINT uFlags; + UINT uCallbackMessage; + HICON hIcon; + CHAR szTip[64]; +} NOTIFYICONDATAA, *PNOTIFYICONDATAA; + +typedef struct _NOTIFYICONDATAW +{ DWORD cbSize; + HWND hWnd; + UINT uID; + UINT uFlags; + UINT uCallbackMessage; + HICON hIcon; + WCHAR szTip[64]; +} NOTIFYICONDATAW, *PNOTIFYICONDATAW; + + +/****************************************** + * Misc + */ + +HICON16 WINAPI ExtractIcon16(HINSTANCE16,LPCSTR,UINT16); +HICON WINAPI ExtractIconA(HINSTANCE,LPCSTR,UINT); +HICON WINAPI ExtractIconW(HINSTANCE,LPCWSTR,UINT); #define ExtractIcon WINELIB_NAME_AW(ExtractIcon) + HICON16 WINAPI ExtractAssociatedIcon16(HINSTANCE16,LPSTR,LPWORD); HICON WINAPI ExtractAssociatedIconA(HINSTANCE,LPSTR,LPWORD); HICON WINAPI ExtractAssociatedIconW(HINSTANCE,LPWSTR,LPWORD); #define ExtractAssociatedIcon WINELIB_NAME_AW(ExtractAssociatedIcon) + +HICON16 WINAPI ExtractIconEx16 ( LPCSTR, INT16, HICON16 *, HICON16 *, UINT16 ); +HICON WINAPI ExtractIconExA( LPCSTR, INT, HICON *, HICON *, UINT ); +HICON WINAPI ExtractIconExW( LPCWSTR, INT, HICON *, HICON *, UINT ); +#define ExtractIconEx WINELIB_NAME_AW(ExtractIconEx) +HICON WINAPI ExtractIconExAW(LPCVOID, INT, HICON *, HICON *, UINT ); + HINSTANCE16 WINAPI FindExecutable16(LPCSTR,LPCSTR,LPSTR); HINSTANCE WINAPI FindExecutableA(LPCSTR,LPCSTR,LPSTR); HINSTANCE WINAPI FindExecutableW(LPCWSTR,LPCWSTR,LPWSTR); #define FindExecutable WINELIB_NAME_AW(FindExecutable) + BOOL16 WINAPI ShellAbout16(HWND16,LPCSTR,LPCSTR,HICON16); BOOL WINAPI ShellAboutA(HWND,LPCSTR,LPCSTR,HICON); BOOL WINAPI ShellAboutW(HWND,LPCWSTR,LPCWSTR,HICON); #define ShellAbout WINELIB_NAME_AW(ShellAbout) -HINSTANCE16 WINAPI ShellExecute16(HWND16,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT16); -HINSTANCE WINAPI ShellExecuteA(HWND,LPCSTR,LPCSTR,LPCSTR,LPCSTR,INT); -HINSTANCE WINAPI ShellExecuteW(HWND,LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR,INT); -#define ShellExecute WINELIB_NAME_AW(ShellExecute) +#pragma pack(4) #endif /* _WINE_SHELLAPI_H */ diff --git a/include/shlobj.h b/include/shlobj.h index d89c725496d..a89da1bfc16 100644 --- a/include/shlobj.h +++ b/include/shlobj.h @@ -397,18 +397,6 @@ typedef void (CALLBACK * LPFNFMCALLBACK)(LPCITEMIDLIST pidlFolder, LPCITEMIDLIST #define FM_BLANK_ICON -1 #define FM_DEFAULT_HEIGHT 0 -/* fixme: move to ShellApi.h */ -#define ABM_NEW 0x00000000 -#define ABM_REMOVE 0x00000001 -#define ABM_QUERYPOS 0x00000002 -#define ABM_SETPOS 0x00000003 -#define ABM_GETSTATE 0x00000004 -#define ABM_GETTASKBARPOS 0x00000005 -#define ABM_ACTIVATE 0x00000006 -#define ABM_GETAUTOHIDEBAR 0x00000007 -#define ABM_SETAUTOHIDEBAR 0x00000008 -#define ABM_WINDOWPOSCHANGED 0x00000009 - /********************************************************************** * SHGetSettings () */ @@ -447,8 +435,6 @@ void WINAPI SHGetSettings(LPSHELLFLAGSTATE lpsfs, DWORD dwMask, DWORD dwx); #define SSF_MAPNETDRVBUTTON 0x1000 #define SSF_NOCONFIRMRECYCLE 0x8000 #define SSF_HIDEICONS 0x4000 -#define ABS_AUTOHIDE 0x00000001 -#define ABS_ALWAYSONTOP 0x00000002 /**********************************************************************/