Составные памятки обеспечивают руководство по разрешению сложных неполадок путем разбиения неполадки на ряд более мелких задач. Составные памятки регистрируется с помощью точки расширения 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 эта расширяемость является временной, и классы могут измениться до того, как станут API. Поддержку составных памяток можно расширить с помощью точки расширения org.eclipse.ui.cheatsheets.cheatSheetContent, которая имеет два новых элемента - taskEditor и taskExplorer, обеспечивающих сотрудничество редакторов задач и анализаторов задач.
Участие редактора задач определяет новый тип задачи, отображаемый в разделе сведений о задаче. Для включения редактора задач реализуйте настроенный подкласс редактора TaskEditor, затем добавьте элемент taskEditor в plugin.xml.
Представление анализатора задач также можно настроить с помощью точки расширения. Анализатор структуры включен в платформу Eclipse. По умолчанию, анализатор составной памятки при первом открытии является деревом. Атрибут элемента <compositeCheatSheet> позволяет переопределить это значение по умолчанию. Если зарегистрировано несколько анализаторов, то в меню представления будет входить элемент, позволяющий выбрать анализатор. Для включения анализатора задач реализуйте настроенный подкласс анализатора TaskExplorer, затем добавьте элемент taskExplorer в plugin.xml.
Работа с памятками
Работа с составными памятками
Создание памяток
Рекомендации по созданию компонентов
Спецификация файла содержимого составной памятки
Точка расширения
org.eclipse.ui.cheatsheets.cheatSheetContent