Класс ParagraphView
- Все реализованные интерфейсы:
-
SwingConstants,TabExpander
- Прямые известные подклассы:
ParagraphView
public class ParagraphView extends FlowView implements TabExpander
breakView, чтобы попытаться разбить представление на части, которые поместятся.- См. также:
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в классе javax.swing.text.FlowView
FlowView.FlowStrategy
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected int |
firstLineIndent |
Отступ первой строки слева. |
Поля, объявленные в классе javax.swing.text.FlowView
layoutPool, layoutSpan, strategy
Поля, объявленные в классе javax.swing.text.View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
Поля, объявленные в интерфейсе javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ParagraphView |
Создаёт ParagraphView для данного элемента. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
View |
breakView |
Разбивает это представление по заданной оси на заданную длину. |
protected SizeRequirements |
calculateMinorAxisRequirements |
Вычисляет потребности абзаца по малой оси. |
void |
changedUpdate |
Получает уведомление от документа о том, что атрибуты были изменены в позиции, за которую отвечает это представление. |
protected View |
createRow() |
Создаёт View для хранения дочерних элементов строки в потоке. |
protected int |
findOffsetToCharactersInString |
Находит следующий символ в документе с символом в string, начиная с смещения start. |
protected boolean |
flipEastAndWestAtEnds |
Определяет направление расположения следующего представления. |
float |
getAlignment |
Определяет желаемое выравнивание для этого представления по оси. |
int |
getBreakWeight |
Возвращает вес разрыва для данной позиции. |
protected int |
getClosestPositionTo |
Возвращает ближайшую позицию модели к x. |
int |
getFlowSpan |
Получает ограничивающий фрагмент для перетекания по данному индексу дочернего элемента. |
int |
getFlowStart |
Получает расположение по оси перетекания, с которого начнется фрагмент перетекания. |
protected View |
getLayoutView |
Возвращает представление в заданной index. |
protected int |
getLayoutViewCount() |
Возвращает количество представлений, за которые отвечает это представление. |
protected int |
getNextNorthSouthVisualPositionFrom |
Возвращает следующую визуальную позицию курсора в направлении восток или запад. |
protected float |
getPartialSize |
Возвращает размер, используемый представлениями между startOffset и endOffset. |
protected float |
getTabBase() |
Возвращает, откуда рассчитываются отступы. |
protected TabSet |
getTabSet() |
Получает Tabset для расчёта отступов. |
float |
nextTabStop |
Возвращает следующую позицию отступа, заданную по отношению к позиционной ссылке. |
void |
paint |
Отображает с помощью заданной поверхности рендеринга и области на этой поверхности. |
protected void |
setFirstLineIndent |
Устанавливает отступ первой строки. |
protected void |
setJustification |
Устанавливает тип выравнивания. |
protected void |
setLineSpacing |
Устанавливает интервал между строками. |
protected void |
setPropertiesFromAttributes() |
Устанавливает кэшированные свойства из атрибутов. |
Методы, объявленные в классе javax.swing.text.FlowView
getFlowAxis, getViewIndexAtPosition, insertUpdate, layout, loadChildren, removeUpdate
Методы, объявленные в классе javax.swing.text.BoxView
baselineLayout, baselineRequirements, calculateMajorAxisRequirements, childAllocation, forwardUpdate, getAxis, getChildAllocation, getHeight, getMaximumSpan, getMinimumSpan, getOffset, getPreferredSpan, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layoutChanged, layoutMajorAxis, layoutMinorAxis, modelToView, paintChild, preferenceChanged, replace, setAxis, setSize, viewToModel
Методы, объявленные в классе javax.swing.text.CompositeView
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPosition, getViewCount, getViewIndex, modelToView, setInsets, setParagraphInsets, setParent
Методы, объявленные в классе javax.swing.text.View
append, breakView, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, isVisible, modelToView, remove, removeAll, updateChildren, updateLayout, viewToModel
Подробное описание полей
firstLineIndent
protected int firstLineIndent
Подробное описание конструкторов
ParagraphView
public ParagraphView(Element elem)
ParagraphView для данного элемента.- Параметры:
-
elem- элемент, за который отвечает данный вид
Подробное описание методов
setJustification
protected void setJustification(int j)
- Параметры:
-
j- одно из следующих значений:-
StyleConstants.ALIGN_LEFT -
StyleConstants.ALIGN_CENTER -
StyleConstants.ALIGN_RIGHT
-
setLineSpacing
protected void setLineSpacing(float ls)
- Параметры:
-
ls- значение является коэффициентом к высоте строки
setFirstLineIndent
protected void setFirstLineIndent(float fi)
- Параметры:
-
fi- значение в пунктах
setPropertiesFromAttributes
protected void setPropertiesFromAttributes()
getLayoutViewCount
protected int getLayoutViewCount()
View , представляющих дочерние элементы. Это число представлений, которые были выложены в двух измерениях, и должно быть равно количеству дочерних элементов элемента, за который отвечает этот вид.- Возвращает:
- количество представлений, за которые отвечает этот
ParagraphView
getLayoutView
protected View getLayoutView(int index)
index. Дочерние представления абзаца — это строки, которые были использованы для размещения фрагментов Views , представляющих дочерние элементы. Этот метод возвращает представление, отвечающее за дочерний элемент с индексом (до разрыва). Это представления, созданные фабрикой (для представления дочерних элементов) и использованные для выкладки.- Параметры:
-
index-indexжелаемого представления - Возвращает:
- представление по
index
getNextNorthSouthVisualPositionFrom
protected int getNextNorthSouthVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) throws BadLocationException
CompositeView.- Переопределяет:
-
getNextNorthSouthVisualPositionFromв классеCompositeView - Параметры:
-
pos- позиция в модели -
b- либоPosition.Bias.Forward, либоPosition.Bias.Backward -
a- выделенная область для рендеринга -
direction- либоSwingConstants.NORTH, либоSwingConstants.SOUTH -
biasRet- массив, содержащий смещение, которое проверялось в этом методе - Возвращает:
- местоположение в модели, представляющее следующую визуальную позицию
- Исключения:
-
BadLocationException- для неверного местоположения в модели документа - См. также:
getClosestPositionTo
protected int getClosestPositionTo(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet, int rowIndex, int x) throws BadLocationException
x. rowIndex указывает индекс представления, в котором следует искать.- Параметры:
-
pos- позиция в модели -
b- смещение -
a- выделенная область для рендеринга -
direction- одно из следующих значений:-
SwingConstants.NORTH -
SwingConstants.SOUTH
-
-
biasRet- массив, содержащий смещения, которые проверялись в этом методе -
rowIndex- индекс представления -
x- координата x, в которой необходимо найти ближайшую позицию - Возвращает:
- наиболее близкую позицию модели к
x - Исключения:
-
BadLocationException- если встречается неверное местоположение
flipEastAndWestAtEnds
protected boolean flipEastAndWestAtEnds(int position, Position.Bias bias)
View с индексом n. Обычно View выкладываются слева направо, так что View на ВОСТОК будет иметь индекс n + 1, а View на ЗАПАД — индекс n - 1. В некоторых ситуациях, таких как с двунаправленным текстом, возможно, что View на ВОСТОК находится не под индексом n + 1, а под индексом n - 1, или что View на ЗАПАД находится не под индексом n - 1, а под индексом n + 1. В этом случае этот метод вернёт true, указывая, что View выложены в обратном порядке. Возвращает true, если текст выложен справа налево в позиции, в противном случае false.
- Переопределяет:
-
flipEastAndWestAtEndsв классеBoxView - Параметры:
-
position- позиция в модели -
bias- либоPosition.Bias.Forward, либоPosition.Bias.Backward - Возвращает:
- true, если текст выложен справа налево в позиции, в противном случае false.
getFlowSpan
public int getFlowSpan(int index)
- Переопределяет:
-
getFlowSpanв классеFlowView - Параметры:
-
index- индекс отображаемого элемента - Возвращает:
- ограничительную область для заданного представления в позиции
index - С тех пор как:
- 1.3
- См. также:
getFlowStart
public int getFlowStart(int index)
- Переопределяет:
-
getFlowStartв классеFlowView - Параметры:
-
index- индекс отображаемого элемента - Возвращает:
- местоположение для данного представления в позиции
index - С тех пор как:
- 1.3
- См. также:
createRow
protected View createRow()
View , который должен использоваться для хранения строки дочерних элементов в потоке.- Определено в:
-
createRowв классеFlowView - Возвращает:
- новое
View - С тех пор как:
- 1.3
nextTabStop
public float nextTabStop(float x, int tabOffset)
getTabbedSpan на логических дочерних элементах во время выкладки, чтобы определить желаемую область дочерних элементов. Логические дочерние элементы могут делегировать свои нужды по расширению табуляции абзацу, который знает, как расширять табуляцию. LabelView — пример вида, который делегирует свои нужды по расширению табуляции абзацу. Этот метод пытается найти TabSet в наборе атрибутов элемента абзаца. Если он найден, его настройки используются, в противном случае предоставляется стандартное расширение. Базовая позиция для расширения табуляции — это левый отступ последнего выделения абзаца (на котором основана выкладка дочерних элементов).
- Определено в:
-
nextTabStopв интерфейсеTabExpander - Параметры:
-
x- опорная позиция X -
tabOffset- позиция в потоке текста, где произошла табуляция >= 0 - Возвращает:
- конечная точка расширения табуляции >= 0
- См. также:
getTabSet
protected TabSet getTabSet()
Tabset для расчёта табуляций.- Возвращает:
TabSet
getPartialSize
protected float getPartialSize(int startOffset, int endOffset)
startOffset и endOffset. Использует getPartialView для расчёта размера, если дочернее представление реализует интерфейс TabableView. Если размер необходим, и View не реализует интерфейс TabableView, используется preferredSpan.- Параметры:
-
startOffset- начальный смещение в документе >= 0 -
endOffset- конечный смещение в документе >= startOffset - Возвращает:
- размер >= 0
findOffsetToCharactersInString
protected int findOffsetToCharactersInString(char[] string, int start)
string, начиная с смещения start. Если символы не найдены, возвращается -1.- Parameters:
-
string- строка символов -
start- с какого места начать в модели >= 0 - Returns:
- смещение в документе, или -1, если символы не найдены
getTabBase
protected float getTabBase()
- Returns:
- откуда рассчитываются отступы табуляции
paint
public void paint(Graphics g, Shape a)
- Overrides:
-
paintв классеBoxView - Parameters:
-
g- поверхность отрисовки для использования -
a- выделенная область для отрисовки - See Also:
getAlignment
public float getAlignment(int axis)
- Overrides:
-
getAlignmentв классеBoxView - Parameters:
-
axis- может быть либоView.X_AXISилиView.Y_AXIS - Returns:
- желаемое выравнивание. Должно быть значением от 0.0 до 1.0 включительно, где 0 указывает выравнивание по началу, а 1.0 — выравнивание по полной ширине относительно начала. Выравнивание 0.5 соответствует центру представления.
breakView
public View breakView(int axis, float len, Shape a)
ParagraphView экземпляры разделяются только по Y_AXIS, и только если len находится после первой строки.
- Parameters:
-
axis- может быть либоView.X_AXISилиView.Y_AXIS -
len- задаёт, где требуется потенциальный разрыв вдоль заданной оси >= 0 -
a- текущее выделение представления - Returns:
- фрагмент представления, представляющий заданный отрезок, если представление может быть разбито; если представление не поддерживает поведение разбиения, возвращается само представление
- See Also:
getBreakWeight
public int getBreakWeight(int axis, float len)
ParagraphView экземпляры разделяются только по Y_AXIS, и только если len находится после первой строки. Если длина меньше одной строки, возвращается значение BadBreakWeight.
- Parameters:
-
axis- может быть либоView.X_AXISилиView.Y_AXIS -
len- задаёт, где требуется потенциальный разрыв >= 0 - Returns:
- значение, указывающее привлекательность разрыва в этом месте; либо
GoodBreakWeight, либоBadBreakWeight - See Also:
calculateMinorAxisRequirements
protected SizeRequirements calculateMinorAxisRequirements(int axis, SizeRequirements r)
Использует требования к размеру суперкласса, изменённые с учётом неразделяемых областей на границах смежных представлений. Минимальные требования к размеру таких представлений не должны быть меньше суммы всех смежных фрагментов.
Если параметр axis ни View.X_AXIS, ни View.Y_AXIS, выбрасывается IllegalArgumentException. Если параметр r равен null,, создаётся новый объект SizeRequirements, в противном случае возвращается переданный объект SizeRequirements.
- Overrides:
-
calculateMinorAxisRequirementsв классеFlowView - Parameters:
-
axis- малая ось -
r- входной объектSizeRequirements - Returns:
- новый или скорректированный объект
SizeRequirements - Throws:
-
IllegalArgumentException- если параметрaxisнекорректен - See Also:
changedUpdate
public void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)
- Overrides:
-
changedUpdateв классеFlowView - Parameters:
-
changes- информация об изменении от связанного документа -
a- текущее выделение представления -
f- фабрика для использования при необходимости перестроения представления, если оно имеет дочерние элементы - See Also:
© 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/ParagraphView.html