WORDPAD.H
上传用户:aakk678
上传日期:2022-07-09
资源大小:406k
文件大小:4k
源码类别:

界面编程

开发平台:

Visual C++

  1. // wordpad.h : main header file for the WORDPAD application
  2. //
  3. // This is a part of the Microsoft Foundation Classes C++ library.
  4. // Copyright (C) 1992-1997 Microsoft Corporation
  5. // All rights reserved.
  6. //
  7. // This source code is only intended as a supplement to the
  8. // Microsoft Foundation Classes Reference and related
  9. // electronic documentation provided with the library.
  10. // See these sources for detailed information regarding the
  11. // Microsoft Foundation Classes product.
  12. #ifndef __AFXWIN_H__
  13. #error include 'stdafx.h' before including this file for PCH
  14. #endif
  15. #include "resource.h"       // main symbols
  16. #include "splash.h"
  17. #include "options.h"
  18. #include "afxtempl.h"
  19. #define WPM_BARSTATE WM_USER
  20. /////////////////////////////////////////////////////////////////////////////
  21. // CWordPadApp:
  22. // See wordpad.cpp for the implementation of this class
  23. //
  24. class CWordPadCommandLineInfo : public CCommandLineInfo
  25. {
  26. public:
  27. CWordPadCommandLineInfo() {m_bForceTextMode = FALSE;}
  28. BOOL m_bForceTextMode;
  29. virtual void ParseParam(const char* pszParam,BOOL bFlag,BOOL bLast);
  30. };
  31. class CWordPadApp : public CWinApp
  32. {
  33. public:
  34. CWordPadApp();
  35. ~CWordPadApp();
  36. //Attributes
  37. CWordPadCommandLineInfo cmdInfo;
  38. CDC m_dcScreen;
  39. LOGFONT m_lf;
  40. int m_nDefFont;
  41. static int m_nOpenMsg;
  42. static int m_nPrinterChangedMsg;
  43. CRect m_rectPageMargin;
  44. CRect m_rectInitialFrame;
  45. BOOL m_bMaximized;
  46. BOOL m_bPromptForType;
  47. BOOL m_bWin4;
  48. #ifndef _UNICODE
  49. BOOL m_bWin31;
  50. #endif
  51. BOOL m_bLargeIcons;
  52. BOOL m_bForceTextMode;
  53. BOOL m_bWordSel;
  54. BOOL m_bForceOEM;
  55. int m_nFilterIndex;
  56. int m_nNewDocType;
  57. CDocOptions m_optionsText;
  58. CDocOptions m_optionsRTF;
  59. CDocOptions m_optionsWord; //wrap to ruler
  60. CDocOptions m_optionsWrite; //wrap to ruler
  61. CDocOptions m_optionsIP; //wrap to ruler
  62. CDocOptions m_optionsNull;
  63. CList<HWND, HWND> m_listPrinterNotify;
  64. BOOL IsDocOpen(LPCTSTR lpszFileName);
  65. // Get
  66. int GetUnits() {return m_nUnits;}
  67. int GetTPU() { return GetTPU(m_nUnits);}
  68. int GetTPU(int n) { return m_units[n].m_nTPU;}
  69. LPCTSTR GetAbbrev() { return m_units[m_nUnits].m_strAbbrev;}
  70. LPCTSTR GetAbbrev(int n) { return m_units[n].m_strAbbrev;}
  71. const CUnit& GetUnit() {return m_units[m_nUnits];}
  72. CDockState& GetDockState(int nDocType, BOOL bPrimary = TRUE);
  73. CDocOptions& GetDocOptions(int nDocType);
  74. // Set
  75. void SetUnits(int n)
  76. { ASSERT(n>=0 && n <m_nPrimaryNumUnits); m_nUnits = n; }
  77. // Operations
  78. void RegisterFormats();
  79. static BOOL CALLBACK StaticEnumProc(HWND hWnd, LPARAM lParam);
  80. void UpdateRegistry();
  81. void NotifyPrinterChanged(BOOL bUpdatePrinterSelection = FALSE);
  82. BOOL PromptForFileName(CString& fileName, UINT nIDSTitle, DWORD dwFlags,
  83. BOOL bOpenFileDialog, int* pType = NULL);
  84. BOOL ParseMeasurement(TCHAR* buf, int& lVal);
  85. void PrintTwips(TCHAR* buf, int nValue, int nDecimal);
  86. void SaveOptions();
  87. void LoadOptions();
  88. void LoadAbbrevStrings();
  89. HGLOBAL CreateDevNames();
  90. // Overrides
  91. BOOL IsIdleMessage(MSG* pMsg);
  92. // ClassWizard generated virtual function overrides
  93. //{{AFX_VIRTUAL(CWordPadApp)
  94. public:
  95. virtual BOOL InitInstance();
  96. virtual int ExitInstance();
  97. virtual BOOL OnDDECommand(LPTSTR lpszCommand);
  98. virtual void WinHelp(DWORD dwData, UINT nCmd = HELP_CONTEXT);
  99. virtual BOOL PreTranslateMessage(MSG* pMsg);
  100. //}}AFX_VIRTUAL
  101. // Implementation
  102. COleTemplateServer m_server;
  103. // Server object for document creation
  104. //{{AFX_MSG(CWordPadApp)
  105. afx_msg void OnAppAbout();
  106. afx_msg void OnFileNew();
  107. afx_msg void OnFileOpen();
  108. //}}AFX_MSG
  109. DECLARE_MESSAGE_MAP()
  110. private:
  111. int m_nUnits;
  112. static const int m_nPrimaryNumUnits;
  113. static const int m_nNumUnits;
  114. static CUnit m_units[7];
  115. };
  116. /////////////////////////////////////////////////////////////////////////////
  117. extern CWordPadApp theApp;
  118. //inline CWordPadApp* GetWordPadApp() {return (CWordPadApp*)AfxGetApp();}