home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / com / activedocument / doserver / oleobj.h < prev    next >
C/C++ Source or Header  |  1997-05-28  |  2KB  |  76 lines

  1. /**************************************************************************
  2.    THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  3.    ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  4.    THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  5.    PARTICULAR PURPOSE.
  6.  
  7.    Copyright 1997 Microsoft Corporation.  All Rights Reserved.
  8. **************************************************************************/
  9.  
  10. /**************************************************************************
  11.  
  12.    File:          OleObj.h
  13.    
  14.    Description:   COleObject definitions.
  15.  
  16. **************************************************************************/
  17.  
  18. #ifndef OLEOBJECT_H
  19. #define OLEOBJECT_H
  20.  
  21. /**************************************************************************
  22.    #include statements
  23. **************************************************************************/
  24.  
  25. #include "DOServer.h"
  26.  
  27. /**************************************************************************
  28.  
  29.    COleObject class definition
  30.  
  31. **************************************************************************/
  32.  
  33. class COleDocument;
  34.  
  35. class COleObject : public IOleObject
  36. {
  37. private:
  38.     COleDocument   *m_pOleDoc;
  39.     BOOL           m_fOpen;
  40.  
  41. public:
  42.     COleObject::COleObject(COleDocument *pOleDoc);
  43.     COleObject::~COleObject();
  44.    
  45.     //IUnknown methods
  46.     STDMETHODIMP QueryInterface(REFIID, LPVOID*);
  47.     STDMETHODIMP_(ULONG) AddRef();
  48.     STDMETHODIMP_(ULONG) Release();
  49.  
  50.     //IOleObject methods
  51.     STDMETHODIMP SetClientSite(LPOLECLIENTSITE);
  52.     STDMETHODIMP Advise(LPADVISESINK, LPDWORD);
  53.     STDMETHODIMP SetHostNames(LPCOLESTR, LPCOLESTR);
  54.     STDMETHODIMP DoVerb(LONG, LPMSG, LPOLECLIENTSITE, LONG, HWND, LPCRECT);
  55.     STDMETHODIMP GetExtent(DWORD, LPSIZEL);
  56.     STDMETHODIMP Update();
  57.     STDMETHODIMP Close(DWORD);
  58.     STDMETHODIMP Unadvise(DWORD);
  59.     STDMETHODIMP EnumVerbs(LPENUMOLEVERB*);
  60.     STDMETHODIMP GetClientSite(LPOLECLIENTSITE*);
  61.     STDMETHODIMP SetMoniker(DWORD, LPMONIKER);
  62.     STDMETHODIMP GetMoniker(DWORD, DWORD, LPMONIKER*);
  63.     STDMETHODIMP InitFromData(LPDATAOBJECT, BOOL, DWORD);
  64.     STDMETHODIMP GetClipboardData(DWORD, LPDATAOBJECT*);
  65.     STDMETHODIMP IsUpToDate();
  66.     STDMETHODIMP GetUserClassID(CLSID*);
  67.     STDMETHODIMP GetUserType(DWORD, LPOLESTR*);
  68.     STDMETHODIMP SetExtent(DWORD, LPSIZEL);
  69.     STDMETHODIMP EnumAdvise(LPENUMSTATDATA*);
  70.     STDMETHODIMP GetMiscStatus(DWORD, LPDWORD);
  71.     STDMETHODIMP SetColorScheme(LPLOGPALETTE);
  72.  
  73. };
  74.  
  75. #endif   //OLEOBJECT_H
  76.