Annotation of mstools/mfc/samples/oclient/mainwnd.h, revision 1.1

1.1     ! root        1: // This is a part of the Microsoft Foundation Classes C++ library.
        !             2: // Copyright (C) 1992 Microsoft Corporation
        !             3: // All rights reserved.
        !             4: //
        !             5: // This source code is only intended as a supplement to the
        !             6: // Microsoft Foundation Classes Reference and Microsoft
        !             7: // QuickHelp documentation provided with the library.
        !             8: // See these sources for detailed information regarding the
        !             9: // Microsoft Foundation Classes product.
        !            10: 
        !            11: // class CMainWnd - the main frame window for this app
        !            12: 
        !            13: class CItemWnd;
        !            14: class CMainWnd;
        !            15: 
        !            16: class CMainDocument : public COleClientDoc
        !            17: {
        !            18:        CMainWnd*   m_pView;
        !            19: public:
        !            20:        CMainDocument(CMainWnd* pView)
        !            21:                { m_pView = pView; }
        !            22: 
        !            23:        // iterator for contained items
        !            24:        virtual COleClientItem* GetNextItem(POSITION& rPosition,
        !            25:                BOOL* pIsSelected);
        !            26: };
        !            27: 
        !            28: 
        !            29: class CMainWnd : public CFrameWnd
        !            30: {
        !            31: public:
        !            32:        CString         m_title;            // title of window
        !            33:        CString         m_fileName;         // file name (may be empty)
        !            34: 
        !            35: public:
        !            36:        CMainWnd();
        !            37: 
        !            38: // Attributes
        !            39:        CItemWnd* GetSelection() const;
        !            40:        void    SetSelection(CItemWnd* pNewSel);
        !            41: 
        !            42:        const CMainDocument* GetDocument() const;
        !            43:        CMainDocument* GetDocument();
        !            44: 
        !            45: // Operations
        !            46:        void    Hourglass(BOOL bOn);
        !            47:        void    ErrorMessage(UINT id);
        !            48: 
        !            49:        void    Dirty();
        !            50: 
        !            51:        // File helpers
        !            52:        BOOL    SaveAsNeeded();
        !            53:        void    InitFile(BOOL fOpen);
        !            54:        BOOL    DoSave(const char* szFileName);
        !            55:        BOOL    DoFileDlg(CString& fileName, UINT nIDTitle, DWORD lFlags);
        !            56: 
        !            57:        // naming/registering
        !            58:        void    SetTitle();
        !            59:        void    DeregisterDoc();
        !            60: 
        !            61:        // reading-writing content
        !            62:        virtual void Serialize(CArchive& ar);       // from CObject
        !            63: #ifdef _DEBUG
        !            64:        virtual void AssertValid() const;
        !            65: #endif
        !            66: 
        !            67: // Callbacks
        !            68:        // windows messages
        !            69:        afx_msg void OnInitMenuPopup(CMenu*, UINT, BOOL);
        !            70:        afx_msg void OnDestroy();
        !            71:        afx_msg void OnClose();
        !            72:        afx_msg void OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized);
        !            73:        afx_msg BOOL OnQueryEndSession();
        !            74: 
        !            75:        // callback helpers
        !            76:        BOOL    DoCopySelection();
        !            77:        BOOL    DoPaste(BOOL fLink);
        !            78:        void    ClearAll();
        !            79: 
        !            80:        // commands
        !            81:        afx_msg void OnFileNew();
        !            82:        afx_msg void OnFileOpen();
        !            83:        afx_msg void OnFileSave();
        !            84:        afx_msg void OnFileSaveAs();
        !            85:        afx_msg void OnExit();
        !            86:        afx_msg void OnAbout();
        !            87: 
        !            88:        afx_msg void OnCut();
        !            89:        afx_msg void OnCopy();
        !            90:        afx_msg void OnPaste();
        !            91:        afx_msg void OnPasteLink();
        !            92:        afx_msg void OnClear();
        !            93:        afx_msg void OnClearAll();
        !            94:        afx_msg void OnInsertObject();
        !            95:        afx_msg void OnEditLinks();
        !            96: 
        !            97: // Implementation
        !            98: protected:
        !            99:        virtual BOOL OnCommand(UINT wParam, LONG lParam);
        !           100:        CItemWnd* m_pSelection;
        !           101:        BOOL    m_fDirty;
        !           102: 
        !           103:        CMainDocument   m_document;
        !           104: 
        !           105:        DECLARE_MESSAGE_MAP()
        !           106: };
        !           107: 
        !           108: // inlines
        !           109: inline void CMainWnd::Dirty()
        !           110:        { m_fDirty = TRUE; }
        !           111: inline const CMainDocument* CMainWnd::GetDocument() const
        !           112:        { return &m_document; }
        !           113: inline CMainDocument* CMainWnd::GetDocument()
        !           114:        { return &m_document; }
        !           115: inline CItemWnd* CMainWnd::GetSelection() const
        !           116:        { return m_pSelection; } // Just the top-most window

unix.superglobalmegacorp.com

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