コンテンツにスキップ

RenderAbsorbPointer クラス

子要素の描画とレイアウトを維持したまま、ポインターのヒットを自身で吸収できるRenderObjectです。

名前空間: FloatSoda.RenderObjects.Gesture
アセンブリ: FloatSoda.dll

public class RenderAbsorbPointer : RenderProxyBox, IHitTestTarget, IHasSingleChildRenderObject

object ← RenderObject ← RenderBox ← RenderProxyBox ← RenderAbsorbPointer

IHitTestTarget, IHasSingleChildRenderObject

RenderProxyBox.Child, RenderProxyBox.SetupParentData(RenderObject), RenderProxyBox.PerformLayout(), RenderProxyBox.ComputeMinIntrinsicWidth(double), RenderProxyBox.ComputeMaxIntrinsicWidth(double), RenderProxyBox.ComputeMinIntrinsicHeight(double), RenderProxyBox.ComputeMaxIntrinsicHeight(double), RenderProxyBox.Paint(PaintingContext, Offset), RenderProxyBox.Attach(RenderPipeline?), RenderProxyBox.Detach(), RenderProxyBox.VisitChildren(Action<RenderObject>), RenderProxyBox.RedepthChildren(), RenderProxyBox.HitTestChildren(HitTestResult, Offset), RenderBox.Size, RenderBox.GetMinIntrinsicWidth(double), RenderBox.GetMaxIntrinsicWidth(double), RenderBox.GetMinIntrinsicHeight(double), RenderBox.GetMaxIntrinsicHeight(double), RenderBox.ComputeMinIntrinsicWidth(double), RenderBox.ComputeMaxIntrinsicWidth(double), RenderBox.ComputeMinIntrinsicHeight(double), RenderBox.ComputeMaxIntrinsicHeight(double), RenderBox.HitTest(HitTestResult, Offset), RenderBox.HitTestChildren(HitTestResult, Offset), RenderBox.HitTestSelf(Offset), RenderBox.HandleEvent(PointerEvent, HitTestEntry), RenderObject.Constraints, RenderObject.ParentData, RenderObject.Parent, RenderObject.Owner, RenderObject.Layer, RenderObject.Size, RenderObject.NeedsPaint, RenderObject.NeedsLayout, RenderObject.Depth, RenderObject.IsRepaintBoundary, RenderObject.Attached, RenderObject.RelayoutBoundary, RenderObject.SizedByParent, RenderObject.PerformLayout(), RenderObject.Layout(BoxConstraints, bool), RenderObject.LayoutWithoutResize(), RenderObject.CleanChildRelayoutBoundary(), RenderObject.MarkNeedsLayout(), RenderObject.MarkParentNeedsLayout(), RenderObject.Attach(RenderPipeline?), RenderObject.AdoptChild(RenderObject), RenderObject.RedepthChild(RenderObject), RenderObject.RedepthChildren(), RenderObject.VisitChildren(Action<RenderObject>), RenderObject.SetupParentData(RenderObject), RenderObject.Paint(PaintingContext, Offset), RenderObject.MarkNeedsPaint(), RenderObject.Detach(), RenderObject.DropChild(RenderObject), RenderObject.HandleEvent(PointerEvent, HitTestEntry), object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.MemberwiseClone(), object.ReferenceEquals(object?, object?), object.ToString()

子要素へのヒットテストを遮断し、自身の領域でヒットを吸収するかどうかを取得または設定します。

public bool Absorbing { get; set; }

bool

変更は次回のヒットテストから反映され、Layout DirtyまたはPaint Dirtyにはしません。

吸収中は自身の領域内かだけを判定し、子要素をヒットパスへ追加しません。

public override bool HitTest(HitTestResult result, Offset position)

result HitTestResult

ヒットした対象を格納する結果。

position Offset

このRenderObjectのローカル座標で表した判定位置。

bool

吸収中は位置が自身の領域内にある場合、それ以外は基底実装がヒットした場合にtrue。

AbsorbPointer