Spec-Zone.ru › OpenJDK 27

Класс AsyncBoxView

java.lang.Object
javax.swing.text.View
javax.swing.text.AsyncBoxView
Все реализуемые интерфейсы:
SwingConstants
public class AsyncBoxView extends View
Бокс, выполняющий компоновку асинхронно. Это полезно, чтобы не блокировать поток обработки событий GUI выполнением компоновки. Компоновка выполняется поэтапно, в соответствии с операциями над дочерними представлениями. После обращения к каждому дочернему представлению для выполнения части компоновки (операции, потенциально требующей значительного времени) оставшиеся задачи можно отменить или приступить к выполнению новой задачи с более высоким приоритетом (например, для обработки синхронного запроса или видимой области).

Во время обращения к дочернему представлению для связанного документа захватывается блокировка чтения, чтобы модель оставалась стабильной при доступе к ней.

Начиная с версии:
1.3

Краткое описание вложенных классов

Модификатор и тип Класс Описание
class  AsyncBoxView.ChildLocator
Класс для управления эффективным положением дочерних представлений в локализованной области, пока в этой области вносятся изменения.
class  AsyncBoxView.ChildState
Запись, представляющая состояние компоновки дочернего представления.

Краткое описание полей

Модификатор и тип Поле Описание
protected AsyncBoxView.ChildLocator locator
Объект, управляющий смещениями дочерних элементов.

Поля, объявленные в классе View

BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
Модификатор и тип Поле Описание
static final int BadBreakWeight
Вес, указывающий, что представление не подходит для разрыва при форматировании.
static final int ExcellentBreakWeight
Вес, указывающий, что представление поддерживает разрыв и это очень подходящее место для разрыва.
static final int ForcedBreakWeight
Вес, указывающий, что представление поддерживает разрыв и его необходимо разбить, чтобы оно было представлено правильно при размещении в представлении, которое форматирует дочерние элементы путем их разбиения.
static final int GoodBreakWeight
Вес, указывающий, что представление поддерживает разрыв, но, вероятно, существуют более подходящие места.
static final int X_AXIS
Ось для операций форматирования/разрыва.
static final int Y_AXIS
Ось для операций форматирования/разрыва.

Поля, объявленные в интерфейсе SwingConstants

BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
Модификатор и тип Поле Описание
static final int BOTTOM
Константа ориентации бокса, задающая его нижнюю сторону.
static final int CENTER
Центральное положение в области.
static final int EAST
Направление по компасу: восток (вправо).
static final int HORIZONTAL
Горизонтальная ориентация.
static final int LEADING
Обозначает передний край текста для языков с направлением письма слева направо и справа налево.
static final int LEFT
Константа ориентации бокса, задающая его левую сторону.
static final int NEXT
Обозначает следующее направление в последовательности.
static final int NORTH
Направление по компасу: север (вверх).
static final int NORTH_EAST
Направление по компасу: северо-восток (вверх и вправо).
static final int NORTH_WEST
Направление по компасу: северо-запад (вверх и влево).
static final int PREVIOUS
Обозначает предыдущее направление в последовательности.
static final int RIGHT
Константа ориентации бокса, задающая его правую сторону.
static final int SOUTH
Направление по компасу: юг (вниз).
static final int SOUTH_EAST
Направление по компасу: юго-восток (вниз и вправо).
static final int SOUTH_WEST
Направление по компасу: юго-запад (вниз и влево).
static final int TOP
Константа ориентации бокса, задающая его верхнюю сторону.
static final int TRAILING
Обозначает задний край текста для языков с направлением письма слева направо и справа налево.
static final int VERTICAL
Вертикальная ориентация.
static final int WEST
Направление по компасу: запад (влево).

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

Конструктор Описание
AsyncBoxView(Element elem, int axis)
Создает представление-бокс, выполняющее асинхронную компоновку.

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

