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.

77 lines
2.4 KiB

  1. /*****************************************************************************\
  2. FILE: EffectsAdvPg.h
  3. DESCRIPTION:
  4. This code will display the Effect tab in the Advanced Display Control
  5. panel.
  6. BryanSt 4/13/2000 Updated and Converted to C++
  7. Copyright (C) Microsoft Corp 2000-2000. All rights reserved.
  8. \*****************************************************************************/
  9. #ifndef _EFFECTSADVPG_H
  10. #define _EFFECTSADVPG_H
  11. #include "store.h"
  12. #include <cowsite.h> // for CObjectWithSite
  13. #include <shpriv.h>
  14. #include "..\common\propsext.h"
  15. class CEffectsPage;
  16. #include "EffectsBasePg.h"
  17. static const GUID IID_CEffectsPage_THIS = { 0xef2b6246, 0x6c1b, 0x44fd, { 0x87, 0xea, 0xb3, 0xc5, 0xd, 0x47, 0x8b, 0x8e } };// {EF2B6246-6C1B-44fd-87EA-B3C50D478B8E}
  18. #define PROPSHEET_CLASS CEffectsBasePage
  19. class CPropSheetExt;
  20. HRESULT CEffectsPage_CreateInstance(OUT IAdvancedDialog ** ppAdvDialog);
  21. class CEffectsPage : public CObjectWithSite
  22. , public IAdvancedDialog
  23. {
  24. public:
  25. //////////////////////////////////////////////////////
  26. // Public Interfaces
  27. //////////////////////////////////////////////////////
  28. // *** IUnknown ***
  29. virtual STDMETHODIMP QueryInterface(REFIID riid, LPVOID * ppvObj);
  30. virtual STDMETHODIMP_(ULONG) AddRef(void);
  31. virtual STDMETHODIMP_(ULONG) Release(void);
  32. // *** IAdvancedDialog ***
  33. virtual STDMETHODIMP DisplayAdvancedDialog(IN HWND hwndParent, IN IPropertyBag * pBasePage, IN BOOL * pfEnableApply);
  34. private:
  35. CEffectsPage(void);
  36. virtual ~CEffectsPage(void);
  37. // Private Member Variables
  38. int m_cRef;
  39. BOOL m_fDirty;
  40. CEffectState * m_pEffectsState;
  41. int m_nIndex;
  42. // Private Member Functions
  43. HRESULT _OnInit(HWND hDlg);
  44. HRESULT _OnApply(HWND hDlg); // The user clicked apply
  45. HWND _CreateListView(HWND hWndParent);
  46. HRESULT _IsDirty(IN BOOL * pIsDirty);
  47. HRESULT _OnCommand(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
  48. INT_PTR _PropertySheetDlgProc(HWND hDlg, UINT uMessage, WPARAM wParam, LPARAM lParam);
  49. friend INT_PTR CALLBACK PropertySheetDlgProc(HWND hDlg, UINT wMsg, WPARAM wParam, LPARAM lParam);
  50. friend HRESULT CEffectsPage_CreateInstance(OUT IAdvancedDialog ** ppAdvDialog);
  51. };
  52. #endif // _EFFECTSADVPG_H