Annotation of mstools/mfc/samples/multipad/multipad.h, revision 1.1.1.1

1.1       root        1: // multipad.h : Defines the class interfaces for the frame and child.
                      2: //
                      3: // This is a part of the Microsoft Foundation Classes C++ library.
                      4: // Copyright (C) 1992 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 Microsoft
                      9: // QuickHelp documentation provided with the library.
                     10: // See these sources for detailed information regarding the
                     11: // Microsoft Foundation Classes product.
                     12: 
                     13: #ifndef __MULTIPAD_H__
                     14: #define __MULTIPAD_H__
                     15: 
                     16: /////////////////////////////////////////////////////////////////////////////
                     17: 
                     18: #define EXPORT _export
                     19: 
                     20: #include <afxwin.h>
                     21: #include <afxdlgs.h>
                     22: #include "bar.h"
                     23: #include "resource.h"
                     24: 
                     25: /////////////////////////////////////////////////////////////////////////////
                     26: 
                     27: CDC* GetPrinterDC();
                     28: class CMPChild;
                     29: 
                     30: class CMultiPad : public CWinApp
                     31: {
                     32: public:
                     33:        CMultiPad(const char* pAppName) : CWinApp(pAppName)
                     34:                { }
                     35:        BOOL InitInstance();
                     36:        int ExitInstance();
                     37: };
                     38: 
                     39: class CMPFrame : public CMDIFrameWnd
                     40: {
                     41: protected:
                     42:        class CMPChild* m_pActiveChild;
                     43: 
                     44: public:
                     45:        CMPFrame() {};
                     46:        CMPFrame(const char* szTitle);
                     47:        
                     48:        BOOL QueryCloseAllChildren();
                     49:        void CloseAllChildren();
                     50:        void GetInitializationData();
                     51:        CMPChild* AlreadyOpen(char* szFile);
                     52:        void ReadFile(const char* szFile);
                     53: 
                     54:        static CMPFrame* GetMDIFrameWnd() 
                     55:                { return (CMPFrame*)(AfxGetApp()->m_pMainWnd); }
                     56: 
                     57:        static CMPChild* GetActiveChild() 
                     58:                { return ((CMPFrame*)(AfxGetApp()->m_pMainWnd))->m_pActiveChild; }
                     59:        static void SetActiveChild(CMPChild* pActiveChild) 
                     60:                { GetMDIFrameWnd()->m_pActiveChild = pActiveChild; }
                     61: 
                     62: protected:
                     63:        void ReadFile();
                     64: 
                     65:        afx_msg void OnInitMenu(CMenu* pMenu);
                     66:        afx_msg void OnClose();
                     67:        afx_msg BOOL OnQueryEndSession();
                     68:        afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
                     69:        afx_msg void OnSize(UINT nType, int cx, int cy);
                     70:        afx_msg void OnMenuSelect(UINT nItemID, UINT nFlags, HMENU hSysMenu);
                     71:        
                     72:        afx_msg void CmdFileNew();
                     73:        afx_msg void CmdFileOpen();
                     74:        afx_msg void CmdFileExit();
                     75:        afx_msg void CmdToggleMenu();
                     76:        afx_msg void CmdFileMRU();
                     77:        
                     78:        afx_msg void CmdMDITile();
                     79:        afx_msg void CmdMDICascade();
                     80:        afx_msg void CmdMDIIconArrange();
                     81:        afx_msg void CmdWinCloseAll();
                     82:        
                     83:        afx_msg void CmdHelpAbout();
                     84: 
                     85:        afx_msg void CmdFind();
                     86:        afx_msg void CmdFindPrev();
                     87:        afx_msg void CmdFindNext();
                     88:        
                     89:        DECLARE_MESSAGE_MAP()
                     90: 
                     91:        BOOL m_bShortMenu;
                     92:        CStatBar m_statBar;
                     93: 
                     94:        // Search helpers
                     95:        afx_msg LONG CmdFindHelper(UINT wParam, LONG lParam); // for m_nMsgFind
                     96:        static UINT m_nMsgFind;
                     97:        static CString m_strFind;
                     98:        static CFindReplaceDialog* m_pFindReplace;
                     99: };
                    100: 
                    101: class CMPChild : public CMDIChildWnd
                    102: {
                    103: public:
                    104:        BOOL m_bChanged;
                    105:        BOOL m_bUntitled;
                    106:        BOOL m_bWordWrap;
                    107:        CEdit m_edit;
                    108:        CFont m_font;
                    109:        
                    110:        CMPChild() : m_font(), m_edit() 
                    111:                { } 
                    112:        CMPChild(char* szName);
                    113:        
                    114:        BOOL QueryCloseChild();
                    115:        void SaveFile();
                    116:        BOOL ChangeFile();
                    117:        void PrintFile();
                    118:        
                    119:        int LoadFile(char* szFile);
                    120:        
                    121:        void SetWrap(BOOL bWrap);
                    122:        
                    123:        // Find engine stuff
                    124:        enum { searchUp = -1, searchDown = +1};
                    125:        BOOL FindText(LPCSTR szSearch,
                    126:                int nDirection = searchDown, 
                    127:                BOOL bMatchCase = FALSE, 
                    128:                BOOL bWholeWord = FALSE); // does the actual search
                    129: 
                    130: protected:
                    131:        afx_msg int OnCreate(LPCREATESTRUCT);
                    132:        afx_msg void OnMDIActivate(BOOL bActivate, CWnd* pActivate, CWnd* pDeactivate);
                    133:        afx_msg BOOL OnQueryEndSession();
                    134:        afx_msg void OnClose();
                    135:        afx_msg void OnSize(UINT nType, int cx, int cy);
                    136:        afx_msg void OnSetFocus(CWnd* pWnd);
                    137:        afx_msg void OnEditChange();
                    138:        afx_msg void OnEditErrSpace();
                    139:        afx_msg void OnMenuSelect(UINT nItemID, UINT nFlags, HMENU hSysMenu);
                    140:        
                    141:        virtual void PostNcDestroy();
                    142: 
                    143:        // Command handlers
                    144:        afx_msg void CmdSetFont();
                    145:        afx_msg void CmdFileSave();
                    146:        afx_msg void CmdFileSaveAs();
                    147:        afx_msg void CmdUndo();
                    148:        afx_msg void CmdCut();
                    149:        afx_msg void CmdCopy();
                    150:        afx_msg void CmdPaste();
                    151:        afx_msg void CmdClear();
                    152:        afx_msg void CmdSelectAll();
                    153:        afx_msg void CmdWordWrap();
                    154: 
                    155:        DECLARE_MESSAGE_MAP()
                    156: };
                    157: 
                    158: class CPrinter
                    159: {
                    160: private:
                    161:        HWND hwndPDlg;      // Handle to the cancel print dialog
                    162:        HANDLE hInitData;   // handle to initialization data
                    163:        
                    164:        class CPrintCanDlg* pdlg;
                    165:        UINT fError;
                    166:        
                    167: public:
                    168:        BOOL fAbort;        // TRUE if the user has aborted the print job
                    169:        CPrintDialog printDlg;
                    170:        CDC* pdc;
                    171:        
                    172:        char szTitle [32];  // Global pointer to job title
                    173:        
                    174:        CPrinter() : printDlg(FALSE) {};
                    175:                                
                    176:        BOOL        StartJob(char* szDocName);
                    177:        void        EndJob();
                    178:        
                    179:        friend BOOL FAR PASCAL EXPORT AbortProc(HDC, int);
                    180: };
                    181: 
                    182: short MPError(int bFlags, int id, ...);
                    183: 
                    184: /////////////////////////////////////////////////////////////////////////////
                    185: 
                    186: #endif // __MULTIPAD_H__
                    187: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.