diff --git a/include/shlobj.h b/include/shlobj.h index e4a963bc43a..0f4c870e186 100644 --- a/include/shlobj.h +++ b/include/shlobj.h @@ -372,29 +372,6 @@ typedef struct _SHELLVIEWDATA /* idl */ DWORD viewmode; /* NF_* enum */ } SHELLVIEWDATA, * LPSHELLVIEWDATA; -/* - The shell keeps track of some per-user state to handle display - options that is of majorinterest to ISVs. - The key one requested right now is "DoubleClickInWebView". -*/ -typedef struct -{ BOOL fShowAllObjects : 1; - BOOL fShowExtensions : 1; - BOOL fNoConfirmRecycle : 1; - BOOL fShowSysFiles : 1; - BOOL fShowCompColor : 1; - BOOL fDoubleClickInWebView : 1; - BOOL fDesktopHTML : 1; - BOOL fWin95Classic : 1; - BOOL fDontPrettyPath : 1; - BOOL fShowAttribCol : 1; - BOOL fMapNetDrvBtn : 1; - BOOL fShowInfoTip : 1; - BOOL fHideIcons : 1; - UINT fRestFlags : 3; -} SHELLFLAGSTATE, * LPSHELLFLAGSTATE; - - DWORD WINAPI SHGetMalloc(LPMALLOC *lpmal) ; /**************************************************************************** @@ -432,8 +409,49 @@ typedef void (CALLBACK * LPFNFMCALLBACK)(LPCITEMIDLIST pidlFolder, LPCITEMIDLIST #define ABM_SETAUTOHIDEBAR 0x00000008 #define ABM_WINDOWPOSCHANGED 0x00000009 -#define ABS_AUTOHIDE 0x00000001 -#define ABS_ALWAYSONTOP 0x00000002 +/********************************************************************** + * SHGetSettings () + */ +typedef struct +{ BOOL fShowAllObjects : 1; + BOOL fShowExtensions : 1; + BOOL fNoConfirmRecycle : 1; + BOOL fShowSysFiles : 1; + + BOOL fShowCompColor : 1; + BOOL fDoubleClickInWebView : 1; + BOOL fDesktopHTML : 1; + BOOL fWin95Classic : 1; + + BOOL fDontPrettyPath : 1; + BOOL fShowAttribCol : 1; + BOOL fMapNetDrvBtn : 1; + BOOL fShowInfoTip : 1; + + BOOL fHideIcons : 1; + UINT fRestFlags : 3; +} SHELLFLAGSTATE, * LPSHELLFLAGSTATE; + +void WINAPI SHGetSettings(LPSHELLFLAGSTATE lpsfs, DWORD dwMask); + +#define SSF_SHOWALLOBJECTS 0x0001 +#define SSF_SHOWEXTENSIONS 0x0002 +#define SSF_SHOWCOMPCOLOR 0x0008 +#define SSF_SHOWSYSFILES 0x0020 +#define SSF_DOUBLECLICKINWEBVIEW 0x0080 +#define SSF_SHOWATTRIBCOL 0x0100 +#define SSF_DESKTOPHTML 0x0200 +#define SSF_WIN95CLASSIC 0x0400 +#define SSF_DONTPRETTYPATH 0x0800 +#define SSF_SHOWINFOTIP 0x2000 +#define SSF_MAPNETDRVBUTTON 0x1000 +#define SSF_NOCONFIRMRECYCLE 0x8000 +#define SSF_HIDEICONS 0x4000 +#define ABS_AUTOHIDE 0x00000001 +#define ABS_ALWAYSONTOP 0x00000002 + +/**********************************************************************/ + #undef PURE #undef FAR #undef THIS diff --git a/relay32/shell32.spec b/relay32/shell32.spec index cc995d2dafd..87b40a047ec 100644 --- a/relay32/shell32.spec +++ b/relay32/shell32.spec @@ -31,7 +31,7 @@ init Shell32LibMain 23 stdcall ILIsParent (long long long) ILIsParent 24 stdcall ILFindChild (long long) ILFindChild 25 stdcall ILCombine(ptr ptr) ILCombine - 26 stub ILLoadFromStream@8 + 26 stdcall ILLoadFromStream (long long) ILLoadFromStream 27 stub ILSaveToStream@8 28 stdcall SHILCreateFromPath (long long long) SHILCreateFromPathAW 29 stdcall PathIsRoot(ptr) PathIsRootAW @@ -73,7 +73,7 @@ init Shell32LibMain 65 stub InvalidateDriveType 66 stub IsNetDrive 67 stdcall Shell_MergeMenus (long long long long long long) Shell_MergeMenus - 68 stdcall SHGetSettings(long long long) SHGetSettings + 68 stdcall SHGetSettings(long long) SHGetSettings 69 stub SHGetNetResource 70 stub SHCreateDefClassObject 71 stdcall Shell_GetImageList(ptr ptr) Shell_GetImageList