37 lines
711 B
C++
37 lines
711 B
C++
#pragma once
|
|
|
|
#include "private.h"
|
|
|
|
#define TES_INVALID_COOKIE ((DWORD)(-1))
|
|
|
|
class CTextEditor;
|
|
|
|
class CTextEditSink : public ITfTextEditSink
|
|
{
|
|
public:
|
|
CTextEditSink(CTextEditor *pEditor);
|
|
virtual ~CTextEditSink() {};
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface(REFIID riid, void **ppvObj);
|
|
STDMETHODIMP_(ULONG) AddRef(void);
|
|
STDMETHODIMP_(ULONG) Release(void);
|
|
|
|
//
|
|
// ITfTextEditSink
|
|
//
|
|
STDMETHODIMP OnEndEdit(ITfContext *pic, TfEditCookie ecReadOnly, ITfEditRecord *pEditRecord);
|
|
|
|
HRESULT _Advise(ITfContext *pic);
|
|
HRESULT _Unadvise();
|
|
|
|
private:
|
|
long _cRef;
|
|
ITfContext *_pic;
|
|
DWORD _dwEditCookie;
|
|
CTextEditor *_pEditor;
|
|
};
|
|
|