// Generated IDL File (by Great Migrations Studio) 
// Created: 12/3/2025 09:39:58 AM
// Source: C:\Windows\SysWow64\MSOutl32.ocx
// typelib filename: MSOutl32.ocx
[
    uuid(BE4F3AC8-AEC9-101A-947B-00DD010F7B46),
    version(1.0),
    helpstring("Microsoft Outline Control"),
    helpfile("C:\Windows\SysWow64\ctrlref.hlp"),
    helpcontext(0x001eb4ac),
    control
]
library MSOutl
{
    // TLib : Standard OLE Types : {BEF6E001-A874-101A-8BBA-00AA00300CAB}
    importlib("olepro32.dll");

    // Forward declare all types defined in this typelib

    dispinterface IOutlineCtrl;
    dispinterface OutlineEvents;
    coclass Outline;

    typedef enum {
        outDefault = 0,
        outArrow = 1,
        outCross = 2,
        outIBeam = 3,
        outIcon = 4,
        outSize = 5,
        outSizeNESW = 6,
        outSizeNS = 7,
        outSizeNWSE = 8,
        outSizeEW = 9,
        outUpArrow = 10,
        outHourglass = 11,
        outNoDrop = 12,
        outArrowHourglass = 13,
        outArrowQuestion = 14,
        outSizeAll = 15,
        outCustom = 99
    } MousePointerConstants;

    typedef enum {
        outTextOnly = 0,
        outPictureText = 1,
        outPlusMinusText = 2,
        outPlusPictureText = 3,
        outTreelinesText = 4,
        outTreelinesPictureText = 5
    } StyleConstants;

    typedef enum {
        outNone = 0,
        outFixedSingle = 1
    } BorderStyleConstants;

    typedef enum {
        outBadPicFormat = 32000,
        outBadIndentation = 32001,
        outOutOfMemory = 32002,
        outParentNotExpanded = 32003
    } ErrorConstants;

    typedef enum {
        outClosed = 0,
        outOpen = 1,
        outLeaf = 2
    } PictureTypeConstants;

    [
        uuid(BE4F3AC6-AEC9-101A-947B-00DD010F7B46),
        helpstring("MSOutline Control"),
        helpcontext(0x001eb4ac),
        hidden
    ]
    dispinterface IOutlineCtrl {
    properties:
        [id(00000000), hidden]
        BSTR _Text;
        [id(0x00000001), helpstring("Returns/sets the item delimiter string used when accessing the FullPath property."), helpcontext(0x001eb4ba)]
        BSTR PathSeparator;
        [id(0x00000002), helpstring("Returns/sets the style of graphics and text that appear for each item in the control."), helpcontext(0x001eb4be)]
        StyleConstants Style;
        [id(0x00000003), helpstring("Returns/sets the type of mouse pointer displayed when over part of an object."), helpcontext(0x001ea31c)]
        MousePointerConstants MousePointer;
        [id(0x00000004), helpstring("Returns/sets the picture for an item whose subordinate items can be expanded."), helpcontext(0x001eb4bc)]
        StdType.IPictureDisp* PicturePlus;
        [id(0x00000005), helpstring("Returns/sets the picture for an item whose subordinate items can be collapsed."), helpcontext(0x001eb4bc)]
        StdType.IPictureDisp* PictureMinus;
        [id(0x00000006), helpstring("Returns/sets the type picture associated with the PictureType property."), helpcontext(0x001eb4bb)]
        StdType.IPictureDisp* PictureLeaf;
        [id(0x00000007), helpstring("Returns/sets the type picture associated with the PictureType property."), helpcontext(0x001eb4bb)]
        StdType.IPictureDisp* PictureOpen;
        [id(0x00000008), helpstring("Returns/sets the type picture associated with the PictureType property."), helpcontext(0x001eb4bb)]
        StdType.IPictureDisp* PictureClosed;
        [id(0x00000009), helpstring("Returns/sets the index of the currently selected item in the control."), helpcontext(0x001ea220)]
        short ListIndex;
        [id(0x0000000a), helpstring("Returns/sets the item that appears in the topmost position in the outline control."), helpcontext(0x001eb4bf)]
        short TopIndex;
        [id(0x0000000b), hidden, helpstring("Specifies the name of the font that appears in each row for the given level."), helpcontext(0x001ea331)]
        BSTR FontName;
        [id(0x0000000c), hidden, helpstring("Specifies the size (in points) of the font that appears in each row for the given level."), helpcontext(0x001ea332)]
        float FontSize;
        [id(0x0000000d), hidden, helpstring("Returns/sets bold font styles."), helpcontext(0x001ea330)]
        VARIANT_BOOL FontBold;
        [id(0x0000000e), hidden, helpstring("Returns/sets italic font styles."), helpcontext(0x001eb871)]
        VARIANT_BOOL FontItalic;
        [id(0x0000000f), hidden, helpstring("Returns/sets strikethrough font styles."), helpcontext(0x001eb872)]
        VARIANT_BOOL FontStrikethru;
        [id(0x00000010), hidden, helpstring("Returns/sets underline font styles."), helpcontext(0x001eb873)]
        VARIANT_BOOL FontUnderline;
        [id(0x00000011), helpstring("Returns/sets the text contained in the control."), helpcontext(0x001ea237)]
        BSTR Text;
        [id(0x00000012), helpstring("Returns the number of items in the list portion of a control."), helpcontext(0x001ea21f)]
        short ListCount;
        [id(0x00000013)]
        StdType.IPictureDisp* MouseIcon;
        [id(0x00000014), bindable, requestedit, helpstring("Returns/sets the border style for an object."), helpcontext(0x001ea318)]
        BorderStyleConstants BorderStyle;
        [id(0xfffffe0b), helpstring("Returns/sets the background color used to display text and graphics in an object."), helpcontext(0x001ea317)]
        StdType.OLE_COLOR BackColor;
        [id(0xfffffe00), helpstring("Returns a Font object."), helpcontext(0x001ec15f)]
        StdType.IFontDisp* Font;
        [id(0xfffffdff), helpstring("Returns/sets the foreground color used to display text and graphics in an object."), helpcontext(0x001eb807)]
        StdType.OLE_COLOR ForeColor;
        [id(0xfffffdfd), helpstring("Returns a handle to a form or control."), helpcontext(0x001ea322)]
        StdType.OLE_HANDLE hWnd;
        [id(0xfffffdfe), bindable, requestedit, helpstring("Determines whether a form or control can respond to user-generated events."), helpcontext(0x001ea31e)]
        VARIANT_BOOL Enabled;
    methods:
        [id(0x00000015), helpstring("Clears all property settings of the Err object."), helpcontext(0x001ea3e9)]
        void Clear();
        [id(0x00000016), helpstring("Removes an item and its subordinate items from the control at run time."), helpcontext(0x001eb4c6)]
        void RemoveItem(short Index);
        [id(0x00000017), helpstring("Adds an item to the control at run time."), helpcontext(0x001eb4c5)]
        void AddItem(
            BSTR Item,
            [optional] VARIANT Index);
        [id(0x00000018), propget, helpstring("Determines the items contained in the control’s list portion."), helpcontext(0x001eb4b9)]
        BSTR List(short Index);
        [id(0x00000018), propput, helpstring("Determines the items contained in the control’s list portion."), helpcontext(0x001eb4b9)]
        void List(
            short Index,
            BSTR rhs);
        [id(0x00000019), propget, helpstring("TNUM_NOT_FOUND"), helpcontext(0x001eb4b7)]
        short Indent(short Index);
        [id(0x00000019), propput, helpstring("TNUM_NOT_FOUND"), helpcontext(0x001eb4b7)]
        void Indent(
            short Index,
            short Index);
        [id(0x0000001a), propget, helpstring("Returns the fully qualified name of an item."), helpcontext(0x001eb4b5)]
        BSTR FullPath(short Index);
        [id(0x0000001a), propput, helpstring("Returns the fully qualified name of an item."), helpcontext(0x001eb4b5)]
        void FullPath(
            short Index,
            BSTR rhs);
        [id(0x0000001b), propget, helpstring("Specifies whether an item is expanded (subordinate items are visible)."), helpcontext(0x001eb4b4)]
        VARIANT_BOOL Expand(short Index);
        [id(0x0000001b), propput, helpstring("Specifies whether an item is expanded (subordinate items are visible)."), helpcontext(0x001eb4b4)]
        void Expand(
            short Index,
            VARIANT_BOOL rhs);
        [id(0x0000001c), propget]
        long ItemData(short Index);
        [id(0x0000001c), propput]
        void ItemData(
            short Index,
            long rhs);
        [id(0x0000001d), propget, helpstring("Returns/sets an integer representing the PictureClosed, PictureOpen, or PictureLeaf picture."), helpcontext(0x001eb4bd)]
        short PictureType(short Index);
        [id(0x0000001d), propput, helpstring("Returns/sets an integer representing the PictureClosed, PictureOpen, or PictureLeaf picture."), helpcontext(0x001eb4bd)]
        void PictureType(
            short Index,
            short Index);
        [id(0x0000001e), propget, helpstring("Indicates whether an item has subordinate items."), helpcontext(0x001eb4b6)]
        VARIANT_BOOL HasSubItems(short Index);
        [id(0x0000001e), propput, helpstring("Indicates whether an item has subordinate items."), helpcontext(0x001eb4b6)]
        void HasSubItems(
            short Index,
            VARIANT_BOOL rhs);
        [id(0x0000001f), propget, helpstring("Indicates whether an item is currently visible."), helpcontext(0x001eb4b8)]
        VARIANT_BOOL IsItemVisible(short Index);
        [id(0x0000001f), propput, helpstring("Indicates whether an item is currently visible."), helpcontext(0x001eb4b8)]
        void IsItemVisible(
            short Index,
            VARIANT_BOOL rhs);
        [id(0xfffffdda), helpstring("Forces a complete repaint of a form or control."), helpcontext(0x001e9df3)]
        void Refresh();
        [id(0xfffffdd8)]
        void AboutBox();
    };

    [
        uuid(5FEC78AD-BE49-101A-947B-00DD010F7B46)
    ]
    dispinterface OutlineEvents {
    properties:
    methods:
        [id(0x00000001), helpstring("Occurs when the user presses and then releases a mouse button over an object."), helpcontext(0x001ea31a)]
        void Click();
        [id(0x00000002), helpstring("Occurs whenever an item is collapsed (the subordinate items are hidden)."), helpcontext(0x001eb4c0)]
        void Collapse(short* ListIndex);
        [id(0x00000003), helpstring("Occurs when you press and release a mouse button and then press and release it again over an object."), helpcontext(0x001ea31d)]
        void DblClick();
        [id(0x00000004), helpstring("Occurs whenever a type picture associated with an item is clicked."), helpcontext(0x001eb4c3)]
        void PictureClick(short* ListIndex);
        [id(0x00000005), helpstring("Occurs whenever a type picture associated with an item is double-clicked."), helpcontext(0x001eb4c4)]
        void PictureDblClick(short* ListIndex);
        [id(0x00000006), helpstring("Occurs whenever an item is expanded (the item’s subordinate items are visible)."), helpcontext(0x001eb4c1)]
        void Expand(short* ListIndex);
        [id(0xfffffda6), helpstring("Occurs when the user presses a key while an object has the focus."), helpcontext(0x001eb85c)]
        void KeyDown(
            short KeyCode,
            short Shift);
        [id(0xfffffda5), helpstring("Occurs when the user presses and releases an ANSI key."), helpcontext(0x001eb85e)]
        void KeyPress(short* KeyAscii);
        [id(0xfffffda4), helpstring("Occurs when the user releases a key while an object has the focus."), helpcontext(0x001eb839)]
        void KeyUp(
            short KeyCode,
            short Shift);
        [id(0xfffffda3), helpstring("Occurs when the user presses the mouse button while an object has the focus."), helpcontext(0x001eb860)]
        void MouseDown(
            short Button,
            short Shift,
            StdType.OLE_XPOS_PIXELS X,
            StdType.OLE_YPOS_PIXELS Y);
        [id(0xfffffda2), helpstring("Occurs when the user moves the mouse."), helpcontext(0x001eb862)]
        void MouseMove(
            short Button,
            short Shift,
            StdType.OLE_XPOS_PIXELS X,
            StdType.OLE_YPOS_PIXELS Y);
        [id(0xfffffda1), helpstring("Occurs when the user releases the mouse button while an object has the focus."), helpcontext(0x001eb838)]
        void MouseUp(
            short Button,
            short Shift,
            StdType.OLE_XPOS_PIXELS X,
            StdType.OLE_YPOS_PIXELS Y);
    };

    [
        uuid(BE4F3AC5-AEC9-101A-947B-00DD010F7B46),
        helpcontext(0x001eb4ac),
        licensed,
        control
    ]
    coclass Outline {
        [default] dispinterface IOutlineCtrl;
        [default, source] dispinterface OutlineEvents;
    };

};