Составные памятки

Составные памятки обеспечивают руководство по разрешению сложных неполадок путем разбиения неполадки на ряд более мелких задач. Составные памятки регистрируется с помощью   точки расширения org.eclipse.ui.cheatsheets.cheatSheetContent.

Формат файла содержимого

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

<compositeCheatsheet> является корневым элементом составной памятки. Он будет содержать одну корневую задачу, которая может являться <task> или <taskGroup>. Элементы <taskGroup> могут иметь один или несколько дочерних элементов, каждый из которых может являться <task> или <taskGroup>. Элемент <task> не имеет дочерних задач.

Задачи и группы задач могут содержать элементы <intro>, содержащие текст, который следует отобразить перед запуском задачи, и элементы <onCompletion>, содержащие текст, отображаемый после выполнения задачи. Как <intro>, так и элементы <onCompletion> могут содержать текст на языке описания формы. В приведенном ниже примере теги <b> и </b> применяются для выделения текста полужирным шрифтом.

Задачи могут также содержать элементы <param>. Задача памятки может иметь следующие параметры: "id" - ИД зарегистрированной памятки, "path" - относительный путь или URL файла содержимого памятки и "skipIntro" -  булевский параметр (если для него задано значение true, то  памятка запускается на первом шаге после введения). Следует указать либо параметр "id", либо параметр "path" (но не оба).

Узел <зависимости> от задачи "B" к задаче "A" представляет требование, при котором задача A должна быть выполнена до запуска задачи B.

Параметры задачи памятки

Если задача имеет тип = "cheatsheet", памятка будет открыта при запуске этой задачи. Возможны три параметра задачи памятки.

Имя параметра  Описание
id ИД памятки, которая была зарегистрирована с помощью точки расширения org.eclipse.ui.cheatsheets.cheatSheetContent. Указывает на памятку, которая будет связана с данной задачей. Следует указать либо параметр id, либо параметр path (но не оба).
path URL файла содержимого памятки. Это может быть либо абсолютный, либо относительный URL файла содержимого составной памятки. Если заданы оба параметра - id и path - то для указания на расположение файла содержимого будет использован параметр path, а параметр id будет игнорироваться.
showIntro Булевский параметр, значение по умолчанию которого равно true. Если задано значение "false", то при запуске памятки будет показан первый шаг, а не введение.

Пример составной памятки

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

<?xml version="1.0" encoding="UTF-8"?>
<compositeCheatsheet name="Пример составной памятки">
    <taskGroup name= "Пример составной памятки">
         <intro> Пример <b>составной памятки</b>, созданной на основе существующих памяток.
                 <br/><br/>Нужную задачу можно выбрать в дереве задач или перейти к ней с помощью ссылок.
                </intro>
         <onCompletion>Все задачи завершены успешно.</onCompletion>
         <task kind="cheatsheet" name= "Создание ветвей и слияние с помощью CVS" skip="true">
              <param name = "id" value = "org.eclipse.platform.cvs_1" />
              <intro>Эта памятка предназначена для пользователей CVS. Если в системе не установлена система CVS или
если не требуется создать ветви и осуществить слияние, пропустите этот этап.
                </intro>
               <onCompletion>Знакомство со способами создания ветвей и слияния завершено. </onCompletion>
             </task>
         <taskGroup name= "Создание проектов Java" kind = "sequence">
             <intro> Сначала приведены инструкции по созданию простого проекта Java, затем - по созданию проекта Java с SWT.
             <br/><br/>В этой группе задачи нужно выполнять в заданной последовательности. Например,
подзадачу "Автономное приложение SWT" можно выполнить только после завершения задачи "Создание проекта Java".
                </intro>
              <onCompletion>Создание обоих приложений Java завершено успешно. </onCompletion>
         <task kind="cheatsheet" name= "Создание проекта на java" id = "createJavaProject">
             <param name="id" value = "org.eclipse.jdt.helloworld"/>
                 <param name="showIntro" value = "false"/>
                 <intro>Эта памятка руководит процессом создания простого приложения Hello World.
                    Памятка может запускать мастеры для создания проекта и класса.
                </intro>
             <onCompletion>Вы успешно создали приложение приветствия</onCompletion>
             </task>
             <task kind="cheatsheet" name= "Автономное приложение SWT">
                  <intro>Модули Eclipse, входящие в пользовательский интерфейс, работают с инструментарием стандартных виджетов (SWT).
                        Это руководство поможет получить более подробные сведения о SWT.
                  </intro>
                  <param name = "id" value = "org.eclipse.jdt.helloworld.swt" />
                  <onCompletion>Вы успешно создали приложение SWT. </onCompletion>
             </task>
    </taskGroup>
    </taskGroup>
</compositeCheatsheet>

Возможность расширения составной памятки - Временная в Eclipse 3.2

Существует возможность расширения составных памяток, однако в Eclipse 3.2 эта расширяемость является временной, и классы могут измениться до того, как станут API. Поддержку составных памяток можно расширить с помощью точки расширения org.eclipse.ui.cheatsheets.cheatSheetContent, которая имеет два новых элемента - taskEditor и taskExplorer, обеспечивающих сотрудничество редакторов задач и анализаторов задач.

Участие редактора задач определяет новый тип задачи, отображаемый в разделе сведений о задаче. Для включения редактора задач реализуйте настроенный подкласс редактора   TaskEditor, затем   добавьте элемент taskEditor в plugin.xml.

Представление анализатора задач также можно настроить с помощью точки расширения.  Анализатор структуры   включен в платформу Eclipse. По умолчанию, анализатор составной памятки при первом открытии является деревом. Атрибут элемента <compositeCheatSheet> позволяет переопределить это значение по умолчанию. Если зарегистрировано несколько анализаторов, то в меню представления будет входить элемент, позволяющий выбрать анализатор. Для включения анализатора задач реализуйте настроенный подкласс анализатора   TaskExplorer, затем   добавьте элемент taskExplorer в plugin.xml.

Ссылки на связанную информацию

Работа с памятками
Работа с составными памятками
Создание памяток
Рекомендации по созданию компонентов
Спецификация файла содержимого составной памятки
Точка расширения org.eclipse.ui.cheatsheets.cheatSheetContent