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
2.2 KiB

  1. // DirectSoundFXDistortionPage.h : Declaration of the CDirectSoundFXDistortionPage
  2. #ifndef __DIRECTSOUNDFXDISTORTIONPAGE_H_
  3. #define __DIRECTSOUNDFXDISTORTIONPAGE_H_
  4. #include "resource.h" // main symbols
  5. #include <dsound.h>
  6. #include "ControlHelp.h"
  7. EXTERN_C const CLSID CLSID_DirectSoundFXDistortionPage;
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CDirectSoundFXDistortionPage
  10. class ATL_NO_VTABLE CDirectSoundFXDistortionPage :
  11. public CComObjectRootEx<CComSingleThreadModel>,
  12. public CComCoClass<CDirectSoundFXDistortionPage, &CLSID_DirectSoundFXDistortionPage>,
  13. public IPropertyPageImpl<CDirectSoundFXDistortionPage>,
  14. public CDialogImpl<CDirectSoundFXDistortionPage>
  15. {
  16. public:
  17. CDirectSoundFXDistortionPage();
  18. enum {IDD = IDD_DIRECTSOUNDFXDISTORTIONPAGE};
  19. DECLARE_REGISTRY_RESOURCEID(IDR_DIRECTSOUNDFXDISTORTIONPAGE)
  20. DECLARE_PROTECT_FINAL_CONSTRUCT()
  21. BEGIN_COM_MAP(CDirectSoundFXDistortionPage)
  22. COM_INTERFACE_ENTRY(IPropertyPage)
  23. END_COM_MAP()
  24. BEGIN_MSG_MAP(CDirectSoundFXDistortionPage)
  25. MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog);
  26. MESSAGE_HANDLER(WM_HSCROLL, OnControlMessage);
  27. MESSAGE_HANDLER(WM_COMMAND, OnControlMessage);
  28. CHAIN_MSG_MAP(IPropertyPageImpl<CDirectSoundFXDistortionPage>)
  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<IDirectSoundFXDistortion> m_IDSFXDistortion;
  41. CSliderValue m_sliderGain;
  42. CSliderValue m_sliderEdge;
  43. CSliderValue m_sliderPostEQCenterFrequency;
  44. CSliderValue m_sliderPostEQBandwidth;
  45. CSliderValue m_sliderPreLowpassCutoff;
  46. Handler *m_rgpHandlers[6];
  47. };
  48. #endif //__DIRECTSOUNDFXDISTORTIONPAGE_H_