Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

62 lines
1.7 KiB

// StatusProgress.h : Declaration of the CStatusProgress
#ifndef __STATUSPROGRESS_H_
#define __STATUSPROGRESS_H_
#include "resource.h" // main symbols
#define WM_KILLTIMER WM_USER + 10
#define WM_STARTTIMER WM_USER + 11
#define WM_UPDATEOVERALLPROGRESS WM_USER + 12
/////////////////////////////////////////////////////////////////////////////
// CStatusProgress
class ATL_NO_VTABLE CStatusProgress :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CStatusProgress, &CLSID_StatusProgress>,
public IDispatchImpl<IStatusProgress, &IID_IStatusProgress, &LIBID_WIZCHAINLib>
{
public:
CStatusProgress() : m_pdispSD(NULL),
m_hWndProgress(NULL),
m_bOverallProgress(FALSE)
{
}
~CStatusProgress()
{
if (m_pdispSD)
m_pdispSD->Release();
}
DECLARE_REGISTRY_RESOURCEID(IDR_STATUSPROGRESS)
DECLARE_PROTECT_FINAL_CONSTRUCT()
BEGIN_COM_MAP(CStatusProgress)
COM_INTERFACE_ENTRY(IStatusProgress)
COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()
// IStatusProgress
public:
STDMETHOD(put_Text)(/*[in]*/ BSTR newVal);
HRESULT Initialize(IDispatch * pdispSD, HWND hWnd, BOOL bOverallProgress);
STDMETHOD(StepIt) ( long lSteps );
STDMETHOD(put_Step) ( long newVal );
STDMETHOD(put_Range) ( long newVal );
STDMETHOD(get_Range) ( long* pVal );
STDMETHOD(put_Position) ( long newVal );
STDMETHOD(get_Position) ( long* pVal );
STDMETHOD(EnableOnTimerProgress)( BOOL bEnable, long lFrequency, long lMaxSteps );
private:
IDispatch * m_pdispSD;
HWND m_hWndProgress;
BOOL m_bOverallProgress;
};
#endif //__STATUSPROGRESS_H_