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.

152 lines
2.7 KiB

  1. //+--------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1994 - 1996.
  5. //
  6. // File: wizpage.hxx
  7. //
  8. // Contents: Wizard page class
  9. //
  10. // History: 4-30-1997 DavidMun Created
  11. //
  12. //---------------------------------------------------------------------------
  13. #ifndef __WIZPAGE_HXX_
  14. #define __WIZPAGE_HXX_
  15. struct SDIBitmap
  16. {
  17. HBITMAP hbmp;
  18. HBITMAP hbmpOld;
  19. SIZE Dimensions;
  20. HDC hdcMem;
  21. HPALETTE hPalette;
  22. };
  23. //+--------------------------------------------------------------------------
  24. //
  25. // Class: CWizPage
  26. //
  27. // Purpose: Extend the CPropPage class with wizard-specific methods
  28. //
  29. // History: 5-05-1997 DavidMun Created
  30. //
  31. //---------------------------------------------------------------------------
  32. class CWizPage: public CPropPage
  33. {
  34. public:
  35. CWizPage(
  36. LPCTSTR szTmplt,
  37. LPTSTR ptszJobPath);
  38. virtual
  39. ~CWizPage();
  40. protected:
  41. //
  42. // CPropPage overrides
  43. //
  44. virtual LRESULT
  45. DlgProc(
  46. UINT uMsg,
  47. WPARAM wParam,
  48. LPARAM lParam);
  49. virtual LRESULT
  50. _OnNotify(
  51. UINT uMessage,
  52. UINT uParam,
  53. LPARAM lParam);
  54. //
  55. // CWizPage methods
  56. //
  57. VOID
  58. _CreatePage(
  59. ULONG idsHeaderTitle,
  60. ULONG idsHeaderSubTitle,
  61. HPROPSHEETPAGE *phPSP);
  62. virtual LRESULT
  63. _OnWizBack();
  64. virtual LRESULT
  65. _OnWizNext();
  66. virtual LRESULT
  67. _OnWizFinish();
  68. virtual LRESULT
  69. _OnPaint(
  70. HDC hdc);
  71. #ifdef WIZARD95
  72. VOID
  73. _PaintSplashBitmap();
  74. #endif // WIZARD95
  75. inline VOID
  76. _SetWizButtons(
  77. ULONG flButtons);
  78. private:
  79. VOID
  80. _CreateHeaderFonts();
  81. VOID
  82. _InitHeaderFonts();
  83. VOID
  84. _SetControlFont(
  85. HFONT hFont,
  86. INT nId);
  87. #ifdef WIZARD95
  88. VOID
  89. _CreateSplashBitmap();
  90. VOID
  91. _DeleteSplashBitmap();
  92. BOOL _fActiveWindow;
  93. BOOL _fPaletteChanged;
  94. #endif // WIZARD95
  95. static ULONG s_cInstances;
  96. static HFONT s_hfBigBold;
  97. static HFONT s_hfBold;
  98. #ifdef WIZARD95
  99. static SDIBitmap s_Splash;
  100. #endif // WIZARD95
  101. };
  102. //+--------------------------------------------------------------------------
  103. //
  104. // Member: CWizPage::_SetWizButtons
  105. //
  106. // Synopsis: Helper function to set the back/next/finish buttons
  107. //
  108. // History: 5-20-1997 DavidMun Created
  109. //
  110. //---------------------------------------------------------------------------
  111. inline VOID
  112. CWizPage::_SetWizButtons(
  113. ULONG flButtons)
  114. {
  115. PropSheet_SetWizButtons(GetParent(Hwnd()), flButtons);
  116. }
  117. #endif // __WIZPAGE_HXX_