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

#ifndef _WebImageObjects_H_
#define _WebImageObjects_H_

DEFINE_GUID(LIBID_WebImageObjects,0xB92BB5C0L,0x2E73,0x11CF,0xB6,0xCF,0x00,0xAA,0x00,0xA7,0x4D,0xAF);
#ifndef BEGIN_INTERFACE
#define BEGIN_INTERFACE
#endif

DEFINE_GUID(IID_IWebImage,0xBB1A1840L,0x2E73,0x11CF,0xB6,0xCF,0x00,0xAA,0x00,0xA7,0x4D,0xAF);

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

DECLARE_INTERFACE_(IWebImage, IDispatch)
{
BEGIN_INTERFACE
#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

    /* IWebImage methods */
    STDMETHOD(get_Image)(THIS_ BSTR FAR* path) PURE;
    STDMETHOD(put_Image)(THIS_ BSTR path) PURE;
    STDMETHOD_(void, AboutBox)(THIS) PURE;
    STDMETHOD(Scramble)(THIS) PURE;
};

DEFINE_GUID(DIID_DWebImageEvents,0xBBCB18C0L,0x2E73,0x11CF,0xB6,0xCF,0x00,0xAA,0x00,0xA7,0x4D,0xAF);

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

DECLARE_INTERFACE_(DWebImageEvents, IDispatch)
{
BEGIN_INTERFACE
#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

    /* DWebImageEvents methods:
    void OnProgress(long percentDone);
    */
};

DEFINE_GUID(CLSID_WebImage,0xBD11A280L,0x2E73,0x11CF,0xB6,0xCF,0x00,0xAA,0x00,0xA7,0x4D,0xAF);

#ifdef __cplusplus
class WebImage;
#endif

#endif
