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

IDisplayPointer

COM
IID3050f69e-98b5-11cf-bb82-00aa00bdce0b継承元IUnknown自前メソッド開始 vtbl3

メソッド 19

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

vtbl 3 HRESULT MoveToPoint(POINT ptPoint, COORD_SYSTEM eCoordSystem, IHTMLElement* pElementContext, DWORD dwHitTestOptions, DWORD* pdwHitTestResults)
ptPointPOINTin移動先の座標を指定する POINT である。
eCoordSystemCOORD_SYSTEMin指定座標が属する座標系を指定する COORD_SYSTEM である。
pElementContextIHTMLElement*inヒットテストの基準とする要素コンテキストを指定する IHTMLElement へのポインタである。NULL を指定できる。
dwHitTestOptionsDWORDinヒットテストの動作を制御するオプションフラグを指定する DWORD である。
pdwHitTestResultsDWORD*outヒットテストの結果を受け取る DWORD へのポインタである。
vtbl 4 HRESULT MoveUnit(DISPLAY_MOVEUNIT eMoveUnit, INT lXPos)
eMoveUnitDISPLAY_MOVEUNITin表示ポインタを移動させる単位と方向を指定する DISPLAY_MOVEUNIT である。
lXPosINTin上下移動時に維持する目標 x 座標を指定する INT である。
vtbl 5 HRESULT PositionMarkupPointer(IMarkupPointer* pMarkupPointer)
pMarkupPointerIMarkupPointer*inこの表示ポインタの位置に合わせて配置するマークアップポインタを指定する IMarkupPointer へのポインタである。
vtbl 6 HRESULT MoveToPointer(IDisplayPointer* pDispPointer)
pDispPointerIDisplayPointer*inこの表示ポインタの移動先位置を持つ別の IDisplayPointer へのポインタである。
vtbl 7 HRESULT SetPointerGravity(POINTER_GRAVITY eGravity)
eGravityPOINTER_GRAVITYin設定するポインタグラビティ(挿入時に左右どちらに追従するか)を指定する POINTER_GRAVITY である。
vtbl 8 HRESULT GetPointerGravity(POINTER_GRAVITY* peGravity)
peGravityPOINTER_GRAVITY*out現在のポインタグラビティを受け取る POINTER_GRAVITY へのポインタである。
vtbl 9 HRESULT SetDisplayGravity(DISPLAY_GRAVITY eGravity)
eGravityDISPLAY_GRAVITYin設定する表示グラビティを指定する DISPLAY_GRAVITY である。
vtbl 10 HRESULT GetDisplayGravity(DISPLAY_GRAVITY* peGravity)
peGravityDISPLAY_GRAVITY*out現在の表示グラビティを受け取る DISPLAY_GRAVITY へのポインタである。
vtbl 11 HRESULT IsPositioned(BOOL* pfPositioned)
pfPositionedBOOL*outこの表示ポインタが現在位置付けられているかどうかを受け取る BOOL へのポインタである。
vtbl 12 HRESULT Unposition()
vtbl 13 HRESULT IsEqualTo(IDisplayPointer* pDispPointer, BOOL* pfIsEqual)
pDispPointerIDisplayPointer*in比較対象とする別の IDisplayPointer へのポインタである。
pfIsEqualBOOL*out両ポインタが同じ位置を指しているかどうかを受け取る BOOL へのポインタである。
vtbl 14 HRESULT IsLeftOf(IDisplayPointer* pDispPointer, BOOL* pfIsLeftOf)
pDispPointerIDisplayPointer*in比較対象とする別の IDisplayPointer へのポインタである。
pfIsLeftOfBOOL*outこのポインタが比較対象の左側にあるかどうかを受け取る BOOL へのポインタである。
vtbl 15 HRESULT IsRightOf(IDisplayPointer* pDispPointer, BOOL* pfIsRightOf)
pDispPointerIDisplayPointer*in比較対象とする別の IDisplayPointer へのポインタである。
pfIsRightOfBOOL*outこのポインタが比較対象の右側にあるかどうかを受け取る BOOL へのポインタである。
vtbl 16 HRESULT IsAtBOL(BOOL* pfBOL)
pfBOLBOOL*outポインタが行頭(Beginning Of Line)にあるかどうかを受け取る BOOL へのポインタである。
vtbl 17 HRESULT MoveToMarkupPointer(IMarkupPointer* pPointer, IDisplayPointer* pDispLineContext)
pPointerIMarkupPointer*in移動先位置を示すマークアップポインタを指定する IMarkupPointer へのポインタである。
pDispLineContextIDisplayPointer*in行コンテキストを指定する IDisplayPointer へのポインタである。曖昧な位置の解決に用いる。NULL を指定できる。
vtbl 18 HRESULT ScrollIntoView()
vtbl 19 HRESULT GetLineInfo(ILineInfo** ppLineInfo)
ppLineInfoILineInfo**out現在位置の行に関する情報を受け取る ILineInfo へのポインタである。不要になったら Release する。
vtbl 20 HRESULT GetFlowElement(IHTMLElement** ppLayoutElement)
ppLayoutElementIHTMLElement**out現在位置を含むフロー(レイアウト)要素を受け取る IHTMLElement へのポインタである。不要になったら Release する。
vtbl 21 HRESULT QueryBreaks(DWORD* pdwBreaks)
pdwBreaksDWORD*out現在位置における改行・区切りの状態を表すフラグを受け取る DWORD へのポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IDisplayPointer "{3050F69E-98B5-11CF-BB82-00AA00BDCE0B}"
#usecom global IDisplayPointer IID_IDisplayPointer "{}"
#comfunc global IDisplayPointer_MoveToPoint            3 int,int,sptr,int,var
#comfunc global IDisplayPointer_MoveUnit               4 int,int
#comfunc global IDisplayPointer_PositionMarkupPointer  5 sptr
#comfunc global IDisplayPointer_MoveToPointer          6 sptr
#comfunc global IDisplayPointer_SetPointerGravity      7 int
#comfunc global IDisplayPointer_GetPointerGravity      8 var
#comfunc global IDisplayPointer_SetDisplayGravity      9 int
#comfunc global IDisplayPointer_GetDisplayGravity      10 var
#comfunc global IDisplayPointer_IsPositioned           11 var
#comfunc global IDisplayPointer_Unposition             12
#comfunc global IDisplayPointer_IsEqualTo              13 sptr,var
#comfunc global IDisplayPointer_IsLeftOf               14 sptr,var
#comfunc global IDisplayPointer_IsRightOf              15 sptr,var
#comfunc global IDisplayPointer_IsAtBOL                16 var
#comfunc global IDisplayPointer_MoveToMarkupPointer    17 sptr,sptr
#comfunc global IDisplayPointer_ScrollIntoView         18
#comfunc global IDisplayPointer_GetLineInfo            19 sptr
#comfunc global IDisplayPointer_GetFlowElement         20 sptr
#comfunc global IDisplayPointer_QueryBreaks            21 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。