Модификатор и тип Метод Описание
protected AsyncBoxView.ChildState createChildState(View v)
Новые записи ChildState создаются с помощью этого метода, чтобы подклассы могли расширять записи ChildState и добавлять в них данные или функциональность.
protected void flushRequirementChanges()
Передает изменения предпочтений родительскому представлению.
float getBottomInset()
Возвращает нижнюю часть поля вокруг представления.
Shape getChildAllocation(int index, Shape a)
Получает выделенную область для указанного дочернего представления.
protected AsyncBoxView.ChildState getChildState(int index)
Получает объект, представляющий состояние компоновки дочернего элемента с указанным индексом.
protected boolean getEstimatedMajorSpan()
Оценен ли сейчас основной размер?
protected float getInsetSpan(int axis)
Получает размер вдоль оси, занимаемый внутренними отступами.
protected LayoutQueue getLayoutQueue()
Получает очередь, используемую для компоновки.
float getLeftInset()
Возвращает левую часть поля вокруг представления.
int getMajorAxis()
Получает основную ось (ось, вдоль которой располагаются дочерние элементы).
float getMaximumSpan(int axis)
Определяет максимальный размер этого представления вдоль оси.
float getMinimumSpan(int axis)
Определяет минимальный размер этого представления вдоль оси.
int getMinorAxis()
Получает второстепенную ось (ось, перпендикулярную оси размещения).
int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet)
Предоставляет способ определить следующее визуально представленное положение в модели, в котором можно разместить каретку.
float getPreferredSpan(int axis)
Определяет предпочтительный размер этого представления вдоль оси.
float getRightInset()
Возвращает правую часть поля вокруг представления.
float getTopInset()
Возвращает верхнюю часть поля вокруг представления.
View getView(int n)
Получает n-е дочернее представление.
int getViewCount()
Возвращает количество представлений в этом представлении.
int getViewIndex(int pos, Position.Bias b)
Возвращает индекс дочернего представления, соответствующий указанному положению в модели.
protected int getViewIndexAtPosition(int pos, Position.Bias b)
Получает индекс дочернего представления, соответствующий указанному положению в модели.
protected void loadChildren(ViewFactory f)
Загружает все дочерние представления для инициализации представления.
protected void majorRequirementChange(AsyncBoxView.ChildState cs, float delta)
Требования к основной оси изменились.
protected void minorRequirementChange(AsyncBoxView.ChildState cs)
Требования к второстепенной оси изменились.
Shape modelToView(int pos, Shape a, Position.Bias b)
Предоставляет преобразование координат из пространства координат модели документа в пространство координат соответствующего ей представления.
void paint(Graphics g, Shape alloc)
Отображает представление с использованием указанной области размещения и поверхности отрисовки.
void preferenceChanged(View child, boolean width, boolean height)
Дочерние представления могут вызывать этот метод у родителя, чтобы сообщить об изменении предпочтения, которое следует повторно учесть при компоновке.
void replace(int offset, int length, View[] views)
Вызывает метод суперкласса для обновления дочерних представлений и обновляет записи состояния дочерних элементов.
void setBottomInset(float i)
Задает нижнюю часть поля вокруг представления.
protected void setEstimatedMajorSpan(boolean isEstimated)
Задает свойство estimatedMajorSpan, определяющее, следует ли считать основной размер оценочным.
void setLeftInset(float i)
Задает левую часть поля вокруг представления.
void setParent(View parent)
Задает родительское представление.
void setRightInset(float i)
Задает правую часть поля вокруг представления.
void setSize(float width, float height)
Задает размер представления.
void setTopInset(float i)
Задает верхнюю часть поля вокруг представления.
protected void updateLayout(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a)
Обновляет компоновку в ответ на уведомление об изменении модели.
int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)
Предоставляет преобразование координат из пространства координат представления в логическое пространство координат модели.

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

