diff --git a/PInvoke/Shell32/ShlDisp.cs b/PInvoke/Shell32/ShlDisp.cs index 4cbcabfa..71fb9c22 100644 --- a/PInvoke/Shell32/ShlDisp.cs +++ b/PInvoke/Shell32/ShlDisp.cs @@ -11,6 +11,7 @@ namespace Vanara.PInvoke public static partial class Shell32 { /// Specifies values used by IAutoComplete2::GetOptions and IAutoComplete2::SetOptions for options surrounding autocomplete. + [PInvokeData("shldisp.h")] [Flags] public enum AUTOCOMPLETEOPTIONS { @@ -314,41 +315,44 @@ namespace Vanara.PInvoke ssfPROGRAMFILESx86 = 48, } - /// Undocumented. + /// Constraint used in search command. [ComImport, Guid("4A3DF050-23BD-11D2-939F-00A0C91EEDBA")] public interface DFConstraint { - /// Undocumented. + /// Get the constraint name. [DispId(0x60020000)] string Name { [return: MarshalAs(UnmanagedType.BStr)] [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(0x60020000)] get; } - /// Undocumented. + /// Get the constraint value. [DispId(0x60020001)] object Value { [return: MarshalAs(UnmanagedType.Struct)] [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(0x60020001)] get; } } - /// Undocumented. + /// Event interface for ShellFolderView. [ComImport, InterfaceType(ComInterfaceType.InterfaceIsIDispatch), Guid("62112AA2-EBE4-11CF-A5FB-0020AFE7292D"), CoClass(typeof(ShellFolderView))] public interface DShellFolderViewEvents { - /// Undocumented. - [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(200)] + /// The Selection in the view changed. + [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(DISPID.DISPID_SELECTIONCHANGED)] void SelectionChanged(); - /// Undocumented. - [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(0xc9)] + /// The folder has finished enumerating (flashlight is gone). + [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(DISPID.DISPID_FILELISTENUMDONE)] void EnumDone(); - /// Undocumented. - [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(0xca)] + /// A verb was invoked on an items in the view (return false to cancel). + [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(DISPID.DISPID_VERBINVOKED)] + [return: MarshalAs(UnmanagedType.VariantBool)] bool VerbInvoked(); - /// Undocumented. - [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(0xcb)] + /// the default verb (double click) was invoked on an items in the view (return false to cancel). + [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(DISPID.DISPID_DEFAULTVERBINVOKED)] + [return: MarshalAs(UnmanagedType.VariantBool)] bool DefaultVerbInvoked(); - /// Undocumented. - [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(0xcc)] + /// user started to drag an item (return false to cancel). + [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime), DispId(DISPID.DISPID_BEGINDRAG)] + [return: MarshalAs(UnmanagedType.VariantBool)] bool BeginDrag(); } @@ -6755,6 +6759,90 @@ namespace Vanara.PInvoke [ComImport, SuppressUnmanagedCodeSecurity, Guid("00BB2763-6A77-11D0-A535-00C04FD7D062"), ClassInterface(ClassInterfaceType.None)] public class CAutoComplete { } + /// Define the events for shell IDispatch interfaces. + [PInvokeData("shldisp.h")] + public static class DISPID + { + /// The Selected Items Changed + public const int DISPID_SELECTIONCHANGED = 200; + /// Done enumerating the shell folder + public const int DISPID_FILELISTENUMDONE = 201; + /// A verb (either from the main or context menu) was invoked in the folder view + public const int DISPID_VERBINVOKED = 202; + /// default verb (either from the main or context menu) was invoked in the folder view + public const int DISPID_DEFAULTVERBINVOKED = 203; + /// user clicked on an item + public const int DISPID_BEGINDRAG = 204; + /// The ListViewMode Changed + public const int DISPID_VIEWMODECHANGED = 205; + /// We went from 0->some or some->0 items in the view + public const int DISPID_NOITEMSTATE_CHANGED = 206; + /// contents of the view have changed somehow + public const int DISPID_CONTENTSCHANGED = 207; + /// The Focused Item Changed + public const int DISPID_FOCUSCHANGED = 208; + /// Checkbox state changed. + public const int DISPID_CHECKSTATECHANGED = 209; + /// The order of items changed + public const int DISPID_ORDERCHANGED = 210; + /// The enumerated items have been inserted into the view and painted + public const int DISPID_VIEWPAINTDONE = 211; + /// The set of visible details columns changed + public const int DISPID_COLUMNSCHANGED = 212; + /// The mousewheel has been moved while the CTRL key was down + public const int DISPID_CTRLMOUSEWHEEL = 213; + /// Done sorting the shell folder + public const int DISPID_SORTDONE = 214; + /// The icon size changed in the view + public const int DISPID_ICONSIZECHANGED = 215; + /// The state of the folder has changed + public const int DISPID_FOLDERCHANGED = 217; + /// Some filter changed + public const int DISPID_FILTERINVOKED = 218; + /// Text in WordWheel changed + public const int DISPID_WORDWHEELEDITED = 219; + /// One of the selected items has changed (not the same as a selection change) + public const int DISPID_SELECTEDITEMCHANGED = 220; + /// Explorer window is open, been painted and is ready + public const int DISPID_EXPLORERWINDOWREADY = 221; + /// A SHCNE_UPDATEIMAGE notification was received + public const int DISPID_UPDATEIMAGE = 222; + /// Used internally by specialized views like the start menu. Not fired when the data source finishes enumeration. To detect when the data source is done enumerating, use DISPID_FILELISTENUMDONE. + public const int DISPID_INITIALENUMERATIONDONE = 223; + /// Fired when enterprise id is changed in Common File Dialog during save as + public const int DISPID_ENTERPRISEIDCHANGED = 224; + /// The user hit Enter or Return + public const int DISPID_ENTERPRESSED = 200; + /// + public const int DISPID_SEARCHCOMMAND_START = 1; + /// + public const int DISPID_SEARCHCOMMAND_COMPLETE = 2; + /// + public const int DISPID_SEARCHCOMMAND_ABORT = 3; + /// + public const int DISPID_SEARCHCOMMAND_UPDATE = 4; + /// + public const int DISPID_SEARCHCOMMAND_PROGRESSTEXT = 5; + /// + public const int DISPID_SEARCHCOMMAND_ERROR = 6; + /// + public const int DISPID_SEARCHCOMMAND_RESTORE = 7; + /// + public const int DISPID_IADCCTL_DIRTY = 0x100; + /// + public const int DISPID_IADCCTL_PUBCAT = 0x101; + /// + public const int DISPID_IADCCTL_SORT = 0x102; + /// + public const int DISPID_IADCCTL_FORCEX86 = 0x103; + /// + public const int DISPID_IADCCTL_SHOWPOSTSETUP = 0x104; + /// + public const int DISPID_IADCCTL_ONDOMAIN = 0x105; + /// + public const int DISPID_IADCCTL_DEFAULTCAT = 0x106; + } + /// Undocumented. [ComImport, Guid("C4EE31F3-4768-11D2-BE5C-00A0C9A83DA1"), ClassInterface(ClassInterfaceType.None)] public class FileSearchBand { }