defvphst.h
Upload User: xhy777
Upload Date: 2007-02-14
Package Size: 24088k
Code Size: 2k
Category:

Windows Kernel

Development Platform:

Visual C++

  1. #include <perhist.h>
  2. #include "cowsite.h"
  3. //----------------------------------------------------------------------
  4. // Class to save and restore find state on the travel log 
  5. class CDefViewPersistHistory : public IPersistHistory,
  6.                                public CObjectWithSite, 
  7.                                public IOleObject
  8. {
  9. public:
  10.     CDefViewPersistHistory();
  11.     ~CDefViewPersistHistory();
  12.     // *** IUnknown Methhods ***
  13.     STDMETHOD(QueryInterface)(REFIID riid, void **ppv);
  14.     STDMETHOD_(ULONG,AddRef)();
  15.     STDMETHOD_(ULONG,Release)();
  16.     // Support added to allow search results to serialize 
  17.     // *** IPersist methods ***
  18.     STDMETHOD(GetClassID)(CLSID *pClassID);
  19.     // *** IPersistHistory methods ***
  20.     STDMETHOD(LoadHistory)(IStream *pStream, IBindCtx *pbc);
  21.     STDMETHOD(SaveHistory)(IStream *pStream);
  22.     STDMETHOD(SetPositionCookie)(DWORD dwPositioncookie);
  23.     STDMETHOD(GetPositionCookie)(DWORD *pdwPositioncookie);
  24.     // *** IOleObject methods ***
  25.     STDMETHOD(SetClientSite)(IOleClientSite *pClientSite);
  26.     STDMETHOD(GetClientSite)(IOleClientSite **ppClientSite);
  27.     STDMETHOD(SetHostNames)(LPCOLESTR szContainerApp, LPCOLESTR szContainerObj);
  28.     STDMETHOD(Close)(DWORD dwSaveOption);
  29.     STDMETHOD(SetMoniker)(DWORD dwWhichMoniker, IMoniker *pmk);
  30.     STDMETHOD(GetMoniker)(DWORD dwAssign, DWORD dwWhichMoniker, IMoniker **ppmk);
  31.     STDMETHOD(InitFromData)(IDataObject *pDataObject,BOOL fCreation,DWORD dwReserved);
  32.     STDMETHOD(GetClipboardData)(DWORD dwReserved,IDataObject **ppDataObject);
  33.     STDMETHOD(DoVerb)(LONG iVerb,LPMSG lpmsg,IOleClientSite *pActiveSite,LONG lindex,HWND hwndParent,LPCRECT lprcPosRect);
  34.     STDMETHOD(EnumVerbs)(IEnumOLEVERB **ppEnumOleVerb);
  35.     STDMETHOD(Update)(void);
  36.     STDMETHOD(IsUpToDate)(void);
  37.     STDMETHOD(GetUserClassID)(CLSID *pClsid);
  38.     STDMETHOD(GetUserType)(DWORD dwFormOfType, LPOLESTR *pszUserType);
  39.     STDMETHOD(SetExtent)(DWORD dwDrawAspect, SIZEL *psizel);
  40.     STDMETHOD(GetExtent)(DWORD dwDrawAspect, SIZEL *psizel);
  41.     STDMETHOD(Advise)(IAdviseSink *pAdvSink, DWORD *pdwConnection);
  42.     STDMETHOD(Unadvise)(DWORD dwConnection);
  43.     STDMETHOD(EnumAdvise)(IEnumSTATDATA **ppenumAdvise);
  44.     STDMETHOD(GetMiscStatus)(DWORD dwAspect, DWORD *pdwStatus);
  45.     STDMETHOD(SetColorScheme)(LOGPALETTE *pLogpal);
  46. protected:
  47.     LONG                m_cRef;                   // reference count
  48. } ;