Базовый редактор группы компонентов

  Управление столбцами

  Фильтрация списка

  Сортировка списка

  Редактирование атрибутов компонента

  Групповое редактирование атрибутов

  Групповое редактирование строковых атрибутов с инкрементированием

  Групповое редактирование числовых атрибутов с инкрементированием

Базовый редактор представляет собой унифицированный редактор для группы COM-портов, каналов, источников/приемников или клемм.

В этом табличном редакторе для компонента (выделенной группы компонентов) могут быть заданы те же параметры/атрибуты, что и в редакторе компонента (см. Редакторы компонентов). Кроме того, в редакторе могут быть заданы имена компонентов (имя компонента может быть отредактировано также в окне его свойств или непосредственно в навигаторе – см. Окно свойств объекта структуры проекта и Меню и главная панель инструментов навигатора проекта ).

Ниже в качестве примера показан редактор группы компонентов COM-порт:

В редакторе поддерживаются стандартные операции изменения ширины столбцов, выделения нескольких компонентов, а при редактировании поля – стандартные операции работы с буфером обмена (см. Типовые операции редактирования ).

Если компонент не имеет некоторого атрибута, задание этого атрибута для данного компонента в редакторе недоступно.

Управление столбцами

По умолчанию, все столбцы таблицы видимы и располагаются слева направо по возрастанию индексов атрибутов. Для изменения порядка расположения столбцов используется метод drag-and-drop с удержанием клавиши CTRL.

Для управления видимостью столбцов используется диалог, который открывается при нажатии ПК в любом поле заголовка таблицы:

Этот диалог содержит следующие инструменты:

– сделать видимым столбец, выделенный в левой части диалога;

– скрыть столбец, выделенный в правой части диалога;

– сделать видимыми все столбцы;

– скрыть все столбцы.

Фильтрация списка

Редактор снабжен панелью инструментов, которая, помимо стандартных инструментов отмены и возврата последнего действия (соответственно  и  ), содержит следующие:

– если этот переключатель находится в нажатом состоянии, в нижней части редактора открывается окно, в котором могут быть заданы условия отображения компонентов в редакторе;

– переключатель имен полей (в нажатом состоянии отображаются длинные имена, в отжатом – короткие).

Для изменения положения переключателя нужно нажать на нем ЛК.

Окно задания условий, в соответствии с которыми компоненты отображаются в редакторе, показано на рисунке:

Самое верхнее поле этого окна предназначено для задания условия фильтрации списка по виду компонента (в случае канала – по классу). Вид/класс компонента выбирается в списке, который открывается при нажатии ЛК на кнопке  поля. Этот список содержит в том числе опцию Все типы (задается по умолчанию), что соответствует отсутствию фильтрации (т.е. в редакторе отображаются компоненты всех видов). Условие фильтрации по виду/классу компонента удалить нельзя.

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

– применить все заданные условия к списку компонентов редактора;

– добавить дополнительное условие;

– удалить выделенное дополнительное условие.

Для задания строки дополнительного условия используются 4 поля (слева направо):

   атрибут (выбирается из списка);

   знак сравнения, выбирается из списка. Список, помимо обычных знаков сравнения (=, !=, <. >, <=, >=), содержит следующие:

   RE (regular expression) – если выбрано это значение, в следующее поле можно ввести регулярное выражение Perl;

   WC (wildcard) – если выбрано это значение, в следующем поле можно использовать стандартные знаки замены символов;

   значение (константа сравнения);

   логический оператор связи условий (AND или OR).

Столбцы атрибутов скрываются, если в результате фильтрации отображаются компоненты, не имеющие их.

Если заданные условия были применены к списку, для их отмены нужно закрыть окно задания условий (перевести переключатель  в отжатое состояние).

Сортировка списка

В редакторе поддерживаются следующие виды сортировки списка компонентов:

   по возрастанию порядковых номеров компонентов в группе (сортировка по умолчанию) – см. Имена и идентификаторы объектов структуры ;

   по любому атрибуту по возрастанию;

   по любому атрибуту по убыванию.

