Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//**********************************************************************
// File name: HLP_IAS.cxx
//
// Implementation file of CAdviseSink
//
//
// Functions:
//
// See IAS.H for Class Definition
//
// Copyright (c) 1992 - 1993 Microsoft Corporation. All rights reserved.
//**********************************************************************
#include <headers.cxx>
#pragma hdrstop
#include "hlp_iocs.hxx"
#include "hlp_ias.hxx"
#include "hlp_app.hxx"
#include "hlp_site.hxx"
#include "hlp_doc.hxx"
//**********************************************************************
//
// CAdviseSink::QueryInterface
//
// Purpose:
//
// Returns a pointer to a requested interface.
//
// Parameters:
//
// REFIID riid - The requested interface
//
// LPVOID FAR* ppvObj - Place to return the interface
//
// Return Value:
//
// HRESULT from CSimpleSite::QueryInterface
//
// Function Calls:
// Function Location
//
// CSimpleSite::QueryInterface SITE.cxx
// OutputDebugString Windows API
//
// Comments:
//
// This function simply delegates to the Object class, which is
// aware of the supported interfaces.
//
//********************************************************************
STDMETHODIMP CAdviseSink::QueryInterface(REFIID riid, LPVOID FAR* ppvObj) { DEBUGOUT(L"In IAS::QueryInterface\r\n");
// delegate to the document Object
return m_pSite->QueryInterface(riid, ppvObj); }
//**********************************************************************
//
// CAdviseSink::AddRef
//
// Purpose:
//
// Increments the reference count on this interface
//
// Parameters:
//
// None
//
// Return Value:
//
// The current reference count on this interface.
//
// Function Calls:
// Function Location
//
// CSimpleSite::AddReff SITE.cxx
// OutputDebugString Windows API
//
// Comments:
//
// This function adds one to the ref count of the interface,
// and calls then calls CSimpleSite to increment its ref.
// count.
//
//********************************************************************
STDMETHODIMP_(ULONG) CAdviseSink::AddRef() { DEBUGOUT(L"In IAS::AddRef\r\n");
// increment the interface reference count (for debugging only)
++m_nCount;
// delegate to the container Site
return m_pSite->AddRef(); }
//**********************************************************************
//
// CAdviseSink::Release
//
// Purpose:
//
// Decrements the reference count on this interface
//
// Parameters:
//
// None
//
// Return Value:
//
// The current reference count on this interface.
//
// Function Calls:
// Function Location
//
// CSimpleSite::Release SITE.cxx
// OutputDebugString Windows API
//
// Comments:
//
// This function subtracts one from the ref count of the interface,
// and calls then calls CSimpleSite to decrement its ref.
// count.
//
//********************************************************************
STDMETHODIMP_(ULONG) CAdviseSink::Release() { DEBUGOUT(L"In IAS::Release\r\n");
// decrement the interface reference count (for debugging only)
m_nCount--;
// delegate to the container Site
return m_pSite->Release(); }
//**********************************************************************
//
// CAdviseSink::OnDataChange
//
// Purpose:
//
// Not Implemented (needs to be stubbed out)
//
// Parameters:
//
// Not Implemented (needs to be stubbed out)
//
// Return Value:
//
// Not Implemented (needs to be stubbed out)
//
// Function Calls:
// Function Location
//
// OutputDebugString Windows API
//
// Comments:
//
// Not Implemented (needs to be stubbed out)
//
//********************************************************************
STDMETHODIMP_(void) CAdviseSink::OnDataChange (FORMATETC FAR* pFormatetc, STGMEDIUM FAR* pStgmed) { DEBUGOUT(L"In IAS::OnDataChange\r\n"); }
//**********************************************************************
//
// CAdviseSink::OnViewChange
//
// Purpose:
//
// Notifies us that the view has changed and needs to be updated.
//
// Parameters:
//
// DWORD dwAspect - Aspect that has changed
//
// LONG lindex - Index that has changed
//
// Return Value:
//
// None
//
// Function Calls:
// Function Location
//
// OutputDebugString Windows API
// InvalidateRect Windows API
// IViewObject2::GetExtent Object
//
// Comments:
//
//********************************************************************
STDMETHODIMP_(void) CAdviseSink::OnViewChange (DWORD dwAspect, LONG lindex) { LPVIEWOBJECT2 lpViewObject2; DEBUGOUT(L"In IAS::OnViewChange\r\n");
// get a pointer to IViewObject2
HRESULT hErr = m_pSite->m_lpOleObject->QueryInterface( IID_IViewObject2,(LPVOID FAR *)&lpViewObject2);
if (hErr == NOERROR) { // get extent of the object
// NOTE: this method will never be remoted; it can be called w/i this async method
lpViewObject2->GetExtent(DVASPECT_CONTENT, -1 , NULL, &m_pSite->m_sizel); lpViewObject2->Release(); }
InvalidateRect(m_pSite->m_lpDoc->m_hDocWnd, NULL, TRUE); }
//**********************************************************************
//
// CAdviseSink::OnRename
//
// Purpose:
//
// Not Implemented (needs to be stubbed out)
//
// Parameters:
//
// Not Implemented (needs to be stubbed out)
//
// Return Value:
//
// Not Implemented (needs to be stubbed out)
//
// Function Calls:
// Function Location
//
// OutputDebugString Windows API
//
// Comments:
//
// Not Implemented (needs to be stubbed out)
//
//********************************************************************
STDMETHODIMP_(void) CAdviseSink::OnRename (LPMONIKER pmk) { DEBUGOUT(L"In IAS::OnRename\r\n"); }
//**********************************************************************
//
// CAdviseSink::OnSave
//
// Purpose:
//
// Not Implemented (needs to be stubbed out)
//
// Parameters:
//
// Not Implemented (needs to be stubbed out)
//
// Return Value:
//
// Not Implemented (needs to be stubbed out)
//
// Function Calls:
// Function Location
//
// OutputDebugString Windows API
//
// Comments:
//
// Not Implemented (needs to be stubbed out)
//
//********************************************************************
STDMETHODIMP_(void) CAdviseSink::OnSave () { DEBUGOUT(L"In IAS::OnSave\r\n"); }
//**********************************************************************
//
// CAdviseSink::OnClose
//
// Purpose:
//
// Not Implemented (needs to be stubbed out)
//
// Parameters:
//
// Not Implemented (needs to be stubbed out)
//
// Return Value:
//
// Not Implemented (needs to be stubbed out)
//
// Function Calls:
// Function Location
//
// OutputDebugString Windows API
//
// Comments:
//
// Not Implemented (needs to be stubbed out)
//
//********************************************************************
STDMETHODIMP_(void) CAdviseSink::OnClose() { DEBUGOUT(L"In IAS::OnClose\r\n"); }
|