Класс AsyncBoxView.ChildLocator
java.lang.Object
javax.swing.text.AsyncBoxView.ChildLocator
- Вложенный класс:
AsyncBoxView
public class AsyncBoxView.ChildLocator extends Object
Класс для управления эффективным расположением дочерних представлений в локализованной области во время внесения изменений вокруг локализованной области. AsyncBoxView может непрерывно изменяться, но видимая область должна оставаться достаточно стабильной до тех пор, пока поток макета не опубликует обновление в родительском элементе.
- С:
- 1.3
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Rectangle |
childAlloc |
Форма для распределения дочерних элементов, чтобы избежать создания большого количества мусора. |
protected Rectangle |
lastAlloc |
Последнее распределение (для перерисовки при обновлении изменений вверх). |
protected AsyncBoxView.ChildState |
lastValidOffset |
Местоположение последнего вычисления смещения, которое является допустимым. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ChildLocator() |
создание локатора дочерних элементов. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
childChanged |
Уведомление о том, что дочерний элемент изменился. |
protected Shape |
getChildAllocation |
Получение распределения для использования дочерним представлением. |
Shape |
getChildAllocation |
Получение распределения для использования дочерним представлением. |
int |
getViewIndexAtPoint |
Получение индекса дочернего представления в данной точке. |
protected int |
getViewIndexAtVisualOffset |
Нахождение представления, ответственного за смещение в ячейке по основной оси. |
void |
paintChildren |
Перерисовка дочерних элементов, пересекающих область обрезки. |
protected void |
setAllocation |
Копирование текущей формы распределения в прямоугольник, используемый для хранения текущего распределения. |
Подробное описание полей
lastValidOffset
protected AsyncBoxView.ChildState lastValidOffset
Местоположение последнего вычисления смещения, которое является допустимым.
lastAlloc
protected Rectangle lastAlloc
Последнее распределение (для перерисовки при обновлении изменений вверх).
childAlloc
protected Rectangle childAlloc
Форма для распределения дочерних элементов, чтобы избежать создания большого количества мусора.
Подробное описание конструкторов
ChildLocator
public ChildLocator()
создание локатора дочерних элементов.
Подробное описание методов
childChanged
public void childChanged(AsyncBoxView.ChildState cs)
Уведомление о том, что дочерний элемент изменился. Это может повлиять на необходимость новых вычислений смещения. Вызывается объектом ChildState, изменившим свой основной диапазон. Следовательно, это может быть вызвано несколькими потоками.
- Параметры:
-
cs- состояние дочернего элемента
paintChildren
public void paintChildren(Graphics g)
Перерисовка дочерних элементов, пересекающих область обрезки.
- Параметры:
-
g- поверхность рендеринга для использования
getChildAllocation
public Shape getChildAllocation(int index, Shape a)
Получение распределения для использования дочерним представлением. Это обновит смещения для всех дочерних элементов, которые еще не были обновлены перед заданным индексом.
- Параметры:
-
index- индекс дочернего элемента -
a- распределение - Возвращает:
- распределение для использования дочерним представлением
getViewIndexAtPoint
public int getViewIndexAtPoint(float x, float y, Shape a)
Получение индекса дочернего представления в данной точке. Это вызывается различными методами View, которым необходимо вычислить, какому дочернему элементу передать сообщение. Это должно вызываться в блоке, синхронизированном с этим объектом, и, как правило, за ним следуют один или несколько вызовов getChildAllocation, которые также должны находиться в синхронизированном блоке.
- Параметры:
-
x- координата X >= 0 -
y- координата Y >= 0 -
a- распределение до представления - Возвращает:
- наиболее близкий индекс дочернего элемента
getChildAllocation
protected Shape getChildAllocation(int index)
Получение распределения для использования дочерним представлением. Это не обновляет смещения в записях ChildState.
- Параметры:
-
index- индекс - Возвращает:
- распределение для использования дочерним представлением
setAllocation
protected void setAllocation(Shape a)
Копирование текущей формы распределения в прямоугольник, используемый для хранения текущего распределения. В реализации, специфичной для Java2D, это будет прямоугольник с плавающей точкой.
- Параметры:
-
a- распределение
getViewIndexAtVisualOffset
protected int getViewIndexAtVisualOffset(float targetOffset)
Нахождение представления, ответственного за смещение в ячейке по основной оси. Убедитесь, что смещения установлены для объектов ChildState до заданного целевого раздела после желаемого смещения.
- Параметры:
-
targetOffset- целевое смещение - Возвращает:
- индекс представления, представляющего данное визуальное расположение (targetOffset), или -1, если это расположение не представлено ни одним представлением
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/javax/swing/text/AsyncBoxView.ChildLocator.html