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 { }