[PSDK]
authorThomas Faber <thomas.faber@reactos.org>
Sun, 7 Jul 2013 07:19:35 +0000 (07:19 +0000)
committerThomas Faber <thomas.faber@reactos.org>
Sun, 7 Jul 2013 07:19:35 +0000 (07:19 +0000)
- Fix ShellItem/ShellFolderItem confusion and some misc GUIDs

svn path=/trunk/; revision=59438

reactos/include/psdk/shldisp.idl
reactos/include/psdk/shlguid.h
reactos/include/psdk/shlguid_undoc.h
reactos/include/psdk/shobjidl.idl
reactos/lib/sdk/uuid/otherguids.c

index 3c300db..519fa03 100644 (file)
@@ -72,7 +72,7 @@ interface IAutoComplete : IUnknown
                  [in] IUnknown *punkACL,
                  [in] LPCOLESTR pwszRegKeyPath,
                  [in] LPCOLESTR pwszQuickComplete);
-    
+
     HRESULT Enable( [in] BOOL fEnable );
 }
 
@@ -310,6 +310,27 @@ interface FolderItem : IDispatch
     HRESULT InvokeVerb( [in, optional] VARIANT vVerb );
 }
 
+[
+    object,
+    uuid(edc817aa-92b8-11d1-b075-00c04fc33aa5),
+    oleautomation,
+    dual
+]
+interface FolderItem2 : FolderItem
+{
+    HRESULT InvokeVerbEx( [in, optional] VARIANT vVerb, [in, optional] VARIANT vArgs );
+
+    HRESULT ExtendedProperty( [in] BSTR sPropName, [out, retval] VARIANT *pvRet );
+}
+
+[
+    uuid(2fe352ea-fd1f-11d2-b1f4-00c04f8eeb3e)
+]
+coclass ShellFolderItem
+{
+    interface FolderItem2;
+}
+
 /*****************************************************************************
  * FolderItems interface
  */