append, breakView, changedUpdate, createFragment, forwardUpdate, forwardUpdateToView, getAlignment, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getResizeWeight, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, insertUpdate, isVisible, modelToView, modelToView, remove, removeAll, removeUpdate, updateChildren, viewToModel
Модификатор и тип Метод Описание
void append(View v)
Добавляет одно дочернее представление.
View breakView(int axis, int offset, float pos, float len)
Пытается разбить это представление по указанной оси.
void changedUpdate(DocumentEvent e, Shape a, ViewFactory f)
Получает уведомление от документа об изменении атрибутов в области, за которую отвечает это представление.
View createFragment(int p0, int p1)
Создает представление, отображающее часть элемента.
protected void forwardUpdate(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a, ViewFactory f)
Передает указанный DocumentEvent дочерним представлениям, которые должны получить уведомление об изменении модели.
protected void forwardUpdateToView(View v, DocumentEvent e, Shape a, ViewFactory f)
Передает DocumentEvent указанному дочернему представлению.
float getAlignment(int axis)
Определяет желаемое выравнивание этого представления вдоль оси.
AttributeSet getAttributes()
Получает атрибуты, используемые при отрисовке.
int getBreakWeight(int axis, float pos, float len)
Определяет, насколько подходит место разрыва в этом представлении.
Container getContainer()
Получает контейнер, в котором размещено представление.
Document getDocument()
Получает модель, связанную с представлением.
Element getElement()
Получает структурную часть объекта, которой соответствует это представление.
int getEndOffset()
Получает часть модели, за которую отвечает это представление.
Graphics getGraphics()
Получает Graphics для отрисовки.
View getParent()
Возвращает родительское представление.
int getResizeWeight(int axis)
Определяет возможность изменения размера представления вдоль указанной оси.
int getStartOffset()
Получает часть модели, за которую отвечает это представление.
String getToolTipText(float x, float y, Shape allocation)
Возвращает текст всплывающей подсказки в указанном месте.
ViewFactory getViewFactory()
Получает реализацию ViewFactory, предоставляющую данные иерархии представлений.
int getViewIndex(float x, float y, Shape allocation)
Возвращает индекс дочернего представления, соответствующий указанному положению в представлении.
void insert(int offs, View v)
Вставляет одно дочернее представление.
void insertUpdate(DocumentEvent e, Shape a, ViewFactory f)
Получает уведомление о вставке данных в документ в области, за которую отвечает это представление.
boolean isVisible()
Возвращает логическое значение, указывающее, видно ли представление.
Shape modelToView(int pos, Shape a)
Устарело.
Shape modelToView(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a)
Предоставляет преобразование координат для указанной области из пространства координат модели документа в пространство координат представления.
void remove(int i)
Удаляет один из дочерних элементов в указанной позиции.
void removeAll()
Удаляет все дочерние элементы.
void removeUpdate(DocumentEvent e, Shape a, ViewFactory f)
Получает уведомление об удалении данных из документа в области, за которую отвечает это представление.
protected boolean updateChildren(DocumentEvent.ElementChange ec, DocumentEvent e, ViewFactory f)
Обновляет дочерние представления в ответ на уведомление об изменении модели, если имеется запись об изменении элемента, за который отвечает это представление.
int viewToModel(float x, float y, Shape a)
Устарело.

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

Подробное описание полей

locator

protected AsyncBoxView.ChildLocator locator
Объект, управляющий смещениями дочерних элементов. Все операции блокировки при управлении расположением дочерних элементов выполняются на этом объекте.

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

AsyncBoxView

public AsyncBoxView(Element elem, int axis)
Создает представление-контейнер, выполняющее асинхронную компоновку.
Параметры:
elem — элемент модели для представления
axis — ось, вдоль которой выполняется разбиение на фрагменты. Это может быть X_AXIS или Y_AXIS.

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

getMajorAxis

public int getMajorAxis()
Возвращает главную ось (ось, вдоль которой располагаются дочерние элементы). Это будет X_AXIS или Y_AXIS.
Возвращает:
главную ось

getMinorAxis

public int getMinorAxis()
Возвращает второстепенную ось (ось, перпендикулярную оси разбиения на фрагменты). Это будет X_AXIS или Y_AXIS.
Возвращает:
второстепенную ось

getTopInset

public float getTopInset()
Возвращает верхнюю часть отступа вокруг представления.
Возвращает:
верхнюю часть отступа вокруг представления

setTopInset

public void setTopInset(float i)
Задает верхнюю часть отступа вокруг представления.
Параметры:
i — значение внутреннего отступа

getBottomInset

public float getBottomInset()
Возвращает нижнюю часть отступа вокруг представления.
Возвращает:
нижнюю часть отступа вокруг представления

setBottomInset

public void setBottomInset(float i)
Задает нижнюю часть отступа вокруг представления.
Параметры:
i — значение внутреннего отступа

getLeftInset

public float getLeftInset()
Возвращает левую часть отступа вокруг представления.
Возвращает:
левую часть отступа вокруг представления

setLeftInset

public void setLeftInset(float i)
Задает левую часть отступа вокруг представления.
Параметры:
i — значение внутреннего отступа

getRightInset

public float getRightInset()
Возвращает правую часть отступа вокруг представления.
Возвращает:
правую часть отступа вокруг представления

setRightInset

public void setRightInset(float i)
Задает правую часть отступа вокруг представления.
Параметры:
i — значение внутреннего отступа

getInsetSpan

protected float getInsetSpan(int axis)
Возвращает протяженность внутренних отступов вдоль указанной оси.
Параметры:
axis — ось, вдоль которой определяется общая величина внутренних отступов: X_AXIS или Y_AXIS.
Возвращает:
протяженность внутренних отступов вдоль указанной оси
Начиная с версии:
1.4

setEstimatedMajorSpan

protected void setEstimatedMajorSpan(boolean isEstimated)
Задает свойство estimatedMajorSpan, определяющее, следует ли считать протяженность вдоль главной оси оценочной. Если это свойство имеет значение true, значение setSize вдоль главной оси изменит требования вдоль этой оси, а инкрементальные изменения будут игнорироваться до обновления всех дочерних элементов (после чего свойству автоматически будет присвоено значение false). Если свойство имеет значение false, значение majorSpan считается точным, а инкрементальные изменения добавляются к общему значению по мере их вычисления.
Параметры:
isEstimated — новое значение свойства estimatedMajorSpan
Начиная с версии:
1.4

getEstimatedMajorSpan

protected boolean getEstimatedMajorSpan()
Является ли протяженность вдоль главной оси в данный момент оценочной?
Возвращает:
признак того, является ли протяженность вдоль главной оси в данный момент оценочной
Начиная с версии:
1.4

getChildState

protected AsyncBoxView.ChildState getChildState(int index)
Возвращает объект, представляющий состояние компоновки дочернего элемента с указанным индексом.
Параметры:
index — индекс дочернего элемента. Значение должно быть >= 0 и < getViewCount().
Возвращает:
объект, представляющий состояние компоновки дочернего элемента с указанным индексом

getLayoutQueue

protected LayoutQueue getLayoutQueue()
Возвращает очередь для выполнения компоновки.
Возвращает:
очередь для выполнения компоновки

createChildState

protected AsyncBoxView.ChildState createChildState(View v)
Новые записи ChildState создаются с помощью этого метода, чтобы подклассы могли расширять записи ChildState, добавляя в них новые данные и возможности.
Параметры:
v — представление
Возвращает:
новое состояние дочернего элемента

majorRequirementChange

protected void majorRequirementChange(AsyncBoxView.ChildState cs, float delta)
Изменились требования вдоль главной оси. Этот метод вызывается потоком, выполняющим компоновку для заданного объекта ChildState, после получения новых предпочтений дочерних представлений. Обычно это поток компоновки, но им может быть и поток обработки событий, если требуется немедленно обновить что-либо (например, выполнить преобразование координат модели в координаты представления).

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

Параметры:
cs — состояние дочернего элемента
delta — величина изменения

