Annotation of mstools/mfc/samples/minsvrmi/minsvrmi.h, revision 1.1.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.