Files
msime-windows/src/Key/KeyHandlerEditSession.cpp
T

40 lines
1.3 KiB
C++

#include "Private.h"
#include "KeyHandlerEditSession.h"
#include "EditSession.h"
#include "MetasequoiaIME.h"
#include "CompositionProcessorEngine.h"
#include "KeyStateCategory.h"
//////////////////////////////////////////////////////////////////////
//
// ITfEditSession
// CEditSessionBase
// CKeyHandlerEditSession class
//
//////////////////////////////////////////////////////////////////////
//+---------------------------------------------------------------------------
//
// CKeyHandlerEditSession::DoEditSession
//
//----------------------------------------------------------------------------
STDAPI CKeyHandlerEditSession::DoEditSession(TfEditCookie ec)
{
HRESULT hResult = S_OK;
CKeyStateCategoryFactory *pKeyStateCategoryFactory = CKeyStateCategoryFactory::Instance();
CKeyStateCategory *pKeyStateCategory =
pKeyStateCategoryFactory->MakeKeyStateCategory(_KeyState.Category, _pTextService);
if (pKeyStateCategory)
{
KeyHandlerEditSessionDTO keyHandlerEditSessioDTO(ec, _pContext, _uCode, _wch, _KeyState.Function);
hResult = pKeyStateCategory->KeyStateHandler(_KeyState.Function, keyHandlerEditSessioDTO);
pKeyStateCategory->Release();
pKeyStateCategoryFactory->Release();
}
return hResult;
}