Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
239
Src/Plugins/Library/ml_local/evntsink.cpp
Normal file
239
Src/Plugins/Library/ml_local/evntsink.cpp
Normal file
|
@ -0,0 +1,239 @@
|
|||
/**************************************************************************
|
||||
THIS CODE AND INFORMATION IS PROVIDED 'AS IS' WITHOUT WARRANTY OF
|
||||
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
|
||||
PARTICULAR PURPOSE.
|
||||
|
||||
Copyright 1998 Microsoft Corporation. All Rights Reserved.
|
||||
**************************************************************************/
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
File: evntsink.cpp
|
||||
|
||||
Description: This file contains the implementation of the event sink.
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
/**************************************************************************
|
||||
#include statements
|
||||
**************************************************************************/
|
||||
|
||||
#include "main.h"
|
||||
#include <windows.h>
|
||||
#include "evntsink.h"
|
||||
|
||||
/**************************************************************************
|
||||
function prototypes
|
||||
**************************************************************************/
|
||||
|
||||
/**************************************************************************
|
||||
global variables and definitions
|
||||
**************************************************************************/
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::CEventSink()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
CEventSink::CEventSink()
|
||||
{
|
||||
m_cRefs = 1;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::QueryInterface()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
STDMETHODIMP CEventSink::QueryInterface(REFIID riid, PVOID *ppvObject)
|
||||
{
|
||||
if (!ppvObject)
|
||||
return E_POINTER;
|
||||
|
||||
if (IsEqualIID(riid, IID_IDispatch))
|
||||
*ppvObject = (IDispatch *)this;
|
||||
else if (IsEqualIID(riid, IID_IUnknown))
|
||||
*ppvObject = this;
|
||||
else
|
||||
{
|
||||
*ppvObject = NULL;
|
||||
return E_NOINTERFACE;
|
||||
}
|
||||
|
||||
AddRef();
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::AddRef()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
ULONG CEventSink::AddRef(void)
|
||||
{
|
||||
return ++m_cRefs;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::Release()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
ULONG CEventSink::Release(void)
|
||||
{
|
||||
if (--m_cRefs)
|
||||
return m_cRefs;
|
||||
|
||||
delete this;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::GetIDsOfNames()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
HRESULT CEventSink::GetIDsOfNames(REFIID riid, OLECHAR FAR* FAR* rgszNames, unsigned int cNames, LCID lcid, DISPID FAR* rgdispid)
|
||||
{
|
||||
*rgdispid = DISPID_UNKNOWN;
|
||||
return DISP_E_UNKNOWNNAME;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::GetTypeInfo()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
HRESULT CEventSink::GetTypeInfo(unsigned int itinfo, LCID lcid, ITypeInfo FAR* FAR* pptinfo)
|
||||
{
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::GetTypeInfoCount()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
HRESULT CEventSink::GetTypeInfoCount(unsigned int FAR * pctinfo)
|
||||
{
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
||||
CEventSink::Invoke()
|
||||
|
||||
**************************************************************************/
|
||||
|
||||
void main_setStatusText(LPCWSTR txt)
|
||||
{
|
||||
char dest[512];
|
||||
dest[0]=0;
|
||||
WideCharToMultiByte(CP_ACP,0,txt,-1,dest,sizeof(dest),NULL,NULL);
|
||||
//SetDlgItemText(m_hwnd,IDC_STATUS,dest);
|
||||
}
|
||||
|
||||
void main_beforeNavigate(LPCWSTR txt)
|
||||
{
|
||||
VARIANT *blah=(VARIANT *)txt;
|
||||
char dest[512];
|
||||
dest[0]=0;
|
||||
WideCharToMultiByte(CP_ACP,0,blah->bstrVal,-1,dest,sizeof(dest),NULL,NULL);
|
||||
//SetDlgItemText(m_hwnd,IDC_QUICKSEARCH,dest);
|
||||
}
|
||||
|
||||
HRESULT CEventSink::Invoke(DISPID dispid, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS FAR *pdispparams, VARIANT FAR *pvarResult, EXCEPINFO FAR * pexecinfo, unsigned int FAR *puArgErr)
|
||||
{
|
||||
switch (dispid)
|
||||
{
|
||||
// void StatusTextChange([in] BSTR Text);
|
||||
case 0x66:
|
||||
main_setStatusText(pdispparams->rgvarg[0].bstrVal);
|
||||
//m_pApp->eventStatusTextChange(pdispparams->rgvarg[0].bstrVal);
|
||||
break;
|
||||
|
||||
// void ProgressChange([in] long Progress, [in] long ProgressMax);
|
||||
case 0x6c:
|
||||
break;
|
||||
|
||||
// void CommandStateChange([in] long Command, [in] VARIANT_BOOL Enable);
|
||||
case 0x69:
|
||||
//m_pApp->eventCommandStateChange(pdispparams->rgvarg[1].lVal, pdispparams->rgvarg[0].boolVal);
|
||||
break;
|
||||
|
||||
// void DownloadBegin();
|
||||
case 0x6a:
|
||||
//m_pApp->eventDownloadBegin();
|
||||
break;
|
||||
|
||||
// void DownloadComplete();
|
||||
case 0x68:
|
||||
//m_pApp->eventDownloadComplete();
|
||||
break;
|
||||
|
||||
// void TitleChange([in] BSTR Text);
|
||||
case 0x071:
|
||||
//m_pApp->eventTitleChange(pdispparams->rgvarg[0].bstrVal);
|
||||
break;
|
||||
|
||||
// void PropertyChange([in] BSTR szProperty);
|
||||
case 0x70:
|
||||
//m_pApp->eventPropertyChange(pdispparams->rgvarg[0].bstrVal);
|
||||
break;
|
||||
|
||||
// void BeforeNavigate2([in] IDispatch* pDisp, [in] VARIANT* URL, [in] VARIANT* Flags, [in] VARIANT* TargetFrameName, [in] VARIANT* PostData, [in] VARIANT* Headers, [in, out] VARIANT_BOOL* Cancel);
|
||||
case 0xfa:
|
||||
main_beforeNavigate(pdispparams->rgvarg[5].bstrVal);
|
||||
break;
|
||||
|
||||
// void NewWindow2([in, out] IDispatch** ppDisp, [in, out] VARIANT_BOOL* Cancel);
|
||||
case 0xfb:
|
||||
break;
|
||||
|
||||
// void NavigateComplete2([in] IDispatch* pDisp, [in] VARIANT* URL);
|
||||
case 0xfc:
|
||||
break;
|
||||
|
||||
// void DocumentComplete([in] IDispatch* pDisp, [in] VARIANT* URL);
|
||||
case 0x0103:
|
||||
break;
|
||||
|
||||
// void OnQuit();
|
||||
case 0xfd:
|
||||
break;
|
||||
|
||||
// void OnVisible([in] VARIANT_BOOL Visible);
|
||||
case 0xfe:
|
||||
break;
|
||||
|
||||
// void OnToolBar([in] VARIANT_BOOL ToolBar);
|
||||
case 0xff:
|
||||
break;
|
||||
|
||||
// void OnMenuBar([in] VARIANT_BOOL MenuBar);
|
||||
case 0x0100:
|
||||
break;
|
||||
|
||||
// void OnStatusBar([in] VARIANT_BOOL StatusBar);
|
||||
case 0x0101:
|
||||
break;
|
||||
|
||||
// void OnFullScreen([in] VARIANT_BOOL FullScreen);
|
||||
case 0x0102:
|
||||
break;
|
||||
|
||||
// void OnTheaterMode([in] VARIANT_BOOL TheaterMode);
|
||||
case 0x0104:
|
||||
break;
|
||||
}
|
||||
|
||||
return S_OK;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue