public class ZoneView extends BoxView
ZoneView расширяет BoxView, чтобы обеспечить поле, которое реализует зоны для его дочерних элементов. Зоны являются специальными реализациями Представления (дочерние элементы экземпляра этого class), которые представляют только часть модели, за которую экземпляр ZoneView ответственен. Зоны не создают дочерние представления, пока попытка не предпринимается, чтобы вывести на экран их. Поле сформированное представление хорошо подходит для этого потому что:
Поведением значения по умолчанию управляют два свойства, maxZoneSize и maxZonesLoaded. Установка maxZoneSize к Целому числу. MAX_VALUE имел бы эффект того, чтобы заставлять только одну зону быть созданным. Это эффективно превратило бы представление в реализацию шаблона "декоратор". Установка maxZonesLoaded к значению Целого числа. MAX_VALUE заставил бы зоны никогда не разгружаться. Для простоты зоны создаются на границах, представленных дочерними элементами элемента, за который представление ответственно. Зоны могут быть любой реализацией Представления, но реализация по умолчанию основана на AsyncBoxView, который поддерживает довольно большие зоны эффективно.
View
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
Конструктор и Описание |
---|
ZoneView(Element elem, int axis)
Создает ZoneView.
|
Модификатор и Тип | Метод и Описание |
---|---|
protected View |
createZone(int p0, int p1)
Создайте представление, чтобы представить зону для данного диапазона в пределах модели (который должен быть в пределах диапазона этого, возражает ответственности).
|
int |
getMaximumZoneSize()
Получите текущий максимальный зональный размер.
|
int |
getMaxZonesLoaded()
Получите текущую установку числа зон, позволенных быть загруженными одновременно.
|
protected int |
getViewIndexAtPosition(int pos)
Возвращается дочернее представление индексируют представление данной позиции в модели.
|
void |
insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)
Дает уведомление, что что-то было вставлено в документ в расположении, за которое это представление ответственно.
|
protected boolean |
isZoneLoaded(View zone)
Определите, находится ли зона в загруженном состоянии.
|
protected void |
loadChildren(ViewFactory f)
Загрузки все дочерние элементы, чтобы инициализировать представление.
|
void |
removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
Дает уведомление, что что-то было удалено из документа в расположении, за которое это представление ответственно.
|
void |
setMaximumZoneSize(int size)
Установите требуемый максимальный зональный размер.
|
void |
setMaxZonesLoaded(int mzl)
Устанавливает текущую установку числа зон, позволенных быть загруженными одновременно.
|
protected void |
unloadZone(View zone)
Разгрузитесь зона (Преобразуйте зону в ее состояние сохранения памяти).
|
protected boolean |
updateChildren(DocumentEvent.ElementChange ec, DocumentEvent e, ViewFactory f)
Поведение суперкласса попытается обновить дочерние представления, который не требуется в этом случае, так как дочерние элементы являются зонами и не непосредственно произведенные изменениями к связанному элементу.
|
protected void |
zoneWasLoaded(View zone)
Вызванный зоной, когда это загружается.
|
baselineLayout, baselineRequirements, calculateMajorAxisRequirements, calculateMinorAxisRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAlignment, getAxis, getChildAllocation, getHeight, getMaximumSpan, getMinimumSpan, getOffset, getPreferredSpan, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layout, layoutChanged, layoutMajorAxis, layoutMinorAxis, modelToView, paint, paintChild, preferenceChanged, replace, setAxis, setSize, viewToModel
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPosition, getViewCount, getViewIndex, modelToView, setInsets, setParagraphInsets, setParent
append, breakView, changedUpdate, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, isVisible, modelToView, remove, removeAll, updateLayout, viewToModel
public ZoneView(Element elem, int axis)
elem
- элемент это представление ответственен заaxis
- любое Представление. X_AXIS или Представление. Y_AXISpublic int getMaximumZoneSize()
public void setMaximumZoneSize(int size)
size
- число символов зона может представить прежде, чем попытаться повредить зону в меньший размер.public int getMaxZonesLoaded()
public void setMaxZonesLoaded(int mzl)
IllegalArgumentException
если mzl
меньше чем 1.mzl
- требуемое максимальное количество зон, которые будут активно загружены, должно быть больше чем 0IllegalArgumentException
- если mzl
< 1protected void zoneWasLoaded(View zone)
zone
- дочернее представление, которое было только загружено.protected void unloadZone(View zone)
zone
- дочернее представление, требуемое, чтобы быть установленным в разгруженное состояние.protected boolean isZoneLoaded(View zone)
protected View createZone(int p0, int p1)
p0
- запуск требуемой зоны. Это должно быть> = getStartOffset () и < getEndOffset(). This
value should also be < p1.p1
- конец требуемой зоны. Это должно быть> getStartOffset () и <= getEndOffset(). This
value should also be >p0.protected void loadChildren(ViewFactory f)
setParent
метод. Это повторно реализуется, чтобы не загрузить любые дочерние элементы непосредственно (поскольку они создаются зонами). Этот метод создает начальный набор зон. Зоны фактически не становятся заполненными однако, пока попытка не предпринимается, чтобы вывести на экран их или сделать преобразование координаты модели/представления.loadChildren
в class CompositeView
f
- фабрика представленияCompositeView.setParent(javax.swing.text.View)
protected int getViewIndexAtPosition(int pos)
getViewIndexAtPosition
в class CompositeView
pos
- позиция> = 0protected boolean updateChildren(DocumentEvent.ElementChange ec, DocumentEvent e, ViewFactory f)
updateChildren
в class View
ec
- информация об изменении для элемента это представление ответственна за. Это не должно быть null
если этот метод вызываютe
- информация об изменении из ассоциированного документаf
- фабрика, чтобы использовать, чтобы создать дочерние представленияView.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
, View.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
, View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
public void insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)
insertUpdate
в class View
changes
- информация об изменении из ассоциированного документаa
- текущее выделение представленияf
- фабрика, чтобы использовать, чтобы восстановить, если у представления есть дочерние элементыView.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
public void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
removeUpdate
в class View
changes
- информация об изменении из ассоциированного документаa
- текущее выделение представленияf
- фабрика, чтобы использовать, чтобы восстановить, если у представления есть дочерние элементыView.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92