minorRequirementChange

protected void minorRequirementChange(AsyncBoxView.ChildState cs)
Изменились требования вдоль второстепенной оси. Этот метод вызывается потоком, выполняющим компоновку для заданного объекта ChildState, после получения новых предпочтений дочерних представлений. Обычно это поток компоновки, но им может быть и поток графического интерфейса, если требуется немедленно обновить что-либо (например, выполнить преобразование координат модели в координаты представления).
Параметры:
cs — состояние дочернего элемента

flushRequirementChanges

protected void flushRequirementChanges()
Передает родительскому представлению изменения предпочтений. Обычно этот метод вызывается потоком компоновки.

replace

public void replace(int offset, int length, View[] views)
Вызывает метод суперкласса для обновления дочерних представлений и обновляет записи состояния дочерних элементов. Предполагается, что этот метод вызывается при удержании блокировки записи модели, чтобы исключить взаимодействие с потоком компоновки (то есть поток компоновки перед выполнением каких-либо действий получает блокировку чтения).
Переопределяет:
replace в классе View
Параметры:
offset — начальное смещение в дочерних представлениях, >= 0
length — количество заменяемых существующих представлений, >= 0
views — вставляемые дочерние представления

loadChildren

protected void loadChildren(ViewFactory f)
Загружает все дочерние элементы для инициализации представления. Этот метод вызывается методом setParent. Подклассы могут переопределить его, чтобы инициализировать дочерние представления другим способом. Реализация по умолчанию создает дочернее представление для каждого дочернего элемента.

Обычно во время изменения дочерних элементов документ заблокирован для записи, что обеспечивает безопасность потоков отрисовки и компоновки. Исключение составляет инициализация представления для существующего элемента (с помощью этого метода): в этом случае для исключения вызова preferenceChanged во время инициализации используется синхронизация.

Параметры:
f — фабрика представлений
См. также:
  • setParent(View)

getViewIndexAtPosition

protected int getViewIndexAtPosition(int pos, Position.Bias b)
Возвращает индекс дочернего представления, соответствующего указанной позиции в модели. Реализация возвращает представление в том случае, когда для каждого дочернего элемента существует дочернее представление.
Параметры:
pos — позиция, >= 0
b — смещение позиции
Возвращает:
индекс представления, соответствующего указанной позиции, или -1, если ни одно представление ей не соответствует

updateLayout

protected void updateLayout(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a)
Обновляет компоновку в ответ на уведомление об изменении модели. Реализация отмечает изменение в ChildLocator, чтобы смещения дочерних элементов вычислялись правильно.
Переопределяет:
updateLayout в классе View
Параметры:
ec — изменения элемента, за который отвечает это представление (может быть null, если изменений не было).
e — сведения об изменении связанного документа
a — текущая область, выделенная для представления
См. также:
  • View.insertUpdate(DocumentEvent, Shape, ViewFactory)
  • View.removeUpdate(DocumentEvent, Shape, ViewFactory)
  • View.changedUpdate(DocumentEvent, Shape, ViewFactory)

setParent

public void setParent(View parent)
Задает родительское представление. Этот метод переопределен, чтобы обеспечить поведение суперкласса и вызвать метод loadChildren, если у данного представления еще нет дочерних элементов. Дочерние элементы не следует загружать в конструкторе, поскольку при задании родительского представления они могут попытаться выполнить поиск выше по иерархии (например, чтобы получить содержащий их Container). Если у этого представления есть дочерние элементы (то есть представление перемещается из одной части иерархии представлений в другую), метод loadChildren вызван не будет.
Переопределяет:
setParent в классе View
Параметры:
parent — родительское представление или null, если его нет

preferenceChanged

