Source code of Windows XP (NT5)
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.

61 lines
1.8 KiB

  1. // EchoPage.h : Declaration of the CEchoPage
  2. #ifndef __ECHOPAGE_H_
  3. #define __ECHOPAGE_H_
  4. #include "resource.h" // main symbols
  5. #include "..\tools.h"
  6. #include "ControlHelp.h"
  7. EXTERN_C const CLSID CLSID_EchoPage;
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CEchoPage
  10. class ATL_NO_VTABLE CEchoPage :
  11. public CComObjectRootEx<CComSingleThreadModel>,
  12. public CComCoClass<CEchoPage, &CLSID_EchoPage>,
  13. public IPropertyPageImpl<CEchoPage>,
  14. public CDialogImpl<CEchoPage>
  15. {
  16. public:
  17. CEchoPage();
  18. virtual ~CEchoPage();
  19. enum {IDD = IDD_ECHOPAGE};
  20. DECLARE_REGISTRY_RESOURCEID(IDR_ECHOPAGE)
  21. DECLARE_PROTECT_FINAL_CONSTRUCT()
  22. BEGIN_COM_MAP(CEchoPage)
  23. COM_INTERFACE_ENTRY(IPropertyPage)
  24. END_COM_MAP()
  25. BEGIN_MSG_MAP(CEchoPage)
  26. MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog);
  27. MESSAGE_HANDLER(WM_COMMAND, OnCommand);
  28. MESSAGE_HANDLER(WM_HSCROLL, OnSlider);
  29. CHAIN_MSG_MAP(IPropertyPageImpl<CEchoPage>)
  30. END_MSG_MAP()
  31. // Handler prototypes:
  32. LRESULT OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  33. LRESULT OnSlider(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  34. LRESULT OnCommand(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  35. // LRESULT CommandHandler(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled);
  36. // LRESULT NotifyHandler(int idCtrl, LPNMHDR pnmh, BOOL& bHandled);
  37. STDMETHOD(SetObjects)(ULONG cObjects,IUnknown **ppUnk);
  38. STDMETHOD(Apply)(void);
  39. private:
  40. void SetTimeUnitRange();
  41. IDirectMusicEchoTool *m_pEcho;
  42. CSliderValue m_ctRepeat;
  43. CSliderValue m_ctDecay;
  44. CSliderValue m_ctDelay;
  45. CSliderValue m_ctOffset;
  46. CComboHelp m_ctTimeUnit;
  47. CComboHelp m_ctType;
  48. };
  49. #endif //__ECHOPAGE_H_