Leaked source code of windows server 2003
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.
|
|
// wordpad.h : main header file for the WORDPAD application
//
// This is a part of the Microsoft Foundation Classes C++ library.
// Copyright (C) 1992-1995 Microsoft Corporation
// All rights reserved.
//
// This source code is only intended as a supplement to the
// Microsoft Foundation Classes Reference and related
// electronic documentation provided with the library.
// See these sources for detailed information regarding the
// Microsoft Foundation Classes product.
#ifndef __AFXWIN_H__
#error include 'stdafx.h' before including this file for PCH
#endif
#include "resource.h" // main symbols
#include "options.h"
#include "afxtempl.h"
#include "msctf.h"
#define WPM_BARSTATE WM_USER
#define WORDPAD_HELP_FILE TEXT("WORDPAD.HLP")
// If MFC ever compiles with WINVER >= 0x500 then this cruft should be removed.
#ifndef WS_EX_LAYOUTRTL
#define WS_EX_LAYOUTRTL 0x400000
#endif // WS_EX_LAYOUTRTL
// Free with delete[]
LPSTR WideToAnsiNewArray(LPCWSTR pwsz); LPWSTR AnsiToWideNewArray(LPCSTR psz);
/////////////////////////////////////////////////////////////////////////////
// CWordPadApp:
// See wordpad.cpp for the implementation of this class
//
class CWordPadCommandLineInfo : public CCommandLineInfo { public: CWordPadCommandLineInfo() {m_bForceTextMode = FALSE;} BOOL m_bForceTextMode; virtual void ParseParam(const char* pszParam,BOOL bFlag,BOOL bLast); };
class CWordPadApp : public CWinApp { private:
enum InitializationPhase { InitializationPending = 0, InitializingPrinter = 1, UpdatingPrinterRelatedUI = 2, UpdatingRegistry = 3, InitializationComplete = 99 };
public: CWordPadApp(); ~CWordPadApp();
//Attributes
CWordPadCommandLineInfo cmdInfo; CDC m_dcScreen; LOGFONT m_lf; int m_nDefFont; static int m_nOpenMsg; static int m_nPrinterChangedMsg; static int m_nOLEHelpMsg; CRect m_rectPageMargin; CRect m_rectInitialFrame; BOOL m_bMaximized; BOOL m_bPromptForType; BOOL m_bWin4; #ifndef _UNICODE
BOOL m_bWin31; #endif
BOOL m_bLargeIcons; BOOL m_bForceTextMode; BOOL m_bWordSel; BOOL m_bForceOEM; BOOL m_always_convert_to_rtf; int m_nFilterIndex; int m_nNewDocType; CDocOptions m_optionsText; CDocOptions m_optionsRTF; CDocOptions m_optionsWord; //wrap to ruler
CDocOptions m_optionsWrite; //wrap to ruler
CDocOptions m_optionsIP; //wrap to ruler
CDocOptions m_optionsNull; CList<HWND, HWND> m_listPrinterNotify;
BOOL IsDocOpen(LPCTSTR lpszFileName);
// Get
int GetUnits() {return m_nUnits;} int GetTPU() { return GetTPU(m_nUnits);} int GetTPU(int n) { return m_units[n].m_nTPU;} LPCTSTR GetAbbrev() { return m_units[m_nUnits].m_strAbbrev;} LPCTSTR GetAbbrev(int n) { return m_units[n].m_strAbbrev;} const CUnit& GetUnit() {return m_units[m_nUnits];} CDockState& GetDockState(int nDocType, BOOL bPrimary = TRUE); CDocOptions& GetDocOptions(int nDocType); CDocOptions& GetDocOptions() {return GetDocOptions(m_nNewDocType);} BOOL ShouldAlwaysConvertToRTF() {return m_always_convert_to_rtf;}
// Set
void SetUnits(int n); void SetAlwaysConvertToRTF() {m_always_convert_to_rtf = TRUE;}
// Operations
void RegisterFormats(); static BOOL CALLBACK StaticEnumProc(HWND hWnd, LPARAM lParam); void UpdateRegistry(); void NotifyPrinterChanged(BOOL bUpdatePrinterSelection = FALSE); BOOL PromptForFileName(CString& fileName, UINT nIDSTitle, DWORD dwFlags, BOOL bOpenFileDialog, int* pType = NULL);
BOOL ParseMeasurement(TCHAR* buf, int& lVal); void PrintTwips(WCHAR* buf, int cchBuf, int nValue, int nDecimal); void SaveOptions(); void LoadOptions(); void LoadAbbrevStrings(); HGLOBAL CreateDevNames(); void EnsurePrinterIsInitialized();
HGLOBAL GetDevNames(void) { return m_hDevNames ; }
// Overrides
BOOL IsIdleMessage(MSG* pMsg); // ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CWordPadApp)
public: virtual BOOL InitInstance(); virtual int ExitInstance(); virtual BOOL OnDDECommand(LPTSTR lpszCommand); virtual void WinHelp(DWORD dwData, UINT nCmd = HELP_CONTEXT); virtual BOOL PreTranslateMessage(MSG* pMsg); //}}AFX_VIRTUAL
// Implementation
COleTemplateServer m_server; // Server object for document creation
//{{AFX_MSG(CWordPadApp)
afx_msg void OnAppAbout(); afx_msg void OnFileNew(); afx_msg void OnFileOpen(); //}}AFX_MSG
DECLARE_MESSAGE_MAP() private: int m_nUnits; static const int m_nPrimaryNumUnits; static const int m_nNumUnits; static CUnit m_units[];
// Initialization
volatile InitializationPhase m_initialization_phase; CWinThread * m_pInitializationThread; // Cicero process atoms
ATOM m_atomEnableCTF; ATOM m_atomProcessCTF;
static UINT AFX_CDECL DoDeferredInitialization(LPVOID pvWordPadApp); };
/////////////////////////////////////////////////////////////////////////////
extern CWordPadApp theApp; //inline CWordPadApp* GetWordPadApp() {return (CWordPadApp*)AfxGetApp();}
|