Описание пользователя
Глава 2. Интерфейс пользователя
§2.5. Добавление в схему стандартных блоков
Описываются способы добавления в схему стандартных блоков: с панели блоков и из библиотеки.
Добавлять в схему стандартные, библиотечные блоки можно двумя основными способами: с панели блоков главного окна или из отдельных окон библиотек. Добавлять блоки с панели гораздо быстрее, поэтому сначала рассмотрим этот способ.
Панель блоков обычно размещается в правой части главного окна RDS. Она состоит из вкладок, на каждой из которых размещаются кнопки с условными обозначениями блоков. Обычно на вкладке находятся блоки, соответствующие названию этой вкладки: на вкладке «Логика» – логические блоки, на вкладках «Интерфейс», «Ввод данных» и «Индикаторы» – блоки для ввода и индикации различных параметров, и т.п. К большинству кнопок блоков выводятся всплывающие подсказки, поясняющие назначение данного блока. Если для блока предусмотрена справка, ее можно вызвать, либо нажав сначала кнопку этого блока, а затем клавишу F1, либо вызвав контекстное меню для кнопки блока нажатием правой кнопки мыши и выбрав в этом меню пункт «». Если для блока предусмотрен стандартный пример схемы, его можно загрузить выбором пункта «» в этом же контекстном меню.
Создадим новую пустую схему (см. §2.4) и добавим в нее несколько блоков с панели. Для создания схемы необходимо выполнить следующие действия:
запустить RDS и выбрать пункт меню «»
или нажать соответствующую ему кнопку на панели;
сохранить созданную пустую схему, выбрав пункт меню
«» или нажав
Ctrl + S
или соответствующую кнопку на панели, и указав имя файла для сохранения
(для определенности назовем схему «Test.rds»).
Теперь добавим в созданную
схему блок-сумматор.
Для этого нужно сначала выбрать на панели блоков вкладку
«Алгебра» или «Вычисления»
(в разных конфигурациях панели блоков сумматор может находиться на разных вкладках).
Панель блоков находится внутри главного окна
RDS, поэтому, если главное окно закрыто окном подсистемы, панель
блоков не будет видна.
В этом случае необходимо вызвать главное окно
RDS на передний план нажатием клавиши F10 или
крайней левой кнопки на
панели расчета
окна подсистемы. После выбора нужной вкладки
на панели блоков появятся кнопки с символическими
изображениями алгебраических блоков, среди которых может быть несколько сумматоров.
Нам понадобится сумматор с тремя входами: на его кнопке изображен знак «плюс» в белом
прямоугольнике, а при подведении к нему курсора мыши появляется подсказка
«Сложение y = x1+x2+x3». Необходимо нажать эту кнопку
(рис. 28а) –
она останется нажатой – а затем щелкнуть левой кнопкой мыши в том
месте рабочего поля, в котором нужно разместить новый блок
(рис. 28б).
После щелчка на рабочем поле появится и станет выделенным блок
«Sum_1», а кнопка на панели перейдет в ненажатое
состояние.
Рис. 28. Добавление блока с панели в схему: щелчок на панели (а),
затем щелчок в окне подсистемы (б)
Внешний вид блока в подсистеме может не совпадать с изображением на кнопке панели: на кнопке обычно отображается маленькая стилизованная картинка, а в подсистеме некоторые блоки (например, графики) могут иметь очень сложное изображение.
По умолчанию щелчки левой кнопкой мыши в окне подсистемы используются для выделения ее блоков и связей. Нажатая кнопка блока на панели блоков сигнализирует о том, что, вместо этого, следующий щелчок на рабочем поле какого-либо окна подсистемы добавит этот блок в эту подсистему. Если пользователь передумает добавлять блок, он может еще раз нажать на его кнопку (она перейдет в ненажатое состояние) или нажать отдельно расположенную кнопку с изображением курсора мыши в левой части панели.
Теперь точно так же добавим в схему стандартное поле ввода. Для этого выберем на панели вкладку «Интерфейс» или «Ввод данных», нажмем на ней самую первую кнопку (с всплывающей подсказкой «Ввод числа») и щелкнем на рабочем поле где-нибудь левее уже помещенного туда сумматора – в схеме появится новый блок «DEdit1» (рис. 29). Для полей ввода отображение имени по умолчанию отключено, но имя выделенного блока можно прочесть в строке состояния.
Рис. 29. Окно подсистемы после добавления поля ввода
Добавим в схему числовой индикатор, но, на этот раз, не с панели блоков, а из окна библиотеки. Но прежде разберемся, как устроена и эта библиотека, и панель блоков.
И панель, и библиотека блоков – это набор отдельных файлов с описаниями блоков в специально отведенных для этого папках. По умолчанию панель блоков находится в папке «Panel\» внутри папки данных RDS, а библиотека – в папке «Library\» там же (размещение панели и библиотеки можно посмотреть в окне настроек RDS). Внутри папки панели блоков находятся другие папки, каждая из которых соответствует отдельной вкладке панели, а внутри этих папок – файлы самих блоков с расширениями «.blk» или файлы ссылок на файлы блоков с расширениями «.pth». Например, если сумматор «Sum_1» был добавлен нами в схему с вкладки «Алгебра», то его описание было загружено из файла «Panel\Алгебра\Sum_.pth». Точнее, поскольку это файл ссылки, из него был загружен путь к файлу описания блока, после чего сам блок был загружен в схему из файла по этому пути.
При добавлении блока в схему RDS загружает его из соответствующего файла и дает ему имя, состоящее из имени этого файла и порядкового номера такого блока в подсистеме. Например, если мы добавим в ту же самую подсистему второе поле ввода, оно получит имя «DEdit2», поскольку блок с именем «DEdit1» в подсистеме уже есть. Помимо основного файла описания блока с расширением «blk» или ссылки не него с расширением «pth», в папке, соответствующей вкладке панели блоков, могут находиться файлы с растровыми рисунками, отображаемыми на кнопках этих блоков (обычно они имеют расширения «bmp» или «ico»), а также текстовые файлы всплывающих подсказок к кнопкам с расширением «txt» – за исключением расширения, имена таких вспомогательных файлов должны совпадать с именем основного. Для любого стандартного блока, т.е, блока, входящего в состав RDS, а не добавленного пользователем, в папке будет присутствовать вспомогательный файл с расширением «std», по наличию которого RDS опознает стандартные блоки и запрещает их удаление и переименование, чтобы не возникало конфликтов имен при обновлении или переустановке программы (вместо удаления их можно скрыть, чтобы они не показывались в окне библиотеки и на панели блоков). Кроме того, в папке вкладки обычно находятся и другие файлы, определяющие порядок расположения кнопок блоков на вкладке и их включенность в различные конфигурации библиотек. Все эти файлы могут быть отредактированы средствами Windows или с помощью пользовательского интерфейса окна библиотеки.
Библиотека блоков устроена так же, как и панель блоков, за исключением того, что в ней могут использоваться вложенные папки, и блоки в библиотеке всегда сортируются в алфавитном порядке их имен (вручную задать порядок блоков в окне библиотеки, в отличие от порядка кнопок на вкладке панели, нельзя). Обычно в библиотеку помещают редко используемые блоки, чтобы не загромождать ими панель, которая постоянно находится у пользователя перед глазами. По умолчанию библиотека пуста, пользователь может, при желании, добавлять туда блоки самостоятельно.
Рис. 30. Окно библиотеки блоков
Доступ к библиотеке блоков осуществляется через специальное окно, напоминающее «Проводник» Windows (рис. 30). Открыть это окно можно при помощи пункта главного меню «», на панели списка открытых окон при этом появляется кнопка этого окна. Окно библиотеки позволяет обращаться не только к самой библиотеке, но и к панели блоков, показывая структуру ее папок-вкладок и находящиеся на ней файлы блоков с их именами. Добавление новых блоков на панель чаще всего производится не вручную, записью файла блока в соответствующую папку, а при помощи окна библиотеки (см. §2.16.2). Мы сейчас не будем добавлять блоки в библиотеку, мы используем окно библиотеки, чтобы добавить в нашу схему числовой индикатор. Конечно, добавить его непосредственно с панели блоков, где он и находится, было бы быстрее, но, поскольку сама библиотека блоков в RDS по умолчанию пуста и оттуда в схему нечего добавлять, мы таким образом сможем проиллюстрировать использование окна библиотеки для добавления блока.
Откроем новое окно библиотеки, выбрав пункт главного меню «». В дереве папок, находящемся в левой части появившегося окна (см. рис. 30) раскроем элемент «Панель блоков», нажав на значок «+» слева от него, и выберем в нем вложенную папку «Интерфейс» или «Индикаторы» (в разных конфигурациях панели блоков индикатор может находиться на разных вкладках). В правой части окна появится список блоков выбранной вкладки – нажмем левую кнопку мыши на блоке с именем «DDisplay». Затем, не отпуская кнопку, переместим курсор мыши на рабочее поле подсистемы правее сумматора и отпустим левую кнопку. В указанной нами точке появится числовой индикатор (рис. 31).
Рис. 31. Перетаскивание блока из окна библиотеки в подсистему
Есть и другой способ помещения блоков из окна библиотеки на рабочее поле схемы: если выделить в окне библиотеки один или несколько блоков (одиночный блок выделяется щелчком левой кнопки мыши, другие блоки добавляются к выделению щелчками с нажатой клавишей Ctrl или Shift), скопировать их в буфер обмена, нажав Ctrl + C или выбрав в меню пункт «», а затем перейти в окно подсистемы и вставить их из буфера, нажав Ctrl + V или выбрав пункт меню «», выделенные в библиотеке блоки добавятся в подсистему. Если необходимо точно указать точку, в которой нужно разместить добавляемые блоки, вместо главного меню следует воспользоваться контекстным: скопировав блоки в буфер обмена следует нажать правую кнопку мыши в том месте рабочего поля, где должны оказаться новые блоки, и выбрать в появившемся меню пункт «».
Интерфейс окна библиотеки позволяет не только добавлять блоки в схему, но и редактировать библиотеку и панель блоков, задавать текст всплывающих подсказок, указывать картинки для кнопок, добавлять в библиотеку блоки из схемы и т.п. Все эти возможности подробно рассмотрены в §2.16.
Есть еще один, наименее удобный, способ добавить в схему стандартный блок. Если известен путь к файлу этого блока, можно загрузить его в схему, нажав в выбранном месте рабочего поля подсистемы правую кнопку мыши, выбрав в открывшемся контекстном меню пункт «» и указав путь к файлу блока. Этот способ может пригодиться, если стандартный блок пока отсутствует в библиотеке (например, если он был прислан разработчиком по электронной почте) или для добавления в подсистему другой схемы в качестве единого блока. Схема в RDS, а точнее, ее корневая подсистема, тоже является блоком, потому, при необходимости, она может быть добавлена внутрь другой схемы. Создание подсистем в схемах описывается в §2.11.