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.

63 lines
2.1 KiB

  1. // DirectSoundFXFlangerPage.h : Declaration of the CDirectSoundFXFlangerPage
  2. #ifndef __DIRECTSOUNDFXFLANGERPAGE_H_
  3. #define __DIRECTSOUNDFXFLANGERPAGE_H_
  4. #include "resource.h" // main symbols
  5. #include <dsound.h>
  6. #include "ControlHelp.h"
  7. EXTERN_C const CLSID CLSID_DirectSoundFXFlangerPage;
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CDirectSoundFXFlangerPage
  10. class ATL_NO_VTABLE CDirectSoundFXFlangerPage :
  11. public CComObjectRootEx<CComSingleThreadModel>,
  12. public CComCoClass<CDirectSoundFXFlangerPage, &CLSID_DirectSoundFXFlangerPage>,
  13. public IPropertyPageImpl<CDirectSoundFXFlangerPage>,
  14. public CDialogImpl<CDirectSoundFXFlangerPage>
  15. {
  16. public:
  17. CDirectSoundFXFlangerPage();
  18. enum {IDD = IDD_DIRECTSOUNDFXFLANGERPAGE};
  19. DECLARE_REGISTRY_RESOURCEID(IDR_DIRECTSOUNDFXFLANGERPAGE)
  20. DECLARE_PROTECT_FINAL_CONSTRUCT()
  21. BEGIN_COM_MAP(CDirectSoundFXFlangerPage)
  22. COM_INTERFACE_ENTRY(IPropertyPage)
  23. END_COM_MAP()
  24. BEGIN_MSG_MAP(CDirectSoundFXFlangerPage)
  25. MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog);
  26. MESSAGE_HANDLER(WM_HSCROLL, OnControlMessage);
  27. MESSAGE_HANDLER(WM_COMMAND, OnControlMessage);
  28. CHAIN_MSG_MAP(IPropertyPageImpl<CDirectSoundFXFlangerPage>)
  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<IDirectSoundFXFlanger> m_IDSFXFlanger;
  41. CSliderValue m_sliderWetDryMix;
  42. CSliderValue m_sliderDepth;
  43. CSliderValue m_sliderFeedback;
  44. CSliderValue m_sliderFrequency;
  45. CSliderValue m_sliderDelay;
  46. CSliderValue m_sliderPhase;
  47. CRadioChoice m_radioWaveform;
  48. Handler *m_rgpHandlers[8];
  49. };
  50. #endif //__DIRECTSOUNDFXFLANGERPAGE_H_