Win32 API 日本語リファレンス
ホームUI.TextServices › ITfLangBarItemMgr

ITfLangBarItemMgr

COM
IIDba468c55-9956-4fb1-a59d-52a7dd7cc6aa継承元IUnknown自前メソッド開始 vtbl3

メソッド 12

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT EnumItems(IEnumTfLangBarItems** ppEnum)
ppEnumIEnumTfLangBarItems**out言語バー項目を列挙する IEnumTfLangBarItems へのポインタを受け取る出力ポインタである。
vtbl 4 HRESULT GetItem(GUID* rguid, ITfLangBarItem** ppItem)
rguidGUID*in取得する言語バー項目を識別する GUID へのポインタである。
ppItemITfLangBarItem**out取得した言語バー項目 ITfLangBarItem へのポインタを受け取る出力ポインタである。
vtbl 5 HRESULT AddItem(ITfLangBarItem* punk)
punkITfLangBarItem*in追加する言語バー項目 ITfLangBarItem へのポインタである。
vtbl 6 HRESULT RemoveItem(ITfLangBarItem* punk)
punkITfLangBarItem*in削除する言語バー項目 ITfLangBarItem へのポインタである。
vtbl 7 HRESULT AdviseItemSink(ITfLangBarItemSink* punk, DWORD* pdwCookie, GUID* rguidItem)
punkITfLangBarItemSink*in項目の更新通知を受け取る ITfLangBarItemSink へのポインタである。
pdwCookieDWORD*out登録解除に用いる識別クッキーを受け取る出力ポインタである。
rguidItemGUID*in通知対象とする項目を識別する GUID へのポインタである。
vtbl 8 HRESULT UnadviseItemSink(DWORD dwCookie)
dwCookieDWORDin登録解除する項目シンクの識別クッキーを指定する。
vtbl 9 HRESULT GetItemFloatingRect(DWORD dwThreadId, GUID* rguid, RECT* prc)
dwThreadIdDWORDin対象スレッドの ID を指定する。
rguidGUID*in対象とする言語バー項目を識別する GUID へのポインタである。
prcRECT*out項目のフローティング表示矩形(画面座標)を受け取る出力ポインタである。
vtbl 10 HRESULT GetItemsStatus(DWORD ulCount, GUID* prgguid, DWORD* pdwStatus)
ulCountDWORDin状態を取得する項目の数を指定する。
prgguidGUID*in状態を取得する項目を識別する GUID 配列へのポインタである。
pdwStatusDWORD*out各項目の状態を示すフラグの配列を受け取る出力ポインタである。
vtbl 11 HRESULT GetItemNum(DWORD* pulCount)
pulCountDWORD*out登録されている言語バー項目の数を受け取る出力ポインタである。
vtbl 12 HRESULT GetItems(DWORD ulCount, ITfLangBarItem** ppItem, TF_LANGBARITEMINFO* pInfo, DWORD* pdwStatus, DWORD* pcFetched)
ulCountDWORDin取得する項目の数を指定する。
ppItemITfLangBarItem**out取得した言語バー項目 ITfLangBarItem の配列を受け取る出力ポインタである。
pInfoTF_LANGBARITEMINFO*out各項目の情報を格納する TF_LANGBARITEMINFO 配列へのポインタである。
pdwStatusDWORD*out各項目の状態を示すフラグの配列を受け取る出力ポインタである。
pcFetchedDWORD*inout実際に取得された項目の数を受け取る出力ポインタである。
vtbl 13 HRESULT AdviseItemsSink(DWORD ulCount, ITfLangBarItemSink** ppunk, GUID* pguidItem, DWORD* pdwCookie)
ulCountDWORDin登録する項目シンクの数を指定する。
ppunkITfLangBarItemSink**in更新通知を受け取る ITfLangBarItemSink の配列へのポインタである。
pguidItemGUID*in各シンクが対象とする項目を識別する GUID 配列へのポインタである。
pdwCookieDWORD*out各シンクの登録解除に用いる識別クッキーの配列を受け取る出力ポインタである。
vtbl 14 HRESULT UnadviseItemsSink(DWORD ulCount, DWORD* pdwCookie)
ulCountDWORDin登録解除する項目シンクの数を指定する。
pdwCookieDWORD*in登録解除する各項目シンクの識別クッキーの配列へのポインタである。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ITfLangBarItemMgr "{BA468C55-9956-4FB1-A59D-52A7DD7CC6AA}"
#usecom global ITfLangBarItemMgr IID_ITfLangBarItemMgr "{}"
#comfunc global ITfLangBarItemMgr_EnumItems            3 sptr
#comfunc global ITfLangBarItemMgr_GetItem              4 var,sptr
#comfunc global ITfLangBarItemMgr_AddItem              5 sptr
#comfunc global ITfLangBarItemMgr_RemoveItem           6 sptr
#comfunc global ITfLangBarItemMgr_AdviseItemSink       7 sptr,var,var
#comfunc global ITfLangBarItemMgr_UnadviseItemSink     8 int
#comfunc global ITfLangBarItemMgr_GetItemFloatingRect  9 int,var,var
#comfunc global ITfLangBarItemMgr_GetItemsStatus       10 int,var,var
#comfunc global ITfLangBarItemMgr_GetItemNum           11 var
#comfunc global ITfLangBarItemMgr_GetItems             12 int,sptr,var,var,var
#comfunc global ITfLangBarItemMgr_AdviseItemsSink      13 int,sptr,var,var
#comfunc global ITfLangBarItemMgr_UnadviseItemsSink    14 int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。