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.

61 lines
2.1 KiB

  1. // DirectSoundFXEchoPage.h : Declaration of the CDirectSoundFXEchoPage
  2. #ifndef __DIRECTSOUNDFXECHOPAGE_H_
  3. #define __DIRECTSOUNDFXECHOPAGE_H_
  4. #include "resource.h" // main symbols
  5. #include <dsound.h>
  6. #include "ControlHelp.h"
  7. EXTERN_C const CLSID CLSID_DirectSoundFXEchoPage;
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CDirectSoundFXEchoPage
  10. class ATL_NO_VTABLE CDirectSoundFXEchoPage :
  11. public CComObjectRootEx<CComSingleThreadModel>,
  12. public CComCoClass<CDirectSoundFXEchoPage, &CLSID_DirectSoundFXEchoPage>,
  13. public IPropertyPageImpl<CDirectSoundFXEchoPage>,
  14. public CDialogImpl<CDirectSoundFXEchoPage>
  15. {
  16. public:
  17. CDirectSoundFXEchoPage();
  18. enum {IDD = IDD_DIRECTSOUNDFXECHOPAGE};
  19. DECLARE_REGISTRY_RESOURCEID(IDR_DIRECTSOUNDFXECHOPAGE)
  20. DECLARE_PROTECT_FINAL_CONSTRUCT()
  21. BEGIN_COM_MAP(CDirectSoundFXEchoPage)
  22. COM_INTERFACE_ENTRY(IPropertyPage)
  23. END_COM_MAP()
  24. BEGIN_MSG_MAP(CDirectSoundFXEchoPage)
  25. MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog);
  26. MESSAGE_HANDLER(WM_HSCROLL, OnControlMessage);
  27. MESSAGE_HANDLER(WM_COMMAND, OnControlMessage);
  28. CHAIN_MSG_MAP(IPropertyPageImpl<CDirectSoundFXEchoPage>)
  29. END_MSG_MAP()
  30. // Handler prototypes:
  31. // LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  32. // LRESULT CommandHandler(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled);
  33. // LRESULT NotifyHandler(int idCtrl, LPNMHDR pnmh, BOOL& bHandled);
  34. STDMETHOD(SetObjects)(ULONG nObjects, IUnknown **ppUnk);
  35. STDMETHOD(Apply)(void);
  36. // Message handlers
  37. LRESULT OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  38. LRESULT OnControlMessage(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
  39. // Member variables
  40. CComPtr<IDirectSoundFXEcho> m_IDSFXEcho;
  41. CSliderValue m_sliderWetDryMix;
  42. CSliderValue m_sliderFeedback;
  43. CSliderValue m_sliderLeftDelay;
  44. CSliderValue m_sliderRightDelay;
  45. CRadioChoice m_radioPanDelay;
  46. Handler *m_rgpHandlers[6];
  47. };
  48. #endif //__DIRECTSOUNDFXECHOPAGE_H_