Spec-Zone.ru › OpenJDK 27

Класс FlowView.FlowStrategy

java.lang.Object
javax.swing.text.FlowView.FlowStrategy
Внешний класс:
FlowView
public static class FlowView.FlowStrategy extends Object
Стратегия поддержки физической формы потока. Реализация по умолчанию полностью не содержит состояния и пересчитывает весь поток, если компоновка заданного FlowView недействительна. Можно реализовать альтернативные стратегии, создав подкласс; они могут выполнять инкрементальное исправление компоновки или использовать альтернативное поведение при разбиении.
Начиная с версии:
1.3

Краткое описание конструкторов

Конструктор Описание
FlowStrategy()
Создает FlowStrategy.

Краткое описание методов

Модификатор и тип Метод Описание
protected void adjustRow(FlowView fv, int rowIndex, int desiredSpan, int x)
При необходимости корректирует заданную строку, чтобы она уместилась в пределах диапазона компоновки.
void changedUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
Уведомляет о том, что документ изменил атрибуты в области, за которую отвечает это представление.
protected View createView(FlowView fv, int startOffset, int spanLeft, int rowIndex)
Создает представление, которое можно использовать для отображения текущего фрагмента потока.
protected View getLogicalView(FlowView fv)
Этот метод предоставляет стратегиям потока доступ к логическому представлению FlowView.
void insertUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
Уведомляет о том, что в документ было вставлено содержимое в области, за которую отвечает заданное представление потока.
void layout(FlowView fv)
Обновляет поток в заданном FlowView.
protected int layoutRow(FlowView fv, int rowIndex, int pos)
Создает строку представлений, которая уместится в диапазоне компоновки строки.
void removeUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
Уведомляет о том, что из документа было удалено содержимое в области, за которую отвечает заданное представление потока.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, является ли другой объект «равным» этому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация объявлена устаревшей и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает одну нить, ожидающую на мониторе этого объекта.
final void notifyAll()
Пробуждает все нити, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущую нить ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущую нить ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущую нить ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

Подробное описание конструкторов

FlowStrategy

public FlowStrategy()
Создает FlowStrategy.

Подробное описание методов

insertUpdate

public void insertUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
Уведомляет о том, что в документ было вставлено содержимое в области, за которую отвечает заданное представление потока. Стратегия должна обновить соответствующую измененную область (которая зависит от используемой стратегии исправления).
Параметры:
fv — представление потока
e — сведения об изменении из связанного документа
alloc — текущая область выделения представления внутри отступов. Если представление еще не отображалось, это значение будет равно null.
См. также:
  • View.insertUpdate(DocumentEvent, Shape, ViewFactory)

removeUpdate

public void removeUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
Уведомляет о том, что из документа было удалено содержимое в области, за которую отвечает заданное представление потока.
Параметры:
fv — представление потока
e — сведения об изменении из связанного документа
alloc — текущая область выделения представления внутри отступов.
См. также:
  • View.removeUpdate(DocumentEvent, Shape, ViewFactory)

changedUpdate

public void changedUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
Уведомляет о том, что документ изменил атрибуты в области, за которую отвечает это представление.
Параметры:
fv — FlowView, содержащий изменения
e — DocumentEvent, описывающий изменения, внесенные в документ
alloc — границы представления
См. также:
  • View.changedUpdate(DocumentEvent, Shape, ViewFactory)

getLogicalView

protected View getLogicalView(FlowView fv)
Этот метод предоставляет стратегиям потока доступ к логическому представлению FlowView.
Параметры:
fv — FlowView
Возвращает:
логическое представление FlowView

layout

public void layout(FlowView fv)
Обновляет поток в заданном FlowView. По умолчанию это приводит к перестроению всех строк (дочерних представлений) с учетом заданных ограничений для каждой строки. Этот метод вызывается методом FlowView.layout для обновления дочерних представлений в потоке.
Параметры:
fv — представление, для которого нужно перестроить поток

layoutRow

protected int layoutRow(FlowView fv, int rowIndex, int pos)
Создает строку представлений, которая уместится в диапазоне компоновки строки. Этот метод вызывается методом layout. Его реализация заполняет строку, многократно вызывая метод createView, пока не будет исчерпан доступный диапазон, не встретится принудительный разрыв или метод createView не вернет null. Если оставшийся диапазон исчерпан, будет вызван метод adjustRow, чтобы скорректировать строку и попытаться уместить ее в заданный диапазон.
Параметры:
fv — представление потока
rowIndex — индекс заполняемой представлениями строки. Предполагается, что при входе строка пуста.
pos — текущая позиция среди дочерних элементов этого элемента представления, с которой нужно начать.
Возвращает:
позицию начала следующей строки

adjustRow

protected void adjustRow(FlowView fv, int rowIndex, int desiredSpan, int x)
При необходимости корректирует заданную строку, чтобы она уместилась в пределах диапазона компоновки. По умолчанию метод пытается найти максимально возможный вес разрыва ближе всего к концу строки. Если встречается принудительный разрыв, разрыв будет установлен в этом месте.
Параметры:
fv — представление потока
rowIndex — строка, которую нужно подогнать под текущий диапазон компоновки.
desiredSpan — текущий диапазон компоновки >= 0
x — позиция, с которой начинается r.

createView

protected View createView(FlowView fv, int startOffset, int spanLeft, int rowIndex)
Создает представление, которое можно использовать для отображения текущего фрагмента потока. Это может быть как целое представление из логического представления, так и его фрагмент.
Параметры:
fv — представление, содержащее поток
startOffset — начальная позиция создаваемого представления
spanLeft — оставшаяся часть диапазона для заполнения строки
rowIndex — строка, в которую будет помещено представление
Возвращает:
представление, которое можно использовать для отображения текущего фрагмента потока

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API