Annotation of mstools/mfc/samples/minsvrmi/minsvrmi.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: 
        !            12: // MinSvrMI.cpp : minimal OLE Server - Multiple Inheritance Example
        !            13: 
        !            14: /////////////////////////////////////////////////////////////////////////////
        !            15: 
        !            16: #include <afxole.h>
        !            17: #include "resource.h"
        !            18: 
        !            19: #define SERVER_NAME         "MINSVRMI"
        !            20: #define SERVER_LOCAL_NAME   "Mini OLE Server - MI Implementation"
        !            21: 
        !            22: /////////////////////////////////////////////////////////////////////////////
        !            23: 
        !            24: // MiApp is-a Window - for the main window
        !            25: // MiApp is-an application - since we need one
        !            26: // MiApp is-an OLE Server - since we need one to do OLE
        !            27: // MiApp is-an OLE document - since there is one document per main window
        !            28: // MiApp is-an OLE item - since we need one for the OLE document
        !            29: 
        !            30: class CMiApp : public CFrameWnd,
        !            31:                public CWinApp,
        !            32:                public COleServer,
        !            33:                public COleServerDoc,
        !            34:                public COleServerItem
        !            35: {
        !            36: // Construction
        !            37: public:
        !            38:        CMiApp();
        !            39: 
        !            40: // Attributes
        !            41: public:
        !            42:        CString m_data;     // example of server item data
        !            43: 
        !            44: // Implementation
        !            45: protected:
        !            46:        // Window messages and commands
        !            47:        afx_msg LONG OnCloseWindow(UINT, LONG);
        !            48:        afx_msg void OnUpdateClient();
        !            49:        afx_msg void OnChangeString();
        !            50:        afx_msg void OnFileExit();
        !            51:        afx_msg void OnAbout();
        !            52:        DECLARE_MESSAGE_MAP()
        !            53: protected:
        !            54:        virtual void PostNcDestroy();       // for cleanup
        !            55: 
        !            56:        // App Overrides
        !            57:        BOOL InitInstance();
        !            58: 
        !            59:        // OLE Server overrides
        !            60:        virtual COleServerDoc* OnOpenDoc(LPCSTR lpszDoc);
        !            61:        virtual COleServerDoc* OnCreateDoc(LPCSTR lpszClass, LPCSTR lpszDoc);
        !            62:        virtual COleServerDoc* OnEditDoc(LPCSTR lpszClass, LPCSTR lpszDoc);
        !            63: 
        !            64:        // Document overrides
        !            65:        virtual COleServerItem* OnGetDocument();
        !            66:        virtual COleServerItem* OnGetItem(LPCSTR lpszItemName);
        !            67:        virtual COleServerItem* GetNextItem(POSITION& rPosition);
        !            68: 
        !            69:        // Item overrides
        !            70:        virtual OLESTATUS   OnShow(BOOL bTakeFocus);
        !            71:        virtual BOOL        OnDraw(CMetaFileDC* pDC);
        !            72:        virtual void        Serialize(CArchive& ar);        // for native data
        !            73:        virtual BOOL        OnGetTextData(CString& rStringReturn);
        !            74: 
        !            75: public: // necessary for having two or more CObject derived base classes
        !            76:        void* operator new(size_t nSize)
        !            77:                { return CFrameWnd::operator new(nSize); }
        !            78:        void operator delete(void* p)
        !            79:                { CFrameWnd::operator delete(p); }
        !            80: };
        !            81: 
        !            82: /////////////////////////////////////////////////////////////////////////////
        !            83: 

unix.superglobalmegacorp.com

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