Расширение элемента памятки
Идентификатор:
org.eclipse.ui.cheatsheets.cheatSheetItemExtension
Начиная с:
3.0
Описание:
Эта точка расширения используется тогда, когда в шаг памятки необходимо добавить дополнительную кнопку.
Новый атрибут можно поместить в тег "item" файла содержимого памятки, и когда при обработке памятки будет прочитано это значение,
то будет проверено, зарегистрирован ли через эту точку расширения класс, который будет обрабатывать этот атрибут. Имя атрибута, находящееся в файле содержимого памятки, сверяется со всеми значениями атрибута "itemAttribute" всех реализаций зарегистрированных точек cheatsheetItemExtension. Если найдено совпадение, то для обработки атрибута этого элемента структура памятки загружает указанный класс и вызывает его для обработки атрибута, заданного в файле содержимого памятки.
После анализа значения атрибута элемента класс остается доступным для структуры памятки. При выводе элемента в панели памяток снова вызывается этот класс для обработки дополнений компонентов в составном элементе управления. Элементы, которые добавляются в этот составной элемент управления, отображаются в шаге памятки (в текущей реализации - рядом со значком справки). Они отображаются только для шага, описанного тегом "item", представляющим атрибут в файле содержимого памятки.
Пример использования этой точки расширения - добавление маленькой (16x16) кнопки с изображением, при нажатии которой открывается окно диалога.
Описание конфигурации:
<!ELEMENT extension (itemExtension)*>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
- point - полный идентификатор целевой точки расширения
- id - необязательный идентификатор экземпляра расширения
- name - необязательное имя экземпляра расширения
<!ELEMENT itemExtension EMPTY>
<!ATTLIST itemExtension
itemAttribute CDATA #REQUIRED
class CDATA #REQUIRED>
Это расширение элемента служит для добавления элементов в шаги памятки. С помощью этой точки расширения можно добавлять к шагу памятки значки и кнопки (в текущей реализации - рядом со значком справки).
Для атрибута, помещаемого в тег элемента памятки, следует указать имя. Также следует задать класс, который будет анализировать значение атрибута, полученного из файла содержимого памятки при ее загрузке. Значение атрибута должно быть строкового типа. Указанный класс должен быть производным от класса org.eclipse.ui.cheatsheets.AbstractItemExtensionElement
. После анализа и загрузки файла содержимого памятки снова вызывается класс, указанный в точке расширения. Он вызывается через интерфейс и служит для добавления графических объектов или кнопок к шагу памятки (в текущей реализации - следом за кнопкой справки).
- itemAttribute - значение этого атрибута должно быть строкой, содержащей имя атрибута, помещенного в тег item в файле содержимого памятки. Если строка этого атрибута совпадает с атрибутом, полученным из тега item в файле содержимого памятки, то загружается и вызывается указанный класс, который обрабатывает полное значение атрибута согласно спецификации w3 DOM. Позднее он будет вызван для добавления управляющих элементов в составной элемент управления, а добавленные компоненты (обычно это кнопки или графические объекты) отобразятся в шаге памятки для заданного элемента (в текущей реализации - рядом со значком справки по этому шагу).
- class - полное имя класса, производного от
org.eclipse.ui.cheatsheets.AbstractItemExtensionElement
, который должен обрабатывать неизвестные атрибуты в файле содержимого памятки и расширять ее шаги. Класс должен быть объявлен как public и должен иметь public конструктор с одним аргументом - именем атрибута (типа String
).
Примеры:
Пример реализации этой точки расширения:
<extension point=
"org.eclipse.ui.cheatsheets.cheatSheetItemExtension"
>
<itemExtension
itemAttribute=
"xyzButton"
class=
"com.example.HandleParsingAndAddButton"
>
</itemExtension>
</extension>
Атрибут элемента для этой точки расширения:
<item title=
"XYZ Title"
xyzButton=
"/icon/button.gif"
/>
Обратите внимание, что значение атрибута в теге item может быть любым. Это возможно благодаря тому, что класс, анализирующий этот атрибут - это класс HandleParsingAndAddButton (в этом примере он анализирует строку /icon/button.gif). Позднее эта информация понадобится для загрузки рисунка в формате GIF, который послужит значком для новой кнопки.
Информация об API:
Дополнительные сведения об API см. в документации по Java для org.eclipse.ui.cheatsheets.AbstractItemExtensionElement.
Поставляемая реализация:
На данный момент реализация не поставляется.
Copyright (c) 2004 IBM Corporation and others.
Все права защищены.
Эта программа и сопутствующие материалы распространяются на условиях Eclipse Public License v1.0, поставляемой вместе с продуктом и доступной на Web-сайте
http://www.eclipse.org/legal/epl-v10.html