Spec-Zone.ru › OpenJDK 8

Класс FlowView.FlowStrategy

  • java.lang.Object
    • javax.swing.text.FlowView.FlowStrategy
Вложенный класс:
FlowView

public static class FlowView.FlowStrategy
extends Object

Стратегия поддержания физической формы потока. Реализация по умолчанию полностью бессостоятельна и пересчитывает весь поток, если макет недействителен для данного FlowView. Альтернативные стратегии могут быть реализованы путём наследования и могут выполнять инкрементальный ремонт макета или альтернативное поведение разрыва.

С момента:
1.3

Конструкторы

Конструктор и описание
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)

Предоставляет уведомление о том, что что-то было удалено из документа в месте, за которое отвечает данный вид потока.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

FlowStrategy

public FlowStrategy()

Методы

insertUpdate

public void insertUpdate(FlowView fv,
                         DocumentEvent e,
                         Rectangle alloc)

Предоставляет уведомление о том, что что-то было вставлено в документ в месте, за которое отвечает данный вид потока. Стратегия должна обновить соответствующую изменённую область (которая зависит от используемой стратегии ремонта).

Параметры:
e - информация о изменении из связанного документа
alloc - текущее распределение представления внутри отступов. Это значение будет null, если представление ещё не отображено.
См. также:
View.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

removeUpdate

public void removeUpdate(FlowView fv,
                         DocumentEvent e,
                         Rectangle alloc)

Предоставляет уведомление о том, что что-то было удалено из документа в месте, за которое отвечает данный вид потока.

Параметры:
e - информация о изменении из связанного документа
alloc - текущее распределение представления внутри отступов.
См. также:
View.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

changedUpdate

public void changedUpdate(FlowView fv,
                          DocumentEvent e,
                          Rectangle alloc)

Предоставляет уведомление от документа о том, что атрибуты были изменены в месте, за которое отвечает этот вид.

Параметры:
fv - FlowView содержащий изменения
e - DocumentEvent описывающий изменения, внесённые в документ
alloc - Границы представления
См. также:
View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

getLogicalView

protected View getLogicalView(FlowView fv)

Этот метод предоставляет стратегиям потока доступ к логическому представлению 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 для выполнения корректировок строки, чтобы она соответствовала заданной области.

Параметры:
rowIndex - индекс строки для заполнения представлениями. Предполагается, что строка пуста при входе.
pos - Текущая позиция в дочерних элементах этого элемента представления, с которого начать.
Возвращает:
позицию для начала следующей строки

adjustRow

protected void adjustRow(FlowView fv,
                         int rowIndex,
                         int desiredSpan,
                         int x)

Корректирует заданную строку, если это возможно, чтобы она вписалась в область макета. По умолчанию это будет пытаться найти наибольший вес разрыва, ближайший к концу строки. Если встречен принудительный разрыв, разрыв будет расположен там.

Параметры:
rowIndex - строка для корректировки в соответствии с текущей областью макета.
desiredSpan - текущая область макета >= 0
x - позиция, с которой начинается r.

createView

protected View createView(FlowView fv,
                          int startOffset,
                          int spanLeft,
                          int rowIndex)

Создаёт представление, которое можно использовать для представления текущей части потока. Это может быть как целое представление из логического представления, так и фрагмент логического представления.

Параметры:
fv - представление, содержащее поток
startOffset - начальная позиция для создаваемого представления
spanLeft - оставшаяся область для заполнения строки
rowIndex - строка, в которую будет помещено представление

© 1993, 2020, 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