2025-11-28 00:35:46 +09:00

34 lines
871 B
C++

// 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 (c) Microsoft Corporation. All rights reserved
#pragma once
class CSampleIME;
class CEditSessionBase : public ITfEditSession
{
public:
CEditSessionBase(_In_ CSampleIME *pTextService, _In_ ITfContext *pContext);
virtual ~CEditSessionBase();
// IUnknown
STDMETHODIMP QueryInterface(REFIID riid, _Outptr_ void **ppvObj);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
// ITfEditSession
virtual STDMETHODIMP DoEditSession(TfEditCookie ec) = 0;
protected:
ITfContext *_pContext;
CSampleIME *_pTextService;
private:
LONG _refCount; // COM ref count
};