Для переключения вида сортировки нужно нажать ЛК в заголовке соответствующего столбца (для сортировки по возрастанию порядковых номеров – в любом заголовке).

При переключении вида сортировки в используемом заголовке появляется значок, индицирующий направление сортировки:

– сортировка по убыванию;

– сортировка по возрастанию.

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

Если компоненты имеют одно и тоже значение атрибута, по которому сортируется список, они будут отсортированы по атрибуту с младшим индексом, значение которого различно для данных компонентов.

Редактирование атрибутов компонента

Для перехода к редактированию строкового атрибута компонента нужно дважды нажать ЛК в соответствующем поле. Другие атрибуты задаются выбором из списков. Список открывается при двойном нажатии ЛК в соответствующем поле редактора.

Групповое редактирование атрибутов

Чтобы задать какой-либо атрибут одновременно для всех выделенных компонентов, нужно, удерживая клавишу CTRL, дважды нажать ЛК в соответствующем поле и выбрать значение в открывшемся списке или ввести значение с помощью клавиатуры.

Групповое редактирование строковых атрибутов с инкрементированием

При выделении нескольких компонентов, их строковые атрибуты могут быть модифицированы (в том числе заданы содержащими инкрементированный числовой номер) в соответствии с шаблоном. Шаблон задается в диалоге, который появляется на экране при выполнении команды Задать строку из контекстного меню соответствующего поля:

Шаблон имеет следующий формат:

[string1][%nF(start_num,increment)][string2]

где:

   %nF(start_num,increment) – необязательное выражение, задающие инкрементирование и вид представления номера в редактируемом строковом атрибуте выделенных компонентов. В случае использования в шаблоне этого выражения все его составляющие являются обязательными:

   % – стандартный знак формата в Си;

   n – фиксированное количество знакомест, выделяемое для номера в строковом атрибуте. Пустые знакоместа заполняются нулями;

   F – вид представления номера в строковом атрибуте:

d или D – десятичное представление;

h – шестнадцатеричное представление (с префиксом 0x) строчными символами;

H – шестнадцатеричное представление (с префиксом 0X) прописными символами;

   start_num – неотрицательный номер для строкового атрибута компонента с младшим порядковым номером;

   increment – неотрицательный инкремент номеров в строковом атрибуте. Номера в строковом атрибуте инкрементируются в соответствии с возрастанием порядковых номеров выделенных компонентов;

   string1 и string2 – необязательные строковые выражения, в которых можно использовать знаки "?", "+" и "-".

При посимвольном сравнении исходной строки с шаблоном символ в исходной строке заменяется на символ из шаблона, если символ в шаблоне отличен от знаков "?", "+" и "-".

При использовании в шаблоне знаков "?", "+" и "-" символ в исходной строке модифицируется по следующим правилам:

   знак "?" запрещает модификацию соответствующего символа (при наличии этого символа);

   если знак "+" или "-" приходится на строчный символ, он не изменяется;

   если знак "+" или "-" приходится на цифру, она увеличивается или уменьшается на 1 (при увеличении 9 заменяется на 0, при уменьшении 0 заменяется на 9).

Групповое редактирование числовых атрибутов с инкрементированием

При выделении нескольких компонентов, их числовые атрибуты могут быть модифицированы (в том числе заданы инкрементированными). Правила модификации задается в диалоге, который появляется на экране при выполнении команды Задать диапазон контекстного меню соответствующего поля:

В диалоге задаются первое значение, инкремент и смещение. Результат действия зависит от флага Использовать смещение:

   если флаг не установлен, то атрибут компонента с младшим порядковым номером принимает первое значение, а остальные атрибуты инкрементируются относительно него с заданным шагом в соответствии с возрастанием порядковых номеров компонентов;

   если флаг установлен, то смещение прибавляется к значениям всех атрибутов (при этом первое значение и инкремент игнорируются).