Win32 API 日本語リファレンス
ホームWeb.MsHtml › IDocHostUIHandler

IDocHostUIHandler

COM
IIDbd3f23c0-d43e-11cf-893b-00aa00bdce1a継承元IUnknown自前メソッド開始 vtbl3

メソッド 15

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

vtbl 3 HRESULT ShowContextMenu(DWORD dwID, POINT* ppt, IUnknown* pcmdtReserved, IDispatch* pdispReserved)
dwIDDWORDin表示するコンテキストメニューの種類を示す識別子を指定する。
pptPOINT*inメニューを表示するスクリーン座標を示す POINT 構造体へのポインタである。
pcmdtReservedIUnknown*in予約済みであり、IOleCommandTarget を取得できるオブジェクトへのポインタである。
pdispReservedIDispatch*inコンテキストメニューが要求された対象オブジェクトを表す IDispatch へのポインタである。
vtbl 4 HRESULT GetHostInfo(DOCHOSTUIINFO* pInfo)
pInfoDOCHOSTUIINFO*inoutホストの UI 機能やフラグを設定して返す DOCHOSTUIINFO 構造体へのポインタである。
vtbl 5 HRESULT ShowUI(DWORD dwID, IOleInPlaceActiveObject* pActiveObject, IOleCommandTarget* pCommandTarget, IOleInPlaceFrame* pFrame, IOleInPlaceUIWindow* pDoc)
dwIDDWORDin表示する UI の種類を示す識別子を指定する。
pActiveObjectIOleInPlaceActiveObject*inアクティブなインプレースオブジェクトを表す IOleInPlaceActiveObject へのポインタである。
pCommandTargetIOleCommandTarget*inコマンドの送受信に使用する IOleCommandTarget へのポインタである。
pFrameIOleInPlaceFrame*inインプレースフレームウィンドウを表す IOleInPlaceFrame へのポインタである。
pDocIOleInPlaceUIWindow*inドキュメントウィンドウを表す IOleInPlaceUIWindow へのポインタである。
vtbl 6 HRESULT HideUI()
vtbl 7 HRESULT UpdateUI()
vtbl 8 HRESULT EnableModeless(BOOL fEnable)
fEnableBOOLinモードレスダイアログを有効にする場合は TRUE、無効にする場合は FALSE を指定する。
vtbl 9 HRESULT OnDocWindowActivate(BOOL fActivate)
fActivateBOOLinドキュメントウィンドウがアクティブ化される場合は TRUE、非アクティブ化される場合は FALSE を指定する。
vtbl 10 HRESULT OnFrameWindowActivate(BOOL fActivate)
fActivateBOOLinフレームウィンドウがアクティブ化される場合は TRUE、非アクティブ化される場合は FALSE を指定する。
vtbl 11 HRESULT ResizeBorder(RECT* prcBorder, IOleInPlaceUIWindow* pUIWindow, BOOL fRameWindow)
prcBorderRECT*in境界スペースの座標を示す RECT 構造体へのポインタである。
pUIWindowIOleInPlaceUIWindow*in境界スペースが変化したインプレース UI ウィンドウを表す IOleInPlaceUIWindow へのポインタである。
fRameWindowBOOLin境界がフレームウィンドウのものである場合は TRUE、ドキュメントウィンドウのものである場合は FALSE を指定する。
vtbl 12 HRESULT TranslateAccelerator(MSG* lpMsg, GUID* pguidCmdGroup, DWORD nCmdID)
lpMsgMSG*in変換対象となるキーボードメッセージを格納した MSG 構造体へのポインタである。
pguidCmdGroupGUID*inコマンドグループを識別する GUID へのポインタである。
nCmdIDDWORDinコマンド識別子を指定する。
vtbl 13 HRESULT GetOptionKeyPath(LPWSTR* pchKey, DWORD dw)
pchKeyLPWSTR*outユーザーオプションを格納したレジストリキーのパス文字列を受け取るポインタである。文字列は呼び出し側が解放する。
dwDWORDin予約済みであり、0 を指定する。
vtbl 14 HRESULT GetDropTarget(IDropTarget* pDropTarget, IDropTarget** ppDropTarget)
pDropTargetIDropTarget*inMSHTML が提供する既定のドロップターゲットを表す IDropTarget へのポインタである。
ppDropTargetIDropTarget**outホストが代替として使用するドロップターゲットを受け取るポインタである。
vtbl 15 HRESULT GetExternal(IDispatch** ppDispatch)
ppDispatchIDispatch**outホストが提供する外部オブジェクトを表す IDispatch へのポインタを受け取る。対象がない場合は NULL が設定される。
vtbl 16 HRESULT TranslateUrl(DWORD dwTranslate, LPWSTR pchURLIn, LPWSTR* ppchURLOut)
dwTranslateDWORDin予約済みであり、0 を指定する。
pchURLInLPWSTRin変換対象の URL 文字列を指定する。
ppchURLOutLPWSTR*out変換後の URL 文字列を受け取るポインタである。文字列は呼び出し側が解放する。
vtbl 17 HRESULT FilterDataObject(IDataObject* pDO, IDataObject** ppDORet)
pDOIDataObject*inフィルタ対象となるデータオブジェクトを表す IDataObject へのポインタである。
ppDORetIDataObject**outフィルタ後のデータオブジェクトを表す IDataObject へのポインタを受け取る。フィルタ不要な場合は NULL が設定される。

HSP用 COM定義

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

出力引数:
#define global IID_IDocHostUIHandler "{BD3F23C0-D43E-11CF-893B-00AA00BDCE1A}"
#usecom global IDocHostUIHandler IID_IDocHostUIHandler "{}"
#comfunc global IDocHostUIHandler_ShowContextMenu        3 int,var,sptr,sptr
#comfunc global IDocHostUIHandler_GetHostInfo            4 var
#comfunc global IDocHostUIHandler_ShowUI                 5 int,sptr,sptr,sptr,sptr
#comfunc global IDocHostUIHandler_HideUI                 6
#comfunc global IDocHostUIHandler_UpdateUI               7
#comfunc global IDocHostUIHandler_EnableModeless         8 int
#comfunc global IDocHostUIHandler_OnDocWindowActivate    9 int
#comfunc global IDocHostUIHandler_OnFrameWindowActivate  10 int
#comfunc global IDocHostUIHandler_ResizeBorder           11 var,sptr,int
#comfunc global IDocHostUIHandler_TranslateAccelerator   12 var,var,int
#comfunc global IDocHostUIHandler_GetOptionKeyPath       13 var,int
#comfunc global IDocHostUIHandler_GetDropTarget          14 sptr,sptr
#comfunc global IDocHostUIHandler_GetExternal            15 sptr
#comfunc global IDocHostUIHandler_TranslateUrl           16 int,wstr,var
#comfunc global IDocHostUIHandler_FilterDataObject       17 sptr,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。