//**********************************************************************
// File name: IOIPAO.H
//
//      Definition of COleInPlaceActiveObject
//
// Copyright (c) 1993 Microsoft Corporation. All rights reserved.
//**********************************************************************

#if !defined( _IOIPAO_H_)
#define _IOIPAO_H_


#include <ole2.h>
#include "obj.h"

class CSimpSvrObj;

interface COleInPlaceActiveObject : public IOleInPlaceActiveObject
{
private:
    CSimpSvrObj FAR * m_lpObj;

public:
    COleInPlaceActiveObject::COleInPlaceActiveObject(CSimpSvrObj FAR * lpSimpSvrObj)
        {
        m_lpObj = lpSimpSvrObj;     // set up the back ptr
        };
    COleInPlaceActiveObject::~COleInPlaceActiveObject() {};   // destructor

// IUnknown Methods

    STDMETHODIMP QueryInterface (REFIID riid, LPVOID FAR* ppvObj);
    STDMETHODIMP_(ULONG) AddRef ();
    STDMETHODIMP_(ULONG) Release ();

    STDMETHODIMP OnDocWindowActivate  ( BOOL fActivate) ;
    STDMETHODIMP OnFrameWindowActivate  ( BOOL fActivate) ;
    STDMETHODIMP GetWindow  ( HWND FAR* lphwnd);
    STDMETHODIMP ContextSensitiveHelp  ( BOOL fEnterMode);
    STDMETHODIMP TranslateAccelerator  ( LPMSG lpmsg);
    STDMETHODIMP ResizeBorder  ( LPCRECT lprectBorder,
                                 LPOLEINPLACEUIWINDOW lpUIWindow,
                                 BOOL fFrameWindow);
    STDMETHODIMP EnableModeless  ( BOOL fEnable);

};

#endif