public void preferenceChanged(View child, boolean width, boolean height)
Дочерние представления могут вызвать этот метод у родительского, чтобы сообщить об изменении предпочтений и необходимости повторно учесть их при компоновке. Реализация переопределена для постановки новых задач в очередь потока компоновки. Дочерние представления вызывают этот метод из нескольких потоков.
Переопределяет:
preferenceChanged в классе View
Параметры:
child — дочернее представление
width — true, если изменилось предпочтение ширины
height — true, если изменилось предпочтение высоты
См. также:
  • JComponent.revalidate()

setSize

public void setSize(float width, float height)
Задает размер представления. Это должно приводить к компоновке представления, если оно кэширует какие-либо сведения о компоновке.

Поскольку главная ось обновляется асинхронно и должна равняться сумме размеров дочерних элементов, разбитых на фрагменты, вызов для главной оси игнорируется. Второстепенная ось является гибкой, поэтому при изменении ее протяженности в очередь помещается задача изменения размера дочерних элементов.

Переопределяет:
setSize в классе View
Параметры:
width — ширина, >= 0
height — высота, >= 0

paint

public void paint(Graphics g, Shape alloc)
Отрисовывает представление, используя заданную область и поверхность для отрисовки.

Реализация определяет, актуальны ли данные для требуемой области отрисовки (то есть для области без отсечения). Если данные актуальны, отрисовываются дочерние элементы. В противном случае задача построения требуемой области помещается в очередь компоновки с высоким приоритетом. Это позволяет потоку обработки событий продолжать работу, отрисовывая область, если она готова, и откладывая отрисовку на более позднее время, если она не готова (поскольку запросы на отрисовку можно запланировать повторно).

Определено в:
paint в классе View
Параметры:
g — поверхность для отрисовки
alloc — выделенная область для отрисовки
См. также:
  • View.paint(Graphics, Shape)

getPreferredSpan

public float getPreferredSpan(int axis)
Определяет предпочтительную протяженность этого представления вдоль указанной оси.
Определено в:
getPreferredSpan в классе View
Параметры:
axis — может быть View.X_AXIS или View.Y_AXIS
Возвращает:
протяженность, в пределах которой представление предпочитает отрисовываться, >= 0. Обычно представлению выделяется возвращаемая протяженность, однако это не гарантируется. Родительское представление может изменить размер или разбить это представление.
Выбрасывает:
IllegalArgumentException — если указан недопустимый тип оси

getMinimumSpan

public float getMinimumSpan(int axis)
Определяет минимальную протяженность этого представления вдоль указанной оси.
Переопределяет:
getMinimumSpan в классе View
Параметры:
axis — может быть View.X_AXIS или View.Y_AXIS
Возвращает:
протяженность, в пределах которой представление предпочитает отрисовываться, >= 0. Обычно представлению выделяется возвращаемая протяженность, однако это не гарантируется. Родительское представление может изменить размер или разбить это представление.
Выбрасывает:
IllegalArgumentException — если указан недопустимый тип оси
См. также:
  • View.getPreferredSpan(int)

getMaximumSpan

public float getMaximumSpan(int axis)
Определяет максимальную протяженность этого представления вдоль указанной оси.
Переопределяет:
getMaximumSpan в классе View
Параметры:
axis — может быть View.X_AXIS или View.Y_AXIS
Возвращает:
протяженность, в пределах которой представление предпочитает отрисовываться, >= 0. Обычно представлению выделяется возвращаемая протяженность, однако это не гарантируется. Родительское представление может изменить размер или разбить это представление.
Выбрасывает:
IllegalArgumentException — если указан недопустимый тип оси
См. также:
  • View.getPreferredSpan(int)

getViewCount

public int getViewCount()
Возвращает количество представлений в этом представлении. Поскольку по умолчанию представление не является составным, возвращается 0.
Переопределяет:
getViewCount в классе View
Возвращает:
количество представлений, >= 0
См. также:
  • View.getViewCount()

getView

public View getView(int n)
Возвращает n-е дочернее представление. Поскольку по умолчанию дочерних элементов нет, возвращается null.
Переопределяет:
getView в классе View
Параметры:
n — номер возвращаемого представления, >= 0 && < getViewCount()
Возвращает:
представление

