java.lang.Object
javax.swing.text.AsyncBoxView.ChildLocator
- 封闭类:
-
AsyncBoxView
一个用于在局部区域内管理子视图有效位置的类,当局部区域发生变化时,AsyncBoxView 可能会不断变化,但可见区域需要保持相对稳定,直到布局线程决定向父级发布更新为止。
- 自版本:
- 1.3
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Rectangle用于子分配的形状,以避免创建大量垃圾。protected Rectangle最后一次分配的位置(用于向上刷新更改时重绘)。protected AsyncBoxView.ChildState最后一次有效偏移计算的位置。 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid子项更改通知。protected ShapegetChildAllocation(int index) 获取用于子视图的分配。getChildAllocation(int index, Shape a) 获取用于子视图的分配。intgetViewIndexAtPoint(float x, float y, Shape a) 获取给定点处的子视图索引。protected intgetViewIndexAtVisualOffset(float targetOffset) 定位负责沿主轴偏移箱内的视图。void绘制与剪辑区域相交的子项。protected void将当前分配的形状复制到用于存储当前分配的矩形中。
-
Field Details
-
lastValidOffset
最后一次有效偏移计算的位置。 -
lastAlloc
最后一次分配的位置(用于向上刷新更改时重绘)。 -
childAlloc
用于子分配的形状,以避免创建大量垃圾。
-
-
Constructor Details
-
ChildLocator
public ChildLocator()构造子定位器。
-
-
Method Details
-
childChanged
子项更改通知。这可能会影响是否需要新的偏移计算。这是由已更改其主跨度的 ChildState 对象调用的。因此,可能会被多个线程调用。- 参数:
-
cs- 子状态
-
paintChildren
绘制与剪辑区域相交的子项。- 参数:
-
g- 要使用的渲染表面
-
getChildAllocation
获取用于子视图的分配。这将更新尚未在给定索引之前更新的所有子项的偏移量。- 参数:
-
index- 子索引 -
a- 分配 - 返回:
- 用于子视图的分配
-
getViewIndexAtPoint
获取给定点处的子视图索引。这是由需要计算要将消息转发给哪个子项的各种 View 方法调用的。应在此对象上同步调用此方法,并且通常会跟随一个或多个调用 getChildAllocation 的调用,这些调用也应在同步块中。- 参数:
-
x- X 坐标 >= 0 -
y- Y 坐标 >= 0 -
a- 视图的分配 - 返回:
- 最近的子索引
-
getChildAllocation
获取用于子视图的分配。这不会更新 ChildState 记录中的偏移量。- 参数:
-
index- 索引 - 返回:
- 用于子视图的分配
-
setAllocation
将当前分配的形状复制到用于存储当前分配的矩形中。这将是 Java2D 特定实现中的浮点矩形。- 参数:
-
a- 分配
-
getViewIndexAtVisualOffset
protected int getViewIndexAtVisualOffset(float targetOffset) 定位负责沿主轴偏移箱内的视图。确保在给定目标跨度之后的所需偏移量上设置 ChildState 对象的偏移量。- 参数:
-
targetOffset- 目标偏移量 - 返回:
- 表示给定视觉位置(targetOffset)的视图的索引,如果没有视图表示该位置,则返回 -1
-