Текущий раздел:

Описания RDS

Описание пользователя

Глава 2. Интерфейс пользователя

§2.12. Выборочное отображение блоков и связей

§2.12.1. Использование слоев

# Описание пользователя

## Глава 2. Интерфейс пользователя

### §2.12. Выборочное отображение блоков и связей

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

#### §2.12.1. Использование слоев

Описывается назначение и параметры слоев в окне подсистемы и окно редактора этих слоев.

Слои используются во многих приложениях, позволяющих пользователю создавать какие-либо сложные изображения. Поддерживаются они и в RDS. Для тех, кто не знаком с идеологией слоев, ее можно коротко объяснить следующим образом: слои – это что-то вроде листов прозрачного пластика, на которых можно рисовать разные изображения (в случае RDS – изображения блоков и связей в подсистеме). Складывая эти листы в стопку в разном порядке, можно добиться того, что изображения на верхних листах будут перекрывать изображения на нижних, при этом изображения на нижних листах будут все равно частично видны через прозрачные участки верхних листов. Порядок листов в стопке всегда можно изменить произвольным образом, поместив на передний план самые важные в данный момент изображения. Кроме того, некоторые листы можно вообще убрать из стопки, чтобы их изображения стали не видны, а потом, при необходимости, вернуть их обратно в стопку.

В RDS каждая подсистема имеет свой, независимый от других, набор слоев. Каждый блок и каждая связь в этой подсистеме жестко привязаны к ее конкретному слою. Пользователь может в любой момент добавлять и удалять слои и переносить блоки и связи со слой на слой. Задать слой для блока или связи можно в их окнах параметров на вкладке «внешний вид» (см. рис. 100 и рис. 48 а соответственно) или пунктом «слой» контекстного меню выделенных блоков и связей (см. §2.3). При удалении слоя все находившиеся на нем блоки и связи будут автоматически перенесены на другой. Последний оставшийся слой удалить нельзя – в подсистеме всегда должен быть хотя бы один слой, иначе блокам и связям негде будет размещаться.

Видимость слоя (наличие или отсутствие «листа» в стопке) и его близость к переднему плану (место в стопке) в RDS не являются параметрами самого слоя. Вместе с самими слоями в подсистеме может быть произвольное число их конфигураций, между которыми пользователь может быстро переключаться. Каждая конфигурация имеет собственный порядок слоев и собственные установки видимости для каждого слоя. Кроме того, каждый слой в конфигурации может быть активным и неактивным. На активных слоях можно добавлять и редактировать блоки и связи, а в режимах моделирования и расчета блоки на них могут реагировать на нажатие и отпускание кнопок мыши и перемещение ее курсора. Блоки на неактивных слоях видны пользователю, но на мышь они не реагируют и их нельзя удалить, переместить или вызвать для них окно настроек. Число конфигураций слоев в подсистеме не ограничено, пользователь может создавать и удалять их. В подсистеме всегда должна быть хотя бы одна конфигурация слоев, поэтому последнюю оставшуюся конфигурацию удалить нельзя. При желании, в параметрах подсистемы может быть включена синхронизация конфигурации ее слоев с конфигурацией слоев родительской подсистемы. В этом случае при включении какой-либо конфигурации в родительской подсистеме в синхронизированной с ней дочерней автоматически включится конфигурация с тем же именем, если, конечно, она существует (состав и параметры слоев при этом у подсистем могут отличаться, должны совпадать только имена конфигураций).

Сразу после создания в подсистеме есть единственный слой с именем «Слой 1» и конфигурация с именем «Основная», в которой этот слой видим и активен. Для добавления в подсистему слоев и их конфигураций необходимо открыть окно редактора слоев, вызвав пункт «окна | редактор слоев» главного меню RDS или нажав клавишу F11. Можно также открыть окно редактора кнопкой на панели общего назначения главного окна RDS или на панели слоев окна подсистемы, в которую предполагается добавлять слои (рис. 220). Последнее обычно удобнее всего, поскольку при этом в редакторе слоев сразу будет выбрана нужная подсистема.

Рис. 220. Различные способы вызова редактора слоев

Окно редактора слоев (рис. 221) содержит две вкладки, «конфигурации» и «слои», над которыми располагается выпадающий список, в котором можно выбрать подсистему, слои и конфигурации которой будут редактироваться. В этот список попадают только подсистемы, окна которых открыты, причем при выборе подсистемы в списке ее окно автоматически перемещается на передний план, а при открытии окна подсистемы или вызове ее окна на передний план вручную, эта подсистема автоматически выбирается в списке. Таким образом, выбранная подсистема в окне редактора слоев всегда совпадает с текущей активной подсистемой.

