本文整理汇总了C++中ITfKeystrokeMgr::Release方法的典型用法代码示例。如果您正苦于以下问题:C++ ITfKeystrokeMgr::Release方法的具体用法?C++ ITfKeystrokeMgr::Release怎么用?C++ ITfKeystrokeMgr::Release使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ITfKeystrokeMgr
的用法示例。
在下文中一共展示了ITfKeystrokeMgr::Release方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: _InitPreservedKey
BOOL CTextService::_InitPreservedKey()
{
ITfKeystrokeMgr *pKeystrokeMgr;
HRESULT hr;
if (_pThreadMgr->QueryInterface(IID_ITfKeystrokeMgr, (void **)&pKeystrokeMgr) != S_OK)
return FALSE;
// register VK_F2 key
hr = pKeystrokeMgr->PreserveKey(_tfClientId,
GUID_PRESERVEDKEY_BURGLISH,
&c_pkeyburglish,
c_szPKeyOnOff,
wcslen(c_szPKeyOnOff));
hr = pKeystrokeMgr->PreserveKey(_tfClientId,
GUID_PRESERVEDKEY_BURMESE,
&c_pkeyburmese,
c_szPKeyOnOff,
wcslen(c_szPKeyOnOff));
pKeystrokeMgr->Release();
return (hr == S_OK);
}
示例2: _InitPreservedKey
BOOL CTextService::_InitPreservedKey()
{
ITfKeystrokeMgr *pKeystrokeMgr;
HRESULT hr;
if (_pThreadMgr->QueryInterface(IID_ITfKeystrokeMgr, (void **)&pKeystrokeMgr) != S_OK)
return FALSE;
// register Alt+~ key
hr = pKeystrokeMgr->PreserveKey(_tfClientId,
GUID_PRESERVEDKEY_ONOFF,
&c_pkeyOnOff0,
c_szPKeyOnOff,
lstrlen(c_szPKeyOnOff));
// register KANJI key
hr = pKeystrokeMgr->PreserveKey(_tfClientId,
GUID_PRESERVEDKEY_ONOFF,
&c_pkeyOnOff1,
c_szPKeyOnOff,
lstrlen(c_szPKeyOnOff));
// register F6 key
hr = pKeystrokeMgr->PreserveKey(_tfClientId,
GUID_PRESERVEDKEY_F6,
&c_pkeyF6,
c_szPKeyF6,
lstrlen(c_szPKeyF6));
pKeystrokeMgr->Release();
return (hr == S_OK);
}
示例3: _UninitKeyEventSink
void WeaselTSF::_UninitKeyEventSink()
{
ITfKeystrokeMgr *pKeystrokeMgr;
if (_pThreadMgr->QueryInterface(IID_ITfKeystrokeMgr, (void **) &pKeystrokeMgr) != S_OK)
return;
pKeystrokeMgr->UnadviseKeyEventSink(_tfClientId);
pKeystrokeMgr->Release();
}
示例4: _UninitPreservedKey
void CTextService::_UninitPreservedKey()
{
ITfKeystrokeMgr *pKeystrokeMgr;
if (_pThreadMgr->QueryInterface(IID_ITfKeystrokeMgr, (void **)&pKeystrokeMgr) != S_OK)
return;
pKeystrokeMgr->UnpreserveKey(GUID_PRESERVEDKEY_BURGLISH, &c_pkeyburglish);
pKeystrokeMgr->UnpreserveKey(GUID_PRESERVEDKEY_BURMESE, &c_pkeyburmese);
pKeystrokeMgr->Release();
}
示例5: _UninitPreservedKey
void CTextService::_UninitPreservedKey()
{
ITfKeystrokeMgr *pKeystrokeMgr;
if (_pThreadMgr->QueryInterface(IID_ITfKeystrokeMgr, (void **)&pKeystrokeMgr) != S_OK)
return;
pKeystrokeMgr->UnpreserveKey(GUID_PRESERVEDKEY_ONOFF, &c_pkeyOnOff0);
pKeystrokeMgr->UnpreserveKey(GUID_PRESERVEDKEY_ONOFF, &c_pkeyOnOff1);
pKeystrokeMgr->UnpreserveKey(GUID_PRESERVEDKEY_F6, &c_pkeyF6);
pKeystrokeMgr->Release();
}
示例6: _InitKeyEventSink
BOOL WeaselTSF::_InitKeyEventSink()
{
ITfKeystrokeMgr *pKeystrokeMgr;
HRESULT hr;
if (_pThreadMgr->QueryInterface(IID_ITfKeystrokeMgr, (void **) &pKeystrokeMgr) != S_OK)
return FALSE;
hr = pKeystrokeMgr->AdviseKeyEventSink(_tfClientId, (ITfKeyEventSink *) this, TRUE);
pKeystrokeMgr->Release();
return (hr == S_OK);
}
示例7: addPreservedKey
// preserved key
void TextService::addPreservedKey(UINT keyCode, UINT modifiers, const GUID& guid) {
PreservedKey preservedKey;
preservedKey.guid = guid;
preservedKey.uVKey = keyCode;
preservedKey.uModifiers = modifiers;
preservedKeys_.push_back(preservedKey);
if(threadMgr_) { // our text service is activated
ITfKeystrokeMgr *keystrokeMgr;
if (threadMgr_->QueryInterface(IID_ITfKeystrokeMgr, (void **)&keystrokeMgr) == S_OK) {
keystrokeMgr->PreserveKey(clientId_, guid, &preservedKey, NULL, 0);
keystrokeMgr->Release();
}
}
}
示例8: removePreservedKey
void TextService::removePreservedKey(const GUID& guid) {
vector<PreservedKey>::iterator it;
for(it = preservedKeys_.begin(); it != preservedKeys_.end(); ++it) {
PreservedKey& preservedKey = *it;
if(::IsEqualIID(preservedKey.guid, guid)) {
if(threadMgr_) { // our text service is activated
ITfKeystrokeMgr *keystrokeMgr;
if (threadMgr_->QueryInterface(IID_ITfKeystrokeMgr, (void **)&keystrokeMgr) == S_OK) {
keystrokeMgr->UnpreserveKey(preservedKey.guid, &preservedKey);
keystrokeMgr->Release();
}
}
preservedKeys_.erase(it);
break;
}
}
}