Windows NT 4.0 source code leak
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.
 
 
 
 
 
 

231 lines
6.2 KiB

//*********************************************************************
//* Microsoft Windows **
//* Copyright(c) Microsoft Corp., 1995 **
//*********************************************************************
//
// ACTOBJ.CPP - Implementation of COleInPlaceActiveObject class
//
// HISTORY:
//
// 10/15/95 jeremys Created.
//
//
// The COleInPlaceActiveObject class implements the IOleInPlaceActiveObject
// interface.
//
#include "project.hpp"
#pragma hdrstop
#include "htmlview.hpp"
#include "helpers.hpp"
/*******************************************************************
NAME: COleInPlaceActiveObject::QueryInterface
SYNOPSIS: Returns pointer to requested interface
NOTES: Delegates to outer unknown
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::QueryInterface ( REFIID riid, LPVOID FAR* ppvObj)
{
DEBUGMSG("In COleObject::QueryInterface\r\n");
return m_pUnkOuter->QueryInterface(riid, ppvObj);
}
/*******************************************************************
NAME: COleInPlaceActiveObject::AddRef
SYNOPSIS: Increases reference count on this object
********************************************************************/
STDMETHODIMP_(ULONG) COleInPlaceActiveObject::AddRef()
{
DEBUGMSG("In COleObject::AddRef\r\n");
m_nCount ++;
return m_pUnkOuter->AddRef();
}
/*******************************************************************
NAME: COleInPlaceActiveObject::Release
SYNOPSIS: Decrements reference count on this object.
********************************************************************/
STDMETHODIMP_(ULONG) COleInPlaceActiveObject::Release()
{
DEBUGMSG("In COleObject::Release\r\n");
m_nCount--;
return m_pUnkOuter->Release();
}
/*******************************************************************
NAME: COleInPlaceActiveObject::OnDocWindowActivate
SYNOPSIS: Called when the document window (in an MDI app)
is activated or deactivated.
ENTRY: fActivate - TRUE if activating, FALSE if deactivating
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::OnDocWindowActivate ( BOOL fActivate )
{
DEBUGMSG("In COleInPlaceActiveObject::OnDocWindowActivate\r\n");
#if 0
// BUGBUG implement
// Activating?
if (fActivate)
m_pHTMLView->AddFrameLevelUI();
#endif
// No frame level tools to remove...
return ResultFromScode(S_OK);
};
/*******************************************************************
NAME: COleInPlaceActiveObject::OnFrameWindowActivate
SYNOPSIS: Called when the frame window is activated or deactivated.
ENTRY: fActivate - TRUE if activating, FALSE if deactivating
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::OnFrameWindowActivate ( BOOL fActivate)
{
DEBUGMSG("In COleInPlaceActiveObject::OnFrameWindowActivate\r\n");
#if 0
// BUGBUG implement
// set the focus to the object window if we are activating.
/* if (fActivate)
SetFocus(m_pHTMLView->m_lpDoc->GethDocWnd()); */
#endif
return ResultFromScode( S_OK );
};
/*******************************************************************
NAME: COleInPlaceActiveObject::GetWindow
SYNOPSIS: Returns the window handle of the in-place object
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::GetWindow ( HWND FAR* lphwnd)
{
DEBUGMSG("In COleInPlaceActiveObject::GetWindow\r\n");
#if 0
// BUGBUG implement
*lphwnd = m_pHTMLView->m_lpDoc->GethDocWnd();
#endif
*lphwnd = NULL; // BUGBUG temporary!
return ResultFromScode( S_OK );
};
/*******************************************************************
NAME: COleInPlaceActiveObject::ContextSensitiveHelp
SYNOPSIS: Called when container wants object to enter or exit
context sensitive help mode
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::ContextSensitiveHelp ( BOOL fEnterMode )
{
DEBUGMSG("In COleInPlaceActiveObject::ContextSensitiveHelp\r\n");
// BUGBUG need to do something real here sooner or later
return ResultFromScode( E_NOTIMPL);
};
/*******************************************************************
NAME: COleInPlaceActiveObject::TranslateAccelerator
SYNOPSIS: Called to translate accelerator keystrokes for
controls in this object
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::TranslateAccelerator ( LPMSG lpmsg)
{
DEBUGMSG("In COleInPlaceActiveObject::TranslateAccelerator\r\n");
// BUGBUG need to do something real here sooner or later
return ResultFromScode( S_FALSE );
};
/*******************************************************************
NAME: COleInPlaceActiveObject::ResizeBorder
SYNOPSIS: Called when the border changes size
ENTRY: lprectBorder - new border rectangle
lpUIWindow - pointer to IOleInPlaceUIWindow interface
fFrameWindow - true if lpUIWindow is the frame window
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::ResizeBorder ( LPCRECT lprectBorder,
LPOLEINPLACEUIWINDOW lpUIWindow,
BOOL fFrameWindow)
{
DEBUGMSG("In COleInPlaceActiveObject::ResizeBorder\r\n");
#if 0
// BUGBUG implement
// should always have an inplace frame...
m_pHTMLView->GetInPlaceFrame()->SetBorderSpace(NULL);
// There will only be a UIWindow if in an MDI container
if (m_pHTMLView->GetUIWindow())
m_pHTMLView->GetUIWindow()->SetBorderSpace(NULL);
#endif
return ResultFromScode( S_OK );
};
/*******************************************************************
NAME: COleInPlaceActiveObject::EnableModeless
SYNOPSIS: Called to enable or disable modeless dialogs
ENTRY: fEnable - TRUE if enabling modeless dialogs, FALSE
if disabling
********************************************************************/
STDMETHODIMP COleInPlaceActiveObject::EnableModeless ( BOOL fEnable)
{
DEBUGMSG("In COleInPlaceActiveObject::EnableModeless\r\n");
// BUGBUG need to do something real here sooner or later
return ResultFromScode( S_OK );
};