(а)

(б)

Рис. 221. Окно редактора слоев: вкладки «конфигурации» (а) и «слои» (б)

На вкладке «слои» окна редактора располагается выпадающий список, в котором можно выбрать конфигурацию слоев (в нем исходно выбрана текущая конфигурация, на рис. 221 б – конфигурация с именем «Основная»). Ниже него находится список слоев в том порядке и в тех состояниях, которые заданы для выбранной конфигурации. Слои в списке перечисляются от переднего плана к заднему: чем выше слой в списке, тем ближе он к переднему плану.

Список слоев состоит из четырех колонок. В левой, самой широкой из них, отображается название слоя. Название слоя может быть произвольным, но оно должно быть уникальным в подсистеме: в одной подсистеме не может быть двух слоев с одинаковыми названиями. Для переименования слоя следует дважды щелкнуть на его названии в списке или нажать кнопку «ab|» в правой части вкладки. В отличие от близости к переднему плану, видимости и активности, название слоя не связано с конкретной конфигурацией – переименование слоя изменит его название сразу во всех конфигурациях.

Остальные три колонки служат для отображения видимости (колонка с изображением глаза) и активности (колонка с изображением карандаша) слоя, а также для указания слоя, выбранного текущим в данной конфигурации (колонка с галочкой). Щелчок мышью в колонках видимости и активности в строке конкретного слоя включает и выключает соответствующие параметры этого слоя. Изображение глаза во второй колонке указывает на видимость данного слоя (на рис. 221 б видимы все слои кроме слоя 3), изображение карандаша в третьей колонке – на активность слоя, то есть на то, что блоки и связи на нем могут быть изменены или удалены и реагируют на действия пользователя. На рис. 221 б активны только слои 1 и 2. Следует учитывать, что при отключении видимости слоя его активность тоже выключается – содержимое невидимого слоя не отображается и, поэтому, не может быть изменено.

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

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

Кнопка | Действие
--- | ---
| Переместить выбранный слой на одну позицию вверх (ближе к переднему плану) в выбранной конфигурации.
| Переместить выбранный слой на одну позицию вниз (дальше от переднего плана) в выбранной конфигурации.
| Изменить имя выбранного слоя во всех конфигурациях.
| Добавить новый слой во все конфигурации.
| Объединить выбранные слои в один (в списке должно быть выбрано несколько слоев, см. ниже) во всех конфигурациях.
| Удалить выбранный слой (его блоки и связи перемещаются на другой слой) во всех конфигурациях.

Для объединения нескольких слоев в один в списке должна быть выбрана группа из нескольких соседних слоев. Чтобы выбрать такую группу, следует щелкнуть левой кнопкой мыши на названии первого из выбираемых слоев, а затем, удерживая клавишу Shift, щелкнуть на последнем из слоев группы (рис. 222). Выделенными окажутся все слои между отмеченными, и кнопка объединения слоев станет активной.

(а)

(б)

Рис. 222. Выбор нескольких слоев в редакторе: выделение первого (а) и
последнего (б) слоя в группе

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

Следует учитывать, что удаление и объединение слоев затрагивает все конфигурации в подсистеме, поэтому эти действия запоминаются независимо от состояния флажка «запоминать состояние». Можно, при желании, сделать так, чтобы изменения в конфигурациях запоминались всегда, и этот флажок не отображался: для этого нужно на вкладке «общие» в настройках RDS включить флажок «всегда запоминать изменения в конфигурации слоев».

Конфигурации слоев можно добавлять, удалять и переименовывать на вкладке «конфигурации» (см. рис. 221 а). На ней расположен список имеющихся в подсистеме конфигураций и кнопки для управления ими:

Кнопка | Действие
--- | ---
| Переместить выбранную конфигурацию на одну позицию вверх в списке.
| Переместить выбранную конфигурацию на одну позицию вниз в списке.
| Изменить имя выбранной конфигурации.
| Добавить новую конфигурацию.
| Удалить выбранную конфигурацию.

Положение конфигурации в списке на вкладке совпадает с ее положением в выпадающем списке на панели слоев окна подсистемы (см. §2.3 и рис. 223). Обычно часто используемые конфигурации размещают в начале этого списка, чтобы их удобнее было выбирать. Имя конфигурации должно быть уникальным в подсистеме, RDS не даст создать в одной подсистеме две конфигурации с одинаковыми именами. При выборе конфигурации в списке она автоматически становится текущей в окне подсистемы.

Рис. 223. Выбор конфигурации на панели слоев

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

Рис. 224. Выбор текущего слоя на панели слоев

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

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