getChildAllocation

public Shape getChildAllocation(int index, Shape a)
Возвращает область, выделенную указанному дочернему представлению. Это позволяет определить расположение различных представлений, не предполагая, что они хранят сведения о своем расположении. Возвращается null, поскольку по умолчанию дочерних представлений нет.
Переопределяет:
getChildAllocation в классе View
Параметры:
index — индекс дочернего элемента, >= 0 && < getViewCount()
a — область, выделенная этому представлению.
Возвращает:
область, выделенную дочернему элементу

getViewIndex

public int getViewIndex(int pos, Position.Bias b)
Возвращает индекс дочернего представления, соответствующего указанной позиции в модели. По умолчанию у представления нет дочерних элементов, поэтому метод возвращает -1, указывая, что для любой позиции нет допустимого индекса дочернего элемента.
Переопределяет:
getViewIndex в классе View
Параметры:
pos — позиция, >= 0
b — смещение
Возвращает:
индекс представления, соответствующего указанной позиции, или -1, если ни одно представление ей не соответствует
Начиная с версии:
1.3

modelToView

public Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException
Преобразует координаты пространства модели документа в координаты пространства соответствующего ей представления.
Определено в:
modelToView в классе View
Параметры:
pos — преобразуемая позиция, >= 0
a — выделенная область для отрисовки
b — смещение в сторону предыдущего или следующего символа, представленного этим смещением, если позиция находится на границе двух представлений.
Возвращает:
ограничивающий прямоугольник указанной позиции
Выбрасывает:
BadLocationException — если указанная позиция не соответствует допустимому месту в связанном документе
IllegalArgumentException — если указан недопустимый аргумент смещения
См. также:
  • View.viewToModel(float, float, Shape, Position.Bias[])

viewToModel

public int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)
Преобразует координаты пространства представления в логические координаты пространства модели. Аргумент biasReturn заполняется, чтобы указать, ближе ли заданная точка к следующему или предыдущему символу модели.

Предполагается, что этот метод вызывается потоком графического интерфейса при удержании блокировки чтения связанной модели. Реализация находит дочернее представление и определяет выделенную ему область, блокируя объект ChildLocator, а затем вызывает viewToModel дочернего представления, блокируя объект ChildState, чтобы избежать взаимодействия с потоком компоновки.

Определено в:
viewToModel в классе View
Параметры:
x — координата X, >= 0
y — координата Y, >= 0
a — выделенная область для отрисовки
biasReturn — возвращаемое смещение
Возвращает:
позицию в модели, наиболее точно соответствующую указанной точке в представлении, >= 0. Аргумент biasReturn заполняется, чтобы указать, ближе ли заданная точка к следующему или предыдущему символу модели.

getNextVisualPositionFrom

public int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) throws BadLocationException
Позволяет определить следующую визуально представленную позицию модели, в которой можно разместить каретку. Некоторые представления могут быть невидимыми, располагаться не в том же порядке, что и в модели, или не предоставлять доступ к некоторым позициям модели. Этот метод позволяет указать преобразуемую позицию в диапазоне >=0. Если значение равно -1, позиция будет вычислена автоматически. Если значение < -1, будет выброшено исключение BadLocationException.
Переопределяет:
getNextVisualPositionFrom в классе View
Параметры:
pos — преобразуемая позиция
b — смещение
a — выделенная область для отрисовки
direction — направление от текущей позиции, соответствующее обычно клавишам со стрелками на клавиатуре; может принимать одно из следующих значений:
  • SwingConstants.WEST
  • SwingConstants.EAST
  • SwingConstants.NORTH
  • SwingConstants.SOUTH
biasRet — массив, содержащий проверенное смещение
Возвращает:
позицию в модели, наиболее точно соответствующую следующей визуальной позиции
Выбрасывает:
BadLocationException — если указанная позиция недопустима в документе
IllegalArgumentException — если direction недопустим

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по 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