java.lang.Object
javax.swing.text.AsyncBoxView.ChildLocator
- 封闭类:
-
AsyncBoxView
一个用于在局部区域内管理子视图有效位置的类,当局部区域发生变化时,AsyncBoxView 可能会不断变化,但可见区域需要保持相对稳定,直到布局线程决定向父级发布更新为止。
- 自版本:
- 1.3
-
Field Summary
Modifier and TypeFieldDescriptionprotected Rectangle
用于子分配的形状,以避免创建大量垃圾。protected Rectangle
最后一次分配的位置(用于向上刷新更改时重绘)。protected AsyncBoxView.ChildState
最后一次有效偏移计算的位置。 -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
子项更改通知。protected Shape
getChildAllocation
(int index) 获取用于子视图的分配。getChildAllocation
(int index, Shape a) 获取用于子视图的分配。int
getViewIndexAtPoint
(float x, float y, Shape a) 获取给定点处的子视图索引。protected int
getViewIndexAtVisualOffset
(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
-