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.

88 lines
3.1 KiB

  1. /******************************************************************************
  2. Copyright (c) 2001 Microsoft Corporation
  3. Module Name:
  4. Toolbar.cpp
  5. Abstract:
  6. This file contains the declaration of the ActiveX control that makes Win32 ProgressBars available to HTML.
  7. Revision History:
  8. Davide Massarenti (Dmassare) 03/04/2001
  9. created
  10. ******************************************************************************/
  11. #if !defined(__INCLUDED___PCH___HTMLPROGRESSBAR_H___)
  12. #define __INCLUDED___PCH___HTMLPROGRESSBAR_H___
  13. #include <HelpCenter.h>
  14. class ATL_NO_VTABLE CPCHProgressBar :
  15. public CComObjectRootEx<CComSingleThreadModel>,
  16. public CStockPropImpl <CPCHProgressBar, IPCHProgressBar, &IID_IPCHProgressBar, &LIBID_HelpCenterTypeLib>,
  17. public CComControl <CPCHProgressBar>,
  18. public IPersistPropertyBagImpl <CPCHProgressBar>,
  19. public IOleControlImpl <CPCHProgressBar>,
  20. public IOleObjectImpl <CPCHProgressBar>,
  21. public IOleInPlaceActiveObjectImpl <CPCHProgressBar>,
  22. public IViewObjectExImpl <CPCHProgressBar>,
  23. public IOleInPlaceObjectWindowlessImpl<CPCHProgressBar>,
  24. public CComCoClass <CPCHProgressBar, &CLSID_PCHProgressBar>
  25. {
  26. HWND m_hwndPB;
  27. long m_lLowLimit;
  28. long m_lHighLimit;
  29. long m_lPos;
  30. ////////////////////////////////////////
  31. public:
  32. DECLARE_NO_REGISTRY()
  33. DECLARE_NOT_AGGREGATABLE(CPCHProgressBar)
  34. DECLARE_PROTECT_FINAL_CONSTRUCT()
  35. BEGIN_COM_MAP(CPCHProgressBar)
  36. COM_INTERFACE_ENTRY(IPCHProgressBar)
  37. COM_INTERFACE_ENTRY2(IDispatch, IPCHProgressBar)
  38. COM_INTERFACE_ENTRY(IViewObjectEx)
  39. COM_INTERFACE_ENTRY(IViewObject2)
  40. COM_INTERFACE_ENTRY(IViewObject)
  41. COM_INTERFACE_ENTRY(IOleInPlaceObjectWindowless)
  42. COM_INTERFACE_ENTRY(IOleInPlaceObject)
  43. COM_INTERFACE_ENTRY2(IOleWindow, IOleInPlaceObjectWindowless)
  44. COM_INTERFACE_ENTRY(IOleInPlaceActiveObject)
  45. COM_INTERFACE_ENTRY(IOleControl)
  46. COM_INTERFACE_ENTRY(IOleObject)
  47. COM_INTERFACE_ENTRY(IPersistPropertyBag)
  48. COM_INTERFACE_ENTRY2(IPersist, IPersistPropertyBag)
  49. END_COM_MAP()
  50. BEGIN_PROP_MAP(CPCHProgressBar)
  51. PROP_ENTRY("LowLimit" , DISPID_PCH_PB__LOWLIMIT , CLSID_NULL)
  52. PROP_ENTRY("HighLimit", DISPID_PCH_PB__HIGHLIMIT, CLSID_NULL)
  53. END_PROP_MAP()
  54. CPCHProgressBar();
  55. BOOL ProcessWindowMessage( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT& lResult, DWORD dwMsgMapID = 0 );
  56. // IViewObjectEx
  57. DECLARE_VIEW_STATUS(0)
  58. // IPCHProgressBar
  59. public:
  60. STDMETHOD(get_LowLimit )( /*[out, retval]*/ long * pVal );
  61. STDMETHOD(put_LowLimit )( /*[in ]*/ long newVal );
  62. STDMETHOD(get_HighLimit)( /*[out, retval]*/ long * pVal );
  63. STDMETHOD(put_HighLimit)( /*[in ]*/ long newVal );
  64. STDMETHOD(get_Pos )( /*[out, retval]*/ long * pVal );
  65. STDMETHOD(put_Pos )( /*[in ]*/ long newVal );
  66. };
  67. /////////////////////////////////////////////////////////////////////////////
  68. #endif // !defined(__INCLUDED___PCH___HTMLPROGRESSBAR_H___)