Spec-Zone.ru › OpenJDK 8

Класс DefaultStyledDocument

  • java.lang.Object
    • javax.swing.text.AbstractDocument
      • javax.swing.text.DefaultStyledDocument
Все реализованные интерфейсы:
Serializable, Document, StyledDocument
Прямые известные подклассы:
HTMLDocument

public class DefaultStyledDocument
extends AbstractDocument
implements StyledDocument

Документ, который может быть помечен стилями символов и абзацев подобно формату Rich Text Format. Структура элементов этого документа представляет собой пересечения стилей для блоков стилей. Эти блоки стилей отображаются в структуру абзацев (которая может находиться в другой структуре). Блоки стилей разрываются на границах абзацев, так как логические стили назначаются границам абзацев.

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, добавлена поддержка долгосрочного хранения всех JavaBeans™ в пакете java.beans. См. XMLEncoder.

См. также:
Document, AbstractDocument

Вложенные классы

Модификатор и тип Класс и описание
static class  DefaultStyledDocument.AttributeUndoableEdit

UndoableEdit для запоминания изменений AttributeSet в элементе.

class  DefaultStyledDocument.ElementBuffer

Класс для управления изменениями иерархии элементов.

static class  DefaultStyledDocument.ElementSpec

Спецификация для построения элементов.

protected class  DefaultStyledDocument.SectionElement

Корневой элемент по умолчанию для документа...

Вложенные классы/интерфейсы, унаследованные от класса javax.swing.text.AbstractDocument

AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement

Поля

Модификатор и тип Поле и описание
protected DefaultStyledDocument.ElementBuffer buffer
static int BUFFER_SIZE_DEFAULT

Размер буфера начального содержимого по умолчанию.

Поля, унаследованные от класса javax.swing.text.AbstractDocument

BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName

Поля, унаследованные от интерфейса javax.swing.text.Document

StreamDescriptionProperty, TitleProperty

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

Конструктор и описание
DefaultStyledDocument()

Создаёт документ со стилями по умолчанию.

DefaultStyledDocument(AbstractDocument.Content c, StyleContext styles)

Создаёт документ со стилями.

DefaultStyledDocument(StyleContext styles)

Создаёт документ со стилями с реализацией хранения содержимого по умолчанию и общим набором стилей.

Методы

Модификатор и тип Метод и описание
void addDocumentListener(DocumentListener listener)

Добавляет слушателя изменений документа для уведомлений о любых изменениях.

Style addStyle(String nm, Style parent)

Добавляет новый стиль в логическую иерархию стилей.

protected void create(DefaultStyledDocument.ElementSpec[] data)

Инициализирует документ, чтобы отразить заданную структуру элементов (т.е.

protected AbstractDocument.AbstractElement createDefaultRoot()

Создаёт корневой элемент, который используется для представления структуры документа по умолчанию.

Color getBackground(AttributeSet attr)

Получает цвет фона из набора атрибутов.

Element getCharacterElement(int pos)

Получает элемент символа на основе позиции.

Element getDefaultRootElement()

Получает корневой элемент по умолчанию.

Font getFont(AttributeSet attr)

Получает шрифт из набора атрибутов.

Color getForeground(AttributeSet attr)

Получает цвет переднего плана из набора атрибутов.

Style getLogicalStyle(int p)

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

Element getParagraphElement(int pos)

Получает элемент абзаца в смещении pos.

Style getStyle(String nm)

Получает именованный стиль, добавленный ранее.

Enumeration<?> getStyleNames()

Получает список имён стилей.

protected void insert(int offset, DefaultStyledDocument.ElementSpec[] data)

Вставляет новые элементы в объёме.

protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)

Обновляет структуру документа в результате вставки текста.

void removeDocumentListener(DocumentListener listener)

Удаляет слушателя изменений документа.

void removeElement(Element elem)

Удаляет элемент из этого документа.

void removeStyle(String nm)

Удаляет именованный стиль, добавленный ранее в документ.

protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)

Обновляет структуру документа в результате удаления текста.

void setCharacterAttributes(int offset, int length, AttributeSet s, boolean replace)

Устанавливает атрибуты для части документа.

void setLogicalStyle(int pos, Style s)

Устанавливает логический стиль для абзаца в заданной позиции.

void setParagraphAttributes(int offset, int length, AttributeSet s, boolean replace)

Устанавливает атрибуты для абзаца.

protected void styleChanged(Style style)

Вызывается, когда любой из стилей этого документа изменился.

Методы, унаследованные от класса javax.swing.text.AbstractDocument

addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, insertString, postRemoveUpdate, putProperty, readLock, readUnlock, remove, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock

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

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

Методы, унаследованные от интерфейса javax.swing.text.Document

addUndoableEditListener, createPosition, getEndPosition, getLength, getProperty, getRootElements, getStartPosition, getText, getText, insertString, putProperty, remove, removeUndoableEditListener, render

Поля

BUFFER_SIZE_DEFAULT

public static final int BUFFER_SIZE_DEFAULT

Размер буфера начального содержимого по умолчанию.

См. также:
Значения константных полей

buffer

protected DefaultStyledDocument.ElementBuffer buffer

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

DefaultStyledDocument

public DefaultStyledDocument(AbstractDocument.Content c,
                             StyleContext styles)

Создаёт стилизованный документ.

Параметры:
c - контейнер для содержимого
styles - ресурсы и определения стилей, которые могут быть совместно использованы между документами

DefaultStyledDocument

public DefaultStyledDocument(StyleContext styles)

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

Параметры:
styles - стили

DefaultStyledDocument

public DefaultStyledDocument()

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

Методы

getDefaultRootElement

public Element getDefaultRootElement()

Получает элемент корня по умолчанию.

Определено в:
getDefaultRootElement в интерфейсе Document
Определено в:
getDefaultRootElement в классе AbstractDocument
Возвращает:
корень
См. также:
Document.getDefaultRootElement()

create

protected void create(DefaultStyledDocument.ElementSpec[] data)

Инициализирует документ, отражающий заданную структуру элементов (т.е. структуру, полученную методом getDefaultRootElement). Если документ содержал какие-либо данные, они будут сначала удалены.

insert

protected void insert(int offset,
                      DefaultStyledDocument.ElementSpec[] data)
               throws BadLocationException

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

Этот метод потокобезопасен, хотя большинство методов Swing таковыми не являются. Дополнительную информацию см. в Асинхронность в Swing.

Параметры:
offset - начальное смещение >= 0
data - данные элементов
Исключение:
BadLocationException - для недопустимого начального смещения

removeElement

public void removeElement(Element elem)

Удаляет элемент из этого документа.

Элемент удаляется из родительского элемента, а также текст в диапазоне, определённом элементом. Если элемент не связан с документом, вызывается исключение IllegalArgumentException.

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

Удаление элемента приводит к срабатыванию двух событий: DocumentEvent для изменений в структуре элементов и UndoableEditEvent для изменений в содержимом документа.

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

Если элемент является null, NullPointerException вызывается исключение. Если структура элемента станет недействительной после удаления, например, если элемент является корневым элементом документа, вызывается исключение IllegalArgumentException. Если текущая структура элементов недействительна, вызывается исключение IllegalStateException.

Параметры:
elem - элемент для удаления
Исключение:
NullPointerException - если элемент является null
IllegalArgumentException - если элемент не смог быть удалён
IllegalStateException - если структура элементов недействительна
С:
1.7

addStyle

public Style addStyle(String nm,
                      Style parent)

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

Определено в:
addStyle в интерфейсе StyledDocument
Параметры:
nm - имя стиля (должно быть уникальным в наборе именованных стилей). Имя может быть null, если стиль неименованный, но вызывающий код отвечает за управление ссылкой, так как неименованный стиль не может быть получен по имени. Неименованный стиль может быть полезен для переопределения атрибутов символов, таких как те, что встречаются в стиле пробега.
parent - родительский стиль. Может быть null, если атрибуты, не определённые явно, не должны быть разрешены в другом стиле.
Возвращает:
стиль

removeStyle

public void removeStyle(String nm)

Удаляет именованный стиль, ранее добавленный в документ.

Определено в:
removeStyle в интерфейсе StyledDocument
Параметры:
nm - имя стиля для удаления

getStyle

public Style getStyle(String nm)

Получает именованный стиль, ранее добавленный.

Определено в:
getStyle в интерфейсе StyledDocument
Параметры:
nm - имя стиля
Возвращает:
стиль

getStyleNames

public Enumeration<?> getStyleNames()

Получает список имён стилей.

Возвращает:
все имена стилей

setLogicalStyle

public void setLogicalStyle(int pos,
                            Style s)

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

Этот метод потокобезопасен, хотя большинство методов Swing таковыми не являются. Дополнительную информацию см. в Асинхронность в Swing.

Определено в:
setLogicalStyle в интерфейсе StyledDocument
Параметры:
pos - смещение от начала документа >= 0
s - логический стиль для назначения абзацу, null если нет

getLogicalStyle

