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.
 
 
 
 
 
 

116 lines
2.4 KiB

//
// canduies.h
//
#ifndef CANDUIES_H
#define CANDUIES_H
#include "private.h"
#include "korimx.h"
#include "globals.h"
#include "mscandui.h"
//
// Callback functions
//
typedef HRESULT (*PFNONBUTTONPRESSED)(LONG id, ITfContext *pic, void *pVoid);
typedef HRESULT (*PFNONFILTEREVENT)(CANDUIFILTEREVENT ev, ITfContext *pic, void *pVoid);
typedef HRESULT (*PFNINITMENU)(ITfMenu *pMenu, ITfContext *pic, void *pVoid);
typedef HRESULT (*PFNONCANDUIMENUCOMMAND)( UINT uiCmd, ITfContext *pic, void *pVoid);
//
// CCandUIExtButtonEventSink
//
class CCandUIExtButtonEventSink : public ITfCandUIExtButtonEventSink
{
public:
CCandUIExtButtonEventSink(PFNONBUTTONPRESSED pfnOnButtonPressed, ITfContext *pic, void *pVoid);
~CCandUIExtButtonEventSink();
//
// IUnknown
//
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
STDMETHODIMP_(ULONG) AddRef( void );
STDMETHODIMP_(ULONG) Release( void );
//
// ITfCandUIExtButtonEventSink
//
STDMETHODIMP OnButtonPressed(LONG id);
protected:
long m_cRef;
ITfContext *m_pic;
void *m_pv;
PFNONBUTTONPRESSED m_pfnOnButtonPressed;
};
//
// CCandUIAutoFilterEventSink
//
class CCandUIAutoFilterEventSink : public ITfCandUIAutoFilterEventSink
{
public:
CCandUIAutoFilterEventSink(PFNONFILTEREVENT pfnOnFilterEvent, ITfContext *pic, void *pVoid);
~CCandUIAutoFilterEventSink();
//
// IUnknown
//
STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
STDMETHODIMP_(ULONG) AddRef();
STDMETHODIMP_(ULONG) Release();
//
// ITfCandUIAutoFilterEventSink
//
STDMETHODIMP OnFilterEvent(CANDUIFILTEREVENT ev);
protected:
long m_cRef;
ITfContext *m_pic;
void *m_pv;
PFNONFILTEREVENT m_pfnOnFilterEvent;
};
//
// CCandUIMenuEventSink
//
class CCandUIMenuEventSink : public ITfCandUIMenuEventSink
{
public:
CCandUIMenuEventSink(PFNINITMENU pfnInitMenu, PFNONCANDUIMENUCOMMAND pfnOnCandUIMenuCommand, ITfContext *pic, void *pVoid);
~CCandUIMenuEventSink();
//
// IUnknown
//
STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
STDMETHODIMP_(ULONG) AddRef();
STDMETHODIMP_(ULONG) Release();
//
// ITfCandUIMenuEventSink
//
STDMETHODIMP InitMenu(ITfMenu *pMenu);
STDMETHODIMP OnMenuCommand(UINT uiCmd);
protected:
long m_cRef;
ITfContext *m_pic;
void *m_pv;
PFNINITMENU m_pfnInitMenu;
PFNONCANDUIMENUCOMMAND m_pfnOnCandUIMenuCommand;
};
#endif // CANDUIES_H