Конфигурация компонента введения

org.eclipse.ui.intro.config

Версия 3.0

Эта точка расширения служит для регистрации конфигурации компонента введения. Эта конфигурация предоставляет реализацию оформления и содержимого для заданного дополнения введения. Компонент введения появляется при первом вызове рабочей среды в качестве пункта меню "Справка". Обычно этот компонент служит для знакомства пользователя с продуктом Eclipse.

Части введения разбиты на страницы по категориям ознакомительного материала. Например, страница "Новое" рассказывает о новых концепциях или возможностях, добавленных с предыдущих версий. С помощью точки расширения org.eclipse.ui.intro.configExtension можно распространить содержимое конфигурации одного компонента введения, указав ссылки на него из других модулей.

<!ELEMENT extension (handle? , config+)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT config (presentation)>

<!ATTLIST config

introId CDATA #REQUIRED

id      CDATA #REQUIRED

content CDATA #REQUIRED>

Элемент config позволяет настроить пользовательский компонент введения. В этом элементе должны быть указаны идентификаторы id и introId, а также сам файл содержимого. Файл содержимого компонента введения - это файл XML, содержащий описания страниц, групп и ссылок этого компонента.



<!ELEMENT presentation (implementation+ , launchBar?)>

<!ATTLIST presentation

home-page-id    CDATA #REQUIRED

standby-page-id CDATA #IMPLIED>

Элемент presentation определяет все возможные реализации оформления введения. Их может быть несколько. При запуске выбирается только одна реализация на основе атрибутов os/ws. Если эти атрибуты не указаны, то будет выбрана первая по порядку.



<!ELEMENT implementation (head?)>

<!ATTLIST implementation

kind  (swt|html)

style CDATA #IMPLIED

os    CDATA #IMPLIED

ws    CDATA #IMPLIED>

Оформление вывода платформы имеет две реализации. Первая основывается на браузере SWT, а вторая - на UI Forms. Настраиваемый компонент введения можно настроить так, чтобы в зависимости от текущих значений OS и WS выбиралась одна реализация. Тип реализации может быть swt или html.



<!ELEMENT launchBar (handle? , shortcut*)>

<!ATTLIST launchBar

location (left|bottom|right|fastview) "fastview"

bg       CDATA #IMPLIED

fg       CDATA #IMPLIED>

Панель запуска работает совместно с командой 'switchToLaunchBar'. При запуске, эта команда закроет введение и создаст панель запуска в одной из свободных областей окна. Созданная панель будет содержать как минимум одну кнопку, позволяющую пользователю вернуться к предыдущей странице введения. Дополнительные кнопки можно определить с помощью элементов shortcut. Они могут ссылаться на другие страницы введения. Начиная с 3.1.



<!ELEMENT shortcut EMPTY>

<!ATTLIST shortcut

tooltip CDATA #IMPLIED

icon    CDATA #REQUIRED

url     CDATA #REQUIRED>

Этот элемент создает кнопку на панели запуска. При нажатии на кнопку будет открыт указанный в элементе URL. Начиная с 3.1.



<!ELEMENT handle EMPTY>

<!ATTLIST handle

close (true | false) "true"

image CDATA #IMPLIED>

Элемент, определяющий вид маркера панели запуска. Начиная с 3.1.



<!ELEMENT introContent (page+ , group* , extensionContent*)>

Элемент introContent определяет тело файла содержимого введения. Файл содержимого состоит из страниц, общих групп, которые могут входить в несколько страниц, и расширений для меток, заданных в других конфигурациях.



<!ELEMENT page (group* | link* | text* | head* | img* | include* | html* | title? | anchor* | contentProvider*)>

<!ATTLIST page

url          CDATA #IMPLIED

id           CDATA #REQUIRED

style        CDATA #IMPLIED

alt-style    CDATA #IMPLIED

filteredFrom (swt|html)

content      CDATA #IMPLIED

style-id     CDATA #IMPLIED

shared-style (true | false) >

Этот элемент служит для описания отображаемой страницы. Введение может показывать как статические, так и динамические страницы.
Содержимое динамических страниц генерируется из вложенных элементов страницы, описанных ниже. Для оформления будет использован стиль или его вариант. Стили можно улучшить, ссылаясь на id или class-id.
Статические страницы позволяют повторно использовать существующие документы HTML в одном и том же введении. Ссылки на них можно указывать в любой статической или динамической странице. Статические страницы задаются не в элементе page, а просто включаются как ссылки в другие страницы.
ИД домашней страницы указывается в элементе presentation точки расширения конфигурации введения. В домашней странице может содержаться url, указывающий, что страница является статической. Если url не указан, то страница считается динамической. Все остальные страницы, описанные с помощью элемента page, являются динамическими.
Примечание: если используется оформление SWT и показывается статическая страница, то запускается внешний браузер, а текущая страница остается видимой.
В динамической странице применяются следующие вложенные элементы. group - служит для создания группы связанных данных и применения стиля ко всем данным группы. link - задает ссылку, которая может применяться для ссылки на статическую или динамическую страницу и выполнения действия или команды введения. Обычно ссылки задаются на уровне страницы для навигации по главным страницам. text - задает текстовое содержимое на уровне страницы. head - применяется только для Web-презентаций и позволяет включить дополнительный код html в раздел HTML head. Таким способом можно добавлять сценарии javascript или внешние таблицы стилей. img - задает данные изображений на странице. include - позволяет повторно использовать любые другие элементы, отличные от страницы. html - применяется только для Web-презентаций и позволяет включить дополнительный код html в данные страницы. Такое встраивание позволяет включить ссылку на внешний файл HTML, встроив ее в object HTML. Встраивать фрагменты html можно прямо из файла html. title - задает заголовок страницы. anchor - задает точку, к которой могут быть подключены внешние данные с помощью элемента <extensionContent>.



