00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
#ifndef ___bindstatuscallback_h___
00033
#define ___bindstatuscallback_h___
00034
00035
class CXMLDOMDocument;
00036
00038
00039 class ATL_NO_VTABLE CBindStatCallback :
00040
public CComObjectRootEx<CComSingleThreadModel>,
00041
public IBindStatusCallback
00042 {
00043
public:
00044 CBindStatCallback()
00045 :m_pDoc(
NULL)
00046 {
00047 }
00048
00049 DECLARE_NOT_AGGREGATABLE(CBindStatCallback)
00050
00051 DECLARE_PROTECT_FINAL_CONSTRUCT()
00052
00053 BEGIN_COM_MAP(CBindStatCallback)
00054 COM_INTERFACE_ENTRY(IBindStatusCallback)
00055 END_COM_MAP()
00056
00057
00058 public:
00059 STDMETHOD(OnStartBinding)(DWORD dwReserved, IBinding *pBinding);
00060 STDMETHOD(GetPriority)(LONG *pnPriority);
00061 STDMETHOD(OnLowResource)(DWORD reserved);
00062 STDMETHOD(OnProgress)(ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText);
00063 STDMETHOD(OnStopBinding)(HRESULT hresult, LPCWSTR szError);
00064 STDMETHOD(GetBindInfo)(DWORD *pgrfBINDF, BINDINFO *pbindInfo);
00065 STDMETHOD(OnDataAvailable)(DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed);
00066 STDMETHOD(OnObjectAvailable)(REFIID riid, IUnknown *punk);
00067
00068 CXMLDOMDocument *m_pDoc;
00069 };
00070
00071 typedef CComObject<CBindStatCallback>
CBindStatCallbackObj;
00072
00073 #endif