public Style getLogicalStyle(int p)

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

Определено в:
getLogicalStyle в интерфейсе StyledDocument
Параметры:
p - положение для перевода в абзац и определения назначенного логического стиля >= 0. Это смещение от начала документа.
Возвращает:
стиль, null если нет

setCharacterAttributes

public void setCharacterAttributes(int offset,
                                   int length,
                                   AttributeSet s,
                                   boolean replace)

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

Этот метод потокобезопасен, хотя большинство методов Swing таковыми не являются. Дополнительную информацию см. в Асинхронность в Swing.

Определено в:
setCharacterAttributes в интерфейсе StyledDocument
Параметры:
offset - смещение в документе >= 0
length - длина >= 0
s - атрибуты
replace - true, если предыдущие атрибуты должны быть заменены перед установкой новых атрибутов

setParagraphAttributes

public void setParagraphAttributes(int offset,
                                   int length,
                                   AttributeSet s,
                                   boolean replace)

Устанавливает атрибуты для абзаца.

Этот метод потокобезопасен, хотя большинство методов Swing таковыми не являются. Дополнительную информацию см. в Асинхронность в Swing.

Определено в:
setParagraphAttributes в интерфейсе StyledDocument
Параметры:
offset - смещение в абзаце >= 0
length - количество затронутых символов >= 0
s - атрибуты
replace - следует ли заменить существующие атрибуты или объединить их

getParagraphElement

public Element getParagraphElement(int pos)

Получает элемент абзаца по смещению pos. Абзац состоит как минимум из одного дочернего элемента, который обычно является листовым.

Определено в:
getParagraphElement в интерфейсе StyledDocument
Определено в:
getParagraphElement в классе AbstractDocument
Параметры:
pos - начальное смещение >= 0
Возвращает:
элемент

getCharacterElement

public Element getCharacterElement(int pos)

Получает элемент символа на основе положения.

Определено в:
getCharacterElement в интерфейсе StyledDocument
Параметры:
pos - положение в документе >= 0
Возвращает:
элемент

insertUpdate

protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng,
                            AttributeSet attr)

Обновляет структуру документа в результате вставки текста. Это происходит в рамках блокировки записи. Эта реализация просто анализирует вставленное содержимое на наличие переносов строк и создаёт набор инструкций для буфера элементов.

Переопределяет:
insertUpdate в классе AbstractDocument
Параметры:
chng - описание изменения документа
attr - атрибуты

ИзменениеУдаления

protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)

Обновляет структуру документа в результате удаления текста.

Переопределяет:
removeUpdate в классе AbstractDocument
Параметры:
chng - описание изменения документа

СоздатьКорневойЭлемент

protected AbstractDocument.AbstractElement createDefaultRoot()

Создаёт корневой элемент, используемый для представления стандартной структуры документа.

Возвращает:
базовый элемент

ПолучитьЦветПереднегоПлана

public Color getForeground(AttributeSet attr)

Получает цвет переднего плана из набора атрибутов.

Определено в:
getForeground в интерфейсе StyledDocument
Параметры:
attr - набор атрибутов
Возвращает:
цвет

ПолучитьЦветФоновогоПлана

public Color getBackground(AttributeSet attr)

Получает цвет фона из набора атрибутов.

Определено в:
getBackground в интерфейсе StyledDocument
Параметры:
attr - набор атрибутов
Возвращает:
цвет

ПолучитьШрифт

public Font getFont(AttributeSet attr)

Получает шрифт из набора атрибутов.

Определено в:
getFont в интерфейсе StyledDocument
Параметры:
attr - набор атрибутов
Возвращает:
шрифт

ИзмененСтиль

protected void styleChanged(Style style)

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

Параметры:
style - Стиль, который был изменён.

ДобавитьСлушателяИзмененийДокумента

public void addDocumentListener(DocumentListener listener)

Добавляет слушателя изменений документа для получения уведомлений о любых изменениях.

Определено в:
addDocumentListener в интерфейсе Document
Переопределяет:
addDocumentListener в классе AbstractDocument
Параметры:
listener - слушатель
См. также:
Document.addDocumentListener(javax.swing.event.DocumentListener)

УдалитьСлушателяИзмененийДокумента

public void removeDocumentListener(DocumentListener listener)

Удаляет слушателя изменений документа.

Определено в:
removeDocumentListener в интерфейсе Document
Переопределяет:
removeDocumentListener в классе AbstractDocument
Параметры:
listener - слушатель
См. также:
Document.removeDocumentListener(javax.swing.event.DocumentListener)

© 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