index ccc6a53..849b886 100644 (file)
@@ -121,6 +121,7 @@ DEFINE_GUID(SID_SCommDlgBrowser,  0x80f30233, 0xb7df, 0x11d2, 0xa3, 0x3b, 0x00,
 DEFINE_GUID(IID_IDockingWindowSite, 0x2A342FC2, 0x7B26, 0x11D0, 0x8C, 0xA9, 0x00, 0xA0, 0xC9, 0x2D, 0xBF, 0xE8);
 DEFINE_GUID(IID_IInputObject,       0x68284FAA, 0x6A48, 0x11D0, 0x8C, 0x78, 0x00, 0xC0, 0x4F, 0xD9, 0x18, 0xB4);
 DEFINE_GUID(IID_IInputObjectSite,   0xF1DB8392, 0x7331, 0x11D0, 0x8C, 0x99, 0x00, 0xA0, 0xC9, 0x2D, 0xBF, 0xE8);
+DEFINE_GUID(IID_IShellIconOverlayIdentifier, 0x0c6c4200L, 0xc589, 0x11d0, 0x99, 0x9a, 0x00, 0xc0, 0x4f, 0xd6, 0x55, 0xe1);
 
 /****************************************************************************
  * the next IID's are the namespace elements of the pidls
@@ -146,8 +147,6 @@ DEFINE_GUID(CLSID_DragDropHelper, 0x4657278a, 0x411b, 0x11d2, 0x83, 0x9a, 0x00,
 
 DEFINE_GUID(CLSID_ProgressDialog, 0xf8383852, 0xfcd3, 0x11d1, 0xa6, 0xb9, 0x0, 0x60, 0x97, 0xdf, 0x5b, 0xd4);
 
-DEFINE_GUID(CLSID_ShellItem,      0x2fe352ea, 0xfd1f, 0x11d2, 0xb1, 0xf4, 0x00, 0xc0, 0x4f, 0x8e, 0xeb, 0x3e);
-
 #define PSGUID_SHELLDETAILS     {0x28636aa6, 0x953d, 0x11d2, 0xb5, 0xd6, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0}
 DEFINE_GUID(FMTID_ShellDetails,  0x28636aa6, 0x953d, 0x11d2, 0xb5, 0xd6, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
 #define PID_FINDDATA        0
index 63edd52..529607f 100644 (file)
@@ -102,17 +102,14 @@ DEFINE_GUID(CLSID_ShellFileDefExt,         0x21B22460, 0x3AEA, 0x1069, 0xA2, 0xD
 DEFINE_GUID(CLSID_ShellDrvDefExt,          0x5F5295E0, 0x429F, 0x1069, 0xA2, 0xE2, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D);
 DEFINE_GUID(CLSID_ShellNetDefExt,          0x86422020, 0x42A0, 0x1069, 0xA2, 0xE5, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D);
 
-// In theory, this is documented. But until I see an SDK header that defines it, it will be treated as undocumented...
-DEFINE_GUID(CLSID_ShellItem,               0x2FE352EA, 0xFD1F, 0x11D2, 0xB1, 0xF4, 0x00, 0xC0, 0x4F, 0x8E, 0xEB, 0x3E);
-
 #define CGID_IExplorerToolbar IID_IExplorerToolbar
 #define SID_IExplorerToolbar IID_IExplorerToolbar
 #define SID_ITargetFrame2 IID_ITargetFrame2
 #define SID_IWebBrowserApp IID_IWebBrowserApp
 #define CGID_IDeskBand IID_IDeskBand
 #define CGID_MenuBand CLSID_MenuBand
-#define SID_STravelLogCursor IID_ITravelLogStg 
-#define SID_IBandSite IID_IBandSite 
+#define SID_STravelLogCursor IID_ITravelLogStg
+#define SID_IBandSite IID_IBandSite
 #define SID_IFolderView IID_IFolderView
 #define SID_IShellBrowser IID_IShellBrowser
 
index f6fc83a..c1dc2a3 100644 (file)
@@ -1765,7 +1765,7 @@ interface INewShortcutHookA : IUnknown
     HRESULT GetExtension(
                 [out] LPSTR pszExtension,
                 [in] int cchExtension);
-} 
+}
 
 
 /*****************************************************************************
@@ -1796,7 +1796,7 @@ interface INewShortcutHookW : IUnknown
     HRESULT GetExtension(
                 [out] LPWSTR pszExtension,
                 [in] int cchExtension);
-} 
+}
 
 /*****************************************************************************
  * IRunnableTask interface
@@ -2281,7 +2281,7 @@ cpp_quote("#define SMC_SFDDRESTRICTED             0x00000030")
 ]
 interface IShellMenuCallback : IUnknown
 {
-       HRESULT CallbackSM( 
+       HRESULT CallbackSM(
                [in, out] LPSMDATA psmd,
         [in] UINT uMsg,
         [in] WPARAM wParam,
@@ -2317,48 +2317,48 @@ cpp_quote("#define SMINV_ID                     0x00000008")
 ]
 interface IShellMenu : IUnknown
 {
-       HRESULT Initialize( 
+       HRESULT Initialize(
                [in] IShellMenuCallback *psmc,
         [in] UINT uId,
         [in] UINT uIdAncestor,
         [in] DWORD dwFlags);
-        
-       HRESULT GetMenuInfo( 
+
+       HRESULT GetMenuInfo(
                [out] IShellMenuCallback **ppsmc,
                [out] UINT *puId,
                [out] UINT *puIdAncestor,
                [out] DWORD *pdwFlags);
-        
-       HRESULT SetShellFolder( 
+
+       HRESULT SetShellFolder(
         [in] IShellFolder *psf,
                [in] LPCITEMIDLIST pidlFolder,
         [in] HKEY hKey,
         [in] DWORD dwFlags);
-        
-       HRESULT GetShellFolder( 
+
+       HRESULT GetShellFolder(
                [out] DWORD *pdwFlags,
                [out] LPITEMIDLIST *ppidl,
                [in] REFIID riid,
                [out] void **ppv);
-        
-       HRESULT SetMenu( 
+
+       HRESULT SetMenu(
                [in] HMENU hmenu,
                [in] HWND hwnd,
         [in] DWORD dwFlags);
-        
-       HRESULT GetMenu( 
+
+       HRESULT GetMenu(
                [out] HMENU *phmenu,
                [out] HWND *phwnd,
                [out] DWORD *pdwFlags);
-        
-       HRESULT InvalidateItem( 
+
+       HRESULT InvalidateItem(
                [in] LPSMDATA psmd,
         [in] DWORD dwFlags);
-        
-       HRESULT GetState( 
+
+       HRESULT GetState(
                [out] LPSMDATA psmd);
-        
-       HRESULT SetMenuToolbar( 
+
+       HRESULT SetMenuToolbar(
                [in] IUnknown *punk,
         [in] DWORD dwFlags);
 }
@@ -2970,12 +2970,12 @@ cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60)")
 ]
 interface ITrackShellMenu : IShellMenu
 {
-       HRESULT SetObscured( 
+       HRESULT SetObscured(
                [in] HWND hwndTB,
                [in] IUnknown *punkBand,
                DWORD dwSMSetFlags);
 
-       HRESULT Popup( 
+       HRESULT Popup(
                [in] HWND hwnd,
                [in] POINTL *ppt,
                [in] RECTL *prcExclude,
@@ -4485,4 +4485,11 @@ library ShellObjects
     coclass DestinationList {
         interface ICustomDestinationList;
     }
+
+    [
+        uuid(9ac9fbe1-e0a2-4ad6-b4ee-e212013ea917)
+    ]
+    coclass ShellItem {
+        interface IShellItem2;
+    }
 }
index 9653b2a..c3f3589 100644 (file)
@@ -29,7 +29,6 @@ DEFINE_GUID(CLSID_TF_InputProcessorProfiles, 0x33c53a50,0xf456,0x4884,0xb0,0x49,
 DEFINE_GUID(CLSID_TF_CategoryMgr,         0xA4B544A1,0x438D,0x4B41,0x93,0x25,0x86,0x95,0x23,0xE2,0xD6,0xC7);
 DEFINE_GUID(CLSID_TF_LangBarMgr,          0xebb08c45,0x6c4a,0x4fdc,0xae,0x53,0x4e,0xb8,0xc4,0xc7,0xdb,0x8e);
 DEFINE_GUID(CLSID_TF_DisplayAttributeMgr, 0x3ce74de4,0x53d3,0x4d74,0x8b,0x83,0x43,0x1b,0x38,0x28,0xba,0x53);
-DEFINE_GUID(CLSID_TaskbarList,            0x56fdf344,0xfd6d,0x11d0,0x95,0x8a,0x00,0x60,0x97,0xc9,0xa0,0x90);
 DEFINE_GUID(GUID_TFCAT_TIP_KEYBOARD,     0x34745c63,0xb2f0,0x4784,0x8b,0x67,0x5e,0x12,0xc8,0x70,0x1a,0x31);
 DEFINE_GUID(GUID_TFCAT_TIP_SPEECH,       0xB5A73CD1,0x8355,0x426B,0xA1,0x61,0x25,0x98,0x08,0xF2,0x6B,0x14);
 DEFINE_GUID(GUID_TFCAT_TIP_HANDWRITING,  0x246ecb87,0xc2f2,0x4abe,0x90,0x5b,0xc8,0xb3,0x8a,0xdd,0x2c,0x43);
@@ -51,6 +50,4 @@ DEFINE_GUID(CLSID_DsObjectPicker, 0x17d6ccd8, 0x3b7b, 0x11d2, 0x00b9, 0xe0,0x00,
 DEFINE_GUID(CLSID_StdPicture, 0x0BE35204, 0x8F91, 0x11CE, 0x9D,0xE3, 0x00,0xAA,0x00,0x4B,0xB8,0x51);
 DEFINE_GUID(CLSID_StdFont,    0x0BE35203, 0x8F91, 0x11CE, 0x9D,0xE3, 0x00,0xAA,0x00,0x4B,0xB8,0x51);
 
-DEFINE_GUID(CLSID_ShellItem,      0x2fe352ea, 0xfd1f, 0x11d2, 0xb1, 0xf4, 0x00, 0xc0, 0x4f, 0x8e, 0xeb, 0x3e);
-
 DEFINE_GUID(SID_VariantConversion, 0x1f101481,0xbccd,0x11d0,0x93,0x36,0x00,0xa0,0xc9,0xd,0xca,0xa9);