/* This header file machine-generated by mktyplib.exe */
/* Interface to type library: VBIDE */

#ifndef _VBIDE_H_
#define _VBIDE_H_

DEFINE_GUID(LIBID_VBIDE,0xEF404E00L,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

interface FormTemplate;

interface SelectedComponents;

interface Components;

interface Component;

interface Properties;

interface ControlTemplate;

interface ControlTemplates;

interface SelectedControlTemplates;

interface _ProjectTemplate;

interface _MenuLine;

interface SubMenu;

interface _FileControl;

DEFINE_GUID(IID_Application,0xEF404E01L,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: Application */
#undef INTERFACE
#define INTERFACE Application

DECLARE_INTERFACE_(Application, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* Application methods */
    STDMETHOD(get_Name)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_FullName)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(get_LastUsedPath)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(put_LastUsedPath)(THIS_ BSTR bstrNewPath) PURE;
    STDMETHOD(get_Version)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(get_ActiveProject)(THIS_ _ProjectTemplate FAR* FAR* lppptReturn) PURE;
    STDMETHOD(get_FileControl)(THIS_ _FileControl FAR* FAR* lppfcReturn) PURE;
    STDMETHOD(get_AddInMenu)(THIS_ SubMenu FAR* FAR* lppmReturn) PURE;
    STDMETHOD(LoadProject)(THIS_ BSTR FileName, VARIANT_BOOL ReplaceCurrent, _ProjectTemplate FAR* FAR* lppptReturn) PURE;
    STDMETHOD(get_ReadOnlyMode)(THIS_ short FAR* pReadOnlyMode) PURE;
    STDMETHOD(put_ReadOnlyMode)(THIS_ short ReadOnlyMode) PURE;
};

typedef enum vbextFileTypes {
    vbextFileTypeForm = 0,
    vbextFileTypeModule = 1,
    vbextFileTypeClass = 2,
    vbextFileTypeProject = 3,
    vbextFileTypeExe = 4,
    vbextFileTypeFrx = 5,
    vbextFileTypeRes = 6
} vbextFileTypes;

typedef enum vbextWrite {
    vbextWriteSuccess = 0,
    vbextWriteCancelled = 1,
    vbextWriteFailed = 2
} vbextWrite;

typedef enum vbextAddInRemove {
    vbextAddInRemoveExit = 0,
    vbextAddInRemoveUser = 1
} vbextAddInRemove;

DEFINE_GUID(IID__FileControl,0xEF404E08L,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: _FileControl */
#undef INTERFACE
#define INTERFACE _FileControl

DECLARE_INTERFACE_(_FileControl, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* _FileControl methods */
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(ConnectEvents)(THIS_ IDispatch * pdspSink, long FAR* lplReturn) PURE;
    STDMETHOD(DisconnectEvents)(THIS_ long hConnection) PURE;
};

DEFINE_GUID(DIID_FileControlEvents,0xEF404E0AL,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of dispatch interface: FileControlEvents */
#undef INTERFACE
#define INTERFACE FileControlEvents

DECLARE_INTERFACE_(FileControlEvents, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* FileControlEvents methods:
    void AfterAddFile(BSTR FileName);
    void AfterChangeFileName(short FileType, BSTR NewName, BSTR OldName);
    void AfterCloseFile(SAFEARRAY FAR* FileNames);
    void AfterWriteFile(BSTR FileName, short Result);
    void AfterRemoveFile(BSTR FileName);
    void BeforeLoadFile(SAFEARRAY FAR* FileNames);
    void DoGetAddFileName(SAFEARRAY FAR* FileNames, VARIANT_BOOL FAR* CancelDefault);
    void DoGetNewFileName(short FileType, BSTR FAR* NewName, BSTR OldName, VARIANT_BOOL FAR* CancelDefault);
    void DoGetOpenProjectName(BSTR FAR* ProjectName, VARIANT_BOOL FAR* CancelDefault);
    void RequestChangeFileName(short FileType, BSTR NewName, BSTR OldName, VARIANT_BOOL FAR* Cancel);
    void RequestWriteFile(BSTR FileName, VARIANT_BOOL FAR* Cancel);
    void AfterNewProject(BSTR ProjectName);
    */
};

DEFINE_GUID(CLSID_FileControl,0xEF404E0BL,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

#ifdef __cplusplus
class FileControl;
#endif

DEFINE_GUID(IID_MenuItems,0xEF404E12L,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: MenuItems */
#undef INTERFACE
#define INTERFACE MenuItems

DECLARE_INTERFACE_(MenuItems, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* MenuItems methods */
    STDMETHOD(Item)(THIS_ BSTR Index, IDispatch * FAR* lppidReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ IDispatch * FAR* lppidReturn) PURE;
    STDMETHOD(_NewEnum)(THIS_ IUnknown * FAR* lppiuReturn) PURE;
    STDMETHOD(get_Count)(THIS_ long FAR* lplReturn) PURE;
    STDMETHOD(Add)(THIS_ BSTR bstrCaption, _MenuLine FAR* FAR* lppmlReturn) PURE;
    STDMETHOD(AddMenu)(THIS_ BSTR bstrCaption, SubMenu FAR* FAR* lppmReturn) PURE;
    STDMETHOD(Remove)(THIS_ IDispatch * MenuItem, long FAR* lpsReturn) PURE;
};

DEFINE_GUID(IID_SubMenu,0xEF404E15L,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: SubMenu */
#undef INTERFACE
#define INTERFACE SubMenu

DECLARE_INTERFACE_(SubMenu, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* SubMenu methods */
    STDMETHOD(get_MenuItems)(THIS_ MenuItems FAR* FAR* lppmiReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ MenuItems FAR* FAR* lppmiReturn) PURE;
    STDMETHOD(get_Caption)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(put_Caption)(THIS_ BSTR bstrCaption) PURE;
    STDMETHOD(get_Enabled)(THIS_ VARIANT_BOOL FAR* lpfReturn) PURE;
    STDMETHOD(put_Enabled)(THIS_ VARIANT_BOOL sEnabled) PURE;
};

DEFINE_GUID(IID__MenuLine,0xEF404E18L,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: _MenuLine */
#undef INTERFACE
#define INTERFACE _MenuLine

DECLARE_INTERFACE_(_MenuLine, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* _MenuLine methods */
    STDMETHOD(get_Caption)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(put_Caption)(THIS_ BSTR bstrCaption) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ MenuItems FAR* FAR* lppmiReturn) PURE;
    STDMETHOD(get_Enabled)(THIS_ VARIANT_BOOL FAR* lpfReturn) PURE;
    STDMETHOD(put_Enabled)(THIS_ VARIANT_BOOL sEnabled) PURE;
    STDMETHOD(get_Checked)(THIS_ VARIANT_BOOL FAR* lpfReturn) PURE;
    STDMETHOD(put_Checked)(THIS_ VARIANT_BOOL fChecked) PURE;
    STDMETHOD(get_HelpContextID)(THIS_ long FAR* lplReturn) PURE;
    STDMETHOD(put_HelpContextID)(THIS_ long ulHelpID) PURE;
    STDMETHOD(get_HelpFile)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(put_HelpFile)(THIS_ BSTR bstrFileName) PURE;
    STDMETHOD(ConnectEvents)(THIS_ IDispatch * pdspSink, long FAR* lplReturn) PURE;
    STDMETHOD(DisconnectEvents)(THIS_ long hConnection) PURE;
};

DEFINE_GUID(DIID_MenuLineEvents,0xEF404E1AL,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of dispatch interface: MenuLineEvents */
#undef INTERFACE
#define INTERFACE MenuLineEvents

DECLARE_INTERFACE_(MenuLineEvents, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* MenuLineEvents methods:
    void AfterClick(void);
    */
};

DEFINE_GUID(CLSID_MenuLine,0xEF404E1BL,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

#ifdef __cplusplus
class MenuLine;
#endif

DEFINE_GUID(IID__ProjectTemplate,0xEF404E22L,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: _ProjectTemplate */
#undef INTERFACE
#define INTERFACE _ProjectTemplate

DECLARE_INTERFACE_(_ProjectTemplate, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* _ProjectTemplate methods */
    STDMETHOD(get_ActiveForm)(THIS_ FormTemplate FAR* FAR* lppftReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_SelectedComponents)(THIS_ SelectedComponents FAR* FAR* lppscReturn) PURE;
    STDMETHOD(AddFile)(THIS_ BSTR FileName, BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(RemoveComponent)(THIS_ Component FAR* Comp, VARIANT_BOOL Save, VARIANT_BOOL FAR* lpfReturn) PURE;
    STDMETHOD(AddReference)(THIS_ VARIANT Guid, VARIANT VerMajor, VARIANT VerMinor, VARIANT FileName) PURE;
    STDMETHOD(AddToolboxTypelib)(THIS_ BSTR Guid, short MajorVersion, short MinorVersion, VARIANT FileName) PURE;
    STDMETHOD(AddToolboxProgID)(THIS_ BSTR ProgID, VARIANT FileName) PURE;
    STDMETHOD(AddToolboxVBX)(THIS_ BSTR FileName) PURE;
    STDMETHOD(AddFormTemplate)(THIS_ FormTemplate FAR* FAR* lppftReturn) PURE;
    STDMETHOD(AddMDIFormTemplate)(THIS_ FormTemplate FAR* FAR* lppftReturn) PURE;
    STDMETHOD(get_FileName)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(get_IsDirty)(THIS_ VARIANT_BOOL FAR* lpfReturn) PURE;
    STDMETHOD(put_IsDirty)(THIS_ VARIANT_BOOL Dirty) PURE;
    STDMETHOD(WriteProperty)(THIS_ BSTR Section, BSTR Key, BSTR Value) PURE;
    STDMETHOD(ReadProperty)(THIS_ BSTR Section, BSTR Key, BSTR FAR* lpbstrValue) PURE;
    STDMETHOD(ConnectEvents)(THIS_ IDispatch * pdspSink, long FAR* lplReturn) PURE;
    STDMETHOD(DisconnectEvents)(THIS_ long hConnection) PURE;
    STDMETHOD(get_Components)(THIS_ Components FAR* FAR* lppcReturn) PURE;
};

DEFINE_GUID(DIID_ProjectTemplateEvents,0x31DE1170L,0x1602,0x11CE,0xBF,0xDC,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of dispatch interface: ProjectTemplateEvents */
#undef INTERFACE
#define INTERFACE ProjectTemplateEvents

DECLARE_INTERFACE_(ProjectTemplateEvents, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* ProjectTemplateEvents methods:
    void CheckIn(void);
    void CheckOut(void);
    void Fetch(void);
    void UncheckOut(void);
    */
};

DEFINE_GUID(CLSID_ProjectTemplate,0x32CDF9E0L,0x1602,0x11CE,0xBF,0xDC,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

#ifdef __cplusplus
class ProjectTemplate;
#endif

DEFINE_GUID(IID_SelectedComponents,0xEF404E1CL,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: SelectedComponents */
#undef INTERFACE
#define INTERFACE SelectedComponents

DECLARE_INTERFACE_(SelectedComponents, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* SelectedComponents methods */
    STDMETHOD(Item)(THIS_ int index, Component FAR* FAR* lppcReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ _ProjectTemplate FAR* FAR* lppptReturn) PURE;
    STDMETHOD(get_Count)(THIS_ long FAR* lplReturn) PURE;
    STDMETHOD(_NewEnum)(THIS_ IUnknown * FAR* lppiuReturn) PURE;
};

DEFINE_GUID(IID_Components,0x2F3304A0L,0x1602,0x11CE,0xBF,0xDC,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of interface: Components */
#undef INTERFACE
#define INTERFACE Components

DECLARE_INTERFACE_(Components, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* Components methods */
    STDMETHOD(Item)(THIS_ VARIANT index, Component FAR* FAR* lppcReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ _ProjectTemplate FAR* FAR* lppptReturn) PURE;
    STDMETHOD(get_Count)(THIS_ long FAR* lplReturn) PURE;
    STDMETHOD(_NewEnum)(THIS_ IUnknown * FAR* lppiuReturn) PURE;
};

typedef enum vbextSCCStatus {
    vbextSCCStatusNotControlled = 0,
    vbextSCCStatusControlled = 1,
    vbextSCCStatusCheckedOut = 2,
    vbextSCCStatusOutOther = 4,
    vbextSCCStatusOutOfDate = 32,
    vbextSCCStatusShared = 512
} vbextSCCStatus;

DEFINE_GUID(IID_Component,0xEF404E1FL,0xEDA6,0x101A,0x8D,0xAF,0x00,0xDD,0x01,0x0F,0x7E,0xBB);

/* Definition of interface: Component */
#undef INTERFACE
#define INTERFACE Component

DECLARE_INTERFACE_(Component, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* Component methods */
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ Components FAR* FAR* lppcReturn) PURE;
    STDMETHOD(get_IsDirty)(THIS_ VARIANT_BOOL FAR* lpfReturn) PURE;
    STDMETHOD(get_FileNames)(THIS_ short Index, BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(SaveAs)(THIS_ BSTR NewFileName, VARIANT_BOOL FAR* lpfReturn) PURE;
    STDMETHOD(get_FileCount)(THIS_ short FAR* lpsReturn) PURE;
    STDMETHOD(get_IconState)(THIS_ long FAR* lpulReturn) PURE;
    STDMETHOD(put_IconState)(THIS_ long Value) PURE;
    STDMETHOD(InsertFile)(THIS_ BSTR FileName) PURE;
    STDMETHOD(Reload)(THIS) PURE;
    STDMETHOD(get_Name)(THIS_ BSTR FAR* pbstrReturn) PURE;
};

DEFINE_GUID(IID_FormTemplate,0x79B1F921L,0xEC2C,0x101A,0xB1,0xF9,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of interface: FormTemplate */
#undef INTERFACE
#define INTERFACE FormTemplate

DECLARE_INTERFACE_(FormTemplate, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* FormTemplate methods */
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ _ProjectTemplate FAR* FAR* lppptReturn) PURE;
    STDMETHOD(get_SelectedControlTemplates)(THIS_ SelectedControlTemplates FAR* FAR* lppsctReturn) PURE;
    STDMETHOD(get_ControlTemplates)(THIS_ ControlTemplates FAR* FAR* lppctReturn) PURE;
    STDMETHOD(get_Properties)(THIS_ Properties FAR* FAR* lpppReturn) PURE;
    STDMETHOD(AddMenuTemplate)(THIS_ BSTR Name, ControlTemplate FAR* Parent, ControlTemplate FAR* FAR* lppctReturn) PURE;
    STDMETHOD(InsertFile)(THIS_ BSTR FileName) PURE;
};

DEFINE_GUID(IID_ControlTemplate,0x79B1F922L,0xEC2C,0x101A,0xB1,0xF9,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of interface: ControlTemplate */
#undef INTERFACE
#define INTERFACE ControlTemplate

DECLARE_INTERFACE_(ControlTemplate, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* ControlTemplate methods */
    STDMETHOD(get_ClassName)(THIS_ BSTR FAR* lpbstrReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ ControlTemplates FAR* FAR* lppctReturn) PURE;
    STDMETHOD(get_Container)(THIS_ IDispatch * FAR* lppidReturn) PURE;
    STDMETHOD(putref_Container)(THIS_ IDispatch * NewContainer) PURE;
    STDMETHOD(get_Properties)(THIS_ Properties FAR* FAR* lpppReturn) PURE;
    STDMETHOD(ZOrder)(THIS_ int Position, ControlTemplate FAR* FAR* lppctReturn) PURE;
};

DEFINE_GUID(IID_Property,0x79B1F923L,0xEC2C,0x101A,0xB1,0xF9,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of interface: Property */
#undef INTERFACE
#define INTERFACE Property

DECLARE_INTERFACE_(Property, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* Property methods */
    STDMETHOD(get_Value)(THIS_ VARIANT FAR* lppvReturn) PURE;
    STDMETHOD(put_Value)(THIS_ VARIANT NewValue) PURE;
    STDMETHOD(get_IndexedValue)(THIS_ VARIANT Index1, VARIANT Index2, VARIANT Index3, VARIANT Index4, VARIANT FAR* lppvReturn) PURE;
    STDMETHOD(put_IndexedValue)(THIS_ VARIANT Index1, VARIANT Index2, VARIANT Index3, VARIANT Index4, VARIANT NewValue) PURE;
    STDMETHOD(get_NumIndices)(THIS_ short FAR* lpiRetVal) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lpaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ Properties FAR* FAR* lpppReturn) PURE;
    STDMETHOD(get_Name)(THIS_ BSTR FAR* lpbstrReturn) PURE;
};

DEFINE_GUID(IID_Properties,0x79B1F925L,0xEC2C,0x101A,0xB1,0xF9,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of interface: Properties */
#undef INTERFACE
#define INTERFACE Properties

DECLARE_INTERFACE_(Properties, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* Properties methods */
    STDMETHOD(Item)(THIS_ VARIANT index, Property FAR* FAR* lplppReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lppaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ IDispatch * FAR* lppidReturn) PURE;
    STDMETHOD(get_Count)(THIS_ long FAR* lplReturn) PURE;
    STDMETHOD(_NewEnum)(THIS_ IUnknown * FAR* lppiuReturn) PURE;
};

DEFINE_GUID(IID_ControlTemplates,0x79B1F924L,0xEC2C,0x101A,0xB1,0xF9,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of interface: ControlTemplates */
#undef INTERFACE
#define INTERFACE ControlTemplates

DECLARE_INTERFACE_(ControlTemplates, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* ControlTemplates methods */
    STDMETHOD(Item)(THIS_ VARIANT Item, VARIANT Index, ControlTemplate FAR* FAR* lppctReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lpaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ FormTemplate FAR* FAR* lppftReturn) PURE;
    STDMETHOD(get_Count)(THIS_ long FAR* lplReturn) PURE;
    STDMETHOD(Add)(THIS_ BSTR ClassName, VARIANT Container, ControlTemplate FAR* FAR* lppctReturn) PURE;
    STDMETHOD(_NewEnum)(THIS_ IUnknown * FAR* lppiuReturn) PURE;
};

DEFINE_GUID(IID_SelectedControlTemplates,0x79B1F926L,0xEC2C,0x101A,0xB1,0xF9,0x08,0x00,0x2B,0x2B,0x8C,0xDA);

/* Definition of interface: SelectedControlTemplates */
#undef INTERFACE
#define INTERFACE SelectedControlTemplates

DECLARE_INTERFACE_(SelectedControlTemplates, IDispatch)
{
#ifndef NO_BASEINTERFACE_FUNCS

    /* IUnknown methods */
    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    STDMETHOD_(ULONG, Release)(THIS) PURE;

    /* IDispatch methods */
    STDMETHOD(GetTypeInfoCount)(THIS_ UINT FAR* pctinfo) PURE;

    STDMETHOD(GetTypeInfo)(
      THIS_
      UINT itinfo,
      LCID lcid,
      ITypeInfo FAR* FAR* pptinfo) PURE;

    STDMETHOD(GetIDsOfNames)(
      THIS_
      REFIID riid,
      OLECHAR FAR* FAR* rgszNames,
      UINT cNames,
      LCID lcid,
      DISPID FAR* rgdispid) PURE;

    STDMETHOD(Invoke)(
      THIS_
      DISPID dispidMember,
      REFIID riid,
      LCID lcid,
      WORD wFlags,
      DISPPARAMS FAR* pdispparams,
      VARIANT FAR* pvarResult,
      EXCEPINFO FAR* pexcepinfo,
      UINT FAR* puArgErr) PURE;
#endif

    /* SelectedControlTemplates methods */
    STDMETHOD(Item)(THIS_ long Item, ControlTemplate FAR* FAR* lppctReturn) PURE;
    STDMETHOD(get_Application)(THIS_ Application FAR* FAR* lpaReturn) PURE;
    STDMETHOD(get_Parent)(THIS_ FormTemplate FAR* FAR* lppftReturn) PURE;
    STDMETHOD(get_Count)(THIS_ long FAR* lplReturn) PURE;
    STDMETHOD(_NewEnum)(THIS_ IUnknown * FAR* lppiuReturn) PURE;
};

typedef enum vbextMenuShortcut {
    vbextMenuShortcutCtrlA = 1,
    vbextMenuShortcutCtrlB = 2,
    vbextMenuShortcutCtrlC = 3,
    vbextMenuShortcutCtrlD = 4,
    vbextMenuShortcutCtrlE = 5,
    vbextMenuShortcutCtrlF = 6,
    vbextMenuShortcutCtrlG = 7,
    vbextMenuShortcutCtrlH = 8,
    vbextMenuShortcutCtrlI = 9,
    vbextMenuShortcutCtrlJ = 10,
    vbextMenuShortcutCtrlK = 11,
    vbextMenuShortcutCtrlL = 12,
    vbextMenuShortcutCtrlM = 13,
    vbextMenuShortcutCtrlN = 14,
    vbextMenuShortcutCtrlO = 15,
    vbextMenuShortcutCtrlP = 16,
    vbextMenuShortcutCtrlQ = 17,
    vbextMenuShortcutCtrlR = 18,
    vbextMenuShortcutCtrlS = 19,
    vbextMenuShortcutCtrlT = 20,
    vbextMenuShortcutCtrlU = 21,
    vbextMenuShortcutCtrlV = 22,
    vbextMenuShortcutCtrlW = 23,
    vbextMenuShortcutCtrlX = 24,
    vbextMenuShortcutCtrlY = 25,
    vbextMenuShortcutCtrlZ = 26,
    vbextMenuShortcutF1 = 27,
    vbextMenuShortcutF2 = 28,
    vbextMenuShortcutF3 = 29,
    vbextMenuShortcutF4 = 30,
    vbextMenuShortcutF5 = 31,
    vbextMenuShortcutF6 = 32,
    vbextMenuShortcutF7 = 33,
    vbextMenuShortcutF8 = 34,
    vbextMenuShortcutF9 = 35,
    vbextMenuShortcutF11 = 37,
    vbextMenuShortcutF12 = 38,
    vbextMenuShortcutCtrlF1 = 39,
    vbextMenuShortcutCtrlF2 = 40,
    vbextMenuShortcutCtrlF3 = 41,
    vbextMenuShortcutCtrlF4 = 42,
    vbextMenuShortcutCtrlF5 = 43,
    vbextMenuShortcutCtrlF6 = 44,
    vbextMenuShortcutCtrlF7 = 45,
    vbextMenuShortcutCtrlF8 = 46,
    vbextMenuShortcutCtrlF9 = 47,
    vbextMenuShortcutCtrlF11 = 49,
    vbextMenuShortcutCtrlF12 = 50,
    vbextMenuShortcutShiftF1 = 51,
    vbextMenuShortcutShiftF2 = 52,
    vbextMenuShortcutShiftF3 = 53,
    vbextMenuShortcutShiftF4 = 54,
    vbextMenuShortcutShiftF5 = 55,
    vbextMenuShortcutShiftF6 = 56,
    vbextMenuShortcutShiftF7 = 57,
    vbextMenuShortcutShiftF8 = 58,
    vbextMenuShortcutShiftF9 = 59,
    vbextMenuShortcutShiftF11 = 61,
    vbextMenuShortcutShiftF12 = 62,
    vbextMenuShortcutCtrlShiftF1 = 63,
    vbextMenuShortcutCtrlShiftF2 = 64,
    vbextMenuShortcutCtrlShiftF3 = 65,
    vbextMenuShortcutCtrlShiftF4 = 66,
    vbextMenuShortcutCtrlShiftF5 = 67,
    vbextMenuShortcutCtrlShiftF6 = 68,
    vbextMenuShortcutCtrlShiftF7 = 69,
    vbextMenuShortcutCtrlShiftF8 = 70,
    vbextMenuShortcutCtrlShiftF9 = 71,
    vbextMenuShortcutCtrlShiftF11 = 73,
    vbextMenuShortcutCtrlShiftF12 = 74,
    vbextMenuShortcutCtrlIns = 75,
    vbextMenuShortcutShiftIns = 76,
    vbextMenuShortcutDel = 77,
    vbextMenuShortcutShiftDel = 78,
    vbextMenuShortcutAltBksp = 79
} vbextMenuShortcut;

#endif
