Активные комментарии

Идея активных комментариев заключается в том, чтобы сделать комментарии живыми и дать старомодным комментариям новое значение и возможности.
С этого момента вы можете назначить событие мыши в своих комментариях и «пояснить» своим комментариям, что делать с каждым из них. Например, щелкнув левой кнопкой мыши, откройте какой-либо веб-адрес в своем браузере, наведите курсор мыши на изображение и дважды щелкните мышью на открывшемся файле.

Предположим, что мы пишем пример для модуля GSM / GPSR, который подключен к EasyPIC6, и мы хотели бы предоставить фотографию нашего оборудования (перемычки, кабели и т. д.). в этом примере.
Кроме того, было бы неплохо разместить некоторую документацию о чипе, который мы используем, и дополнительную плату GSM-модуля. Теперь мы можем использовать все эти вещи в одном комментарии, используя Редактор активных комментариев.

Новый активный комментарий

Когда вы запускаете редактор активных комментариев в первый раз (из меню «Вид», из всплывающего меню редактора или нажатием Ctrl + Alt + P) вы получите пустой редактор:

Active Comments Editor

После нажатия на кнопку Newвам будет предложено ввести имя для комментария:

New Active Comment

Вы можете заметить, что когда вы начинаете вводить имя, панель свойств отображается автоматически, поэтому вы можете редактировать свойства, если хотите. Комментарий будет создан при нажатии на кнопку Save.

Свойства состоят из двух основных категорий: атрибутов и событий.

Атрибуты могут быть:

Существует четыре предопределенных типа событий, которые можно применить к Активному комментарию:

  1. OnLeftClick + Alt
  2. OnRightClick
  3. OnDoubleClick
  4. OnMouseOver

Первые три типа событий могут иметь одно из следующих трех действий:

  1. OpenUrl - Открывает введенный URL в веб-браузере по умолчанию.
  2. OpenFile - Открывает файл в рамках программы по умолчанию, связанной с расширением файла (определяется Windows).
  3. None - Ничего не делает.

Четвертое событие, OnMouseOver, имеет только 2 действия:

  1. PreviewImage - Показывает изображение, когда курсор перемещается над комментарием.
  2. None - Ничего не делает.

Атрибуты тесно связаны с событиями. Например, вы не можете назначить OnLeftClick + Alt -> OpenFile если нет установленного атрибута файла или нет файла, добавленного в проект. Такое же поведение применяется к атрибуту изображения.

Давайте начнем редактировать наш Активный комментарий, введя допустимый веб-адрес в поле URL:

Entering Web Address

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

Images Attributes And Events

Вы можете увидеть содержимое созданного XML-файла, расширив редактор активных комментариев:

Editing XML file

Как уже упоминалось выше, вы можете добавить изображение или файл, которые уже включены в проект. Если желаемое изображение или файл не добавлены, вы можете сделать это прямо отсюда, нажав кнопку Add Image To Project или кнопку Add Image To Project.

Будет открыто диалоговое окно следующего файла:

Adding Image To Project Dialog

Там вы должны выбрать желаемое изображение для добавления. В нашем примере будет добавлено изображение Easy_GSM_GPRS.jpg.

Выбранное изображение автоматически добавляется в раскрывающийся список поля «Изображение» в редакторе активных комментариев:

Image Field

Теперь, когда изображение выбрано, мы можем назначить для него событие. Например, OnMouseOver будет использоваться для действия PreviewImage и OnLeftClick + Altбудет присвоено действие OpenUrl:

Images Attributes And Events

Теперь мы можем сохранить наши изменения в Активном комментарии, нажав кнопку «Сохранить».

  Примечание:Настройка атрибутов файлов такая же, как и для изображения, поэтому он не будет объясняться отдельно.

После того, как мы закончили создание нашего активного комментария, мы можем заметить, что он был добавлен в исходный файл в текущей позиции каретки с префиксом ac: prefix 'tell' IDE, который является активным комментарием:

Active Comment In Code Editor

Теперь попробуем. Если у вас LeftClick + Alt, URL-адрес в браузере по умолчанию будет открыт. Если вы наведите указатель мыши на него, вы увидите предварительный просмотр изображения:

Image Preview

Существует еще один способ добавить активный комментарий к активному проекту. Вы можете сделать это просто, набрав комментарий по-старому, за исключением префикса ac:. Таким образом, это будет выглядеть так:

Active Comment In Code Editor

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

Если вы удалите файл из диспетчера проектов или добавьте файл активного комментария, который содержит информацию о файле, который больше не находится в проекте, и наведите указатель мыши на комментарий, вам будет предложено либо добавить файл в проект, либо удалить определение события от Активного комментария к этому файлу:

File Linked Missing

Если вы удалите файл активных комментариев из диспетчера проектов, вы получите следующее сообщение:

Missing File

Нажмите кнопку «Да», и вы запросите активный файл комментариев:

Open Active Comment File

Если вы нажмете «Нет», комментарий будет удален из исходного кода.

Переименование активного комментария

Когда вы нажмете на кнопку переименования, вам будет предложено ввести новое имя:

Rename Active Comment

Теперь нажмите еще раз кнопку «Переименовать». Теперь вы переименовали свой Активный комментарий таким образом, чтобы его имя файла, имя исходного кода было изменено:

Rename Active Comment

Удаление активного комментария

Удаление активных комментариев работает подобно переименованию. Нажав кнопку «Удалить», вы удалите активный комментарий как из кода, так и из Менеджера проектов.