<!ELEMENT group (group* | link* | text* | img* | include* | html* | anchor* | contentProvider*)>

<!ATTLIST group

id           CDATA #REQUIRED

label        CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

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



<!ELEMENT head EMPTY>

<!ATTLIST head

src      CDATA #REQUIRED

encoding CDATA #IMPLIED>

Код HTML для включения в раздел HEAD. Позволяет включить дополнительный код html в раздел HTML HEAD. Таким способом можно добавлять сценарии javascript или внешние таблицы стилей. Этот код может использоваться только с реализациями компонента введения в виде HTML. Для реализаций в виде UI Forms он игнорируется. Элементов head в странице может быть несколько. В реализации элемент head должен быть только один (так как он используется для всех страниц).



<!ELEMENT title EMPTY>

<!ATTLIST title

id           CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

фрагмент кода, который может также содержать теги HTML. Он используется только в качестве заголовка страницы, так что страница может иметь не более одного элемента title.



<!ELEMENT link (text? , img?)>

<!ATTLIST link

id           CDATA #IMPLIED

label        CDATA #IMPLIED

url          CDATA #REQUIRED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

Ссылка на статический файл HTML, внешний Web-сайт; может служить также для выполнения действия URL введения.



<!ELEMENT text EMPTY>

<!ATTLIST text

id           CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

фрагмент кода, который может также содержать теги HTML. Он может включать теги b и li. Также может содержать метки для url. Если требуется разбить текст на абзацы, то их можно обозначить тегами p.



<!ELEMENT img EMPTY>

<!ATTLIST img

id           CDATA #REQUIRED

src          CDATA #REQUIRED

alt          CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

Изображение, представляющее содержимое введения, а не презентацию (в отличие от изображений оформления, заданных в стилях).



<!ELEMENT html (img | text)>

<!ATTLIST html

id           CDATA #REQUIRED

src          CDATA #REQUIRED

type         (inline|embed)

style-id     CDATA #IMPLIED

filteredFrom (swt|html)

encoding     CDATA #IMPLIED>

код HTML, который нужно встроить в страницу либо как весь документ, либо как фрагмент HTML. Для презентаций swt можно задать заменяющее изображение или текст.
Такое встраивание позволяет включить ссылку на внешний файл HTML, встроив ее в содержимое динамической страницы. Создается элемент HTML object, ссылающийся на файл html.
Встраивать фрагменты html можно прямо из файла в динамическую страницу html.



<!ELEMENT include EMPTY>

<!ATTLIST include

configId    CDATA #IMPLIED

path        CDATA #REQUIRED

merge-style (true | false) >

расширяет элемент, указывая путь и необязательный атрибут configId. Путь должен явно задавать элемент в заданной конфигурации. Он может указывать на общую группу, заданную в конфигурации, или на любой элемент страницы.



<!ELEMENT anchor EMPTY>

<!ATTLIST anchor

id CDATA #REQUIRED>

anchor - элемент для объявления расширяемости. Он указывает на расположение в конфигурации, допускающее внешние дополнения. Только элемент anchor может служить значением цели в атрибуте path для extensionContent



<!ELEMENT extensionContent (text | group | link | html | include)>

<!ATTLIST extensionContent

style     CDATA #IMPLIED

alt-style CDATA #IMPLIED

path      CDATA #REQUIRED

content   CDATA #IMPLIED>

Содержимое, добавляемое в целевой элемент anchor. В configExtension допускается только один extensionContent, так как если это расширение недоступно (не найден файл конфигурации или целевой элемент anchor), то страницы и группы расширения будут игнорироваться.



<!ELEMENT contentProvider (text?)>

<!ATTLIST contentProvider

id       CDATA #REQUIRED

pluginId CDATA #IMPLIED

class    CDATA #REQUIRED>

посредник для поставщика содержимого введения, который позволяет динамически подключать данные в страницу введения из различных источников (web, eclipse и т.д.) и модифицировать содержимое с помощью этих данных. Если не удается загрузить класс IIntroContentProvider, указанный в атрибуте class, то будет обрабатываться содержимое элемента text. Это динамический вариант тега html введения. Тег html служит для встраивания в страницу введения статического текста html, а тег contentProvider позволяет делать то же самое динамически. Другое различие между этими тегами состоит в том, что тег html поддерживается только для презентаций HTML, а тег contentProvider - для презентаций и HTML, и SWT. Начиная с 3.0.1



В примере показано использование точки расширения конфигурации.

<extension id=

"intro"

point=

"org.eclipse.ui.intro.config"

>

<config introId=

"com.org.xyz.intro"

id=

"com.org.xyz.introConfig"

content=

"introContent.xml"

>

<presentation home-page-id=

"root"

title=

"%intro.title"

>

<implementation ws=

"win32"

style=

"css/shared.css"

kind=

"html"

os=

"win32"

>

</implementation>

<implementation style=

"css/shared_swt.properties"

kind=

"swt"

>

</implementation>

</presentation>

</config>

</extension>

Дополнительные сведения приведены в спецификации для пакета API org.eclipse.ui.intro.config.

Введение, поставляемое модулем org.eclipse.platform, - это реализация только в пределах Eclipse.