Об оболочке Workplace Shell OS/2
PC Magazine/RE logo
(С) СК Пресс 1S/96
PC Magazine, September 12, 1995, p. 542

Обустраиваем рабочее место

Билл Шиндлер и Эстер Шиндлер


Энтузиасты OS/2 часто ссылаются на оболочку рабочего места (Workplace Shell - WPS) в качестве примера элегантного равновесия между удобством и возможностями. Быть может не менее часто и вам самим приходилось убеждаться в преимуществах Workplace Shell. Давайте рассмотрим некоторые из основополагающих концепций и функций WPS и исследуем ряд способов, которые позволяют воспользоваться ее возможностями в полной мере.

Workplace Shell - это объектно-ориентированный интерфейс. Все, что имеется на "рабочем столе" (desktop) OS/2, трактуется как объекты, в том числе и сам "рабочий стол". Вероятно, вы наиболее часто встречались с использованием термина "объектно-ориентированный" в области программирования, но в Warp эта технология применяется для сокрыти деталей внутреннего устройства операционной системы, облегчая способ взаимодействия с компьютером. Пользователи работают с папками и документами, а не с программами. Так, например, печать выполняется простым "перетаскиванием" (drag) объекта-документа на пиктограмму принтера.

Интерфейс WPS основан на модели системных объектов (System Object Model - SOM) корпорации IBM - нейтральном по отношению к языкам программировани стандарте для разработки объектов, которые могут взаимодействовать друг с другом. С помощью SOM можно создавать объекты, используя разные языки программирования, в том числе традиционные, не относящиеся к объектно-ориентированным. Объекты SOM могут быть скомпонованы динамически, поэтому в любое время у вас есть возможность создавать и добавлять новые типы объектов Workplace Shell.

Основная концепция объектно-ориентированной технологии заключается в том, что новые разные объекты могут наследовать поведение общих ранее определенных объектов. У каждого объекта имеется меню, которое всегда активизируется однократным щелчком правой клавишей мыши при расположении курсора мыши поверх этого объекта. А в большинстве меню имеется общий стандартный набор наследуемых элементов, таких, как Open (открыть), Settings (параметры), Help (справка) и Move (перемещение). (Однако другие элементы меню могут варьироваться в зависимости от типа объекта. Есть даже возможность отключать некоторые из них. Например, нельзя удалить Shredder ("Корзинка для мусора") - пункт Delete даже не появляется.)

Что это означает для пользователя, понятно - согласованность реакций. Всегда можно ожидать, что определенные действия приведут к определенным результатам. Но эта согласованность не ограничивает вас - никто не принуждает работать одним конкретным способом. WPS позволяет изменять десятки параметров, начиная с того, в каком виде объекты будут представлены на экране, и кончая тем, как организованы объекты и данные, с которыми вы работаете. Действительно, WPS предоставляет настолько гибкие возможности, что редко можно увидеть два похожих рабочих места OS/2. Система OS/2 берет на себя большую часть забот о выполнении служебных действий. Например, если вы перемещаете файл, на который ссылается объект WPS, связи в объекте автоматически обновляются.

С каждым объектом WPS связан набор диалоговых окон с закладками, который называется блокнотом параметров (Settings notebook). Для изменения поведения объекта следует выбирать опции на страницах, помеченных закладками. Как и при использовании меню объектов, содержимое блокнота параметров изменяется в зависимости от типа объекта, которым он управляет, но несколько параметров (например, имя и пиктограмма) стандартны дл всех объектов.

Workplace Shell допускает использование многих типов объектов. Основные четыре из них - это объекты-папки, объекты-пиктограммы, объекты-данные и объекты- устройства.

Объекты-папки

Папки (folders) представляют собой объекты, которые могут содержать другие объекты. Они подобны группам в Windows 3.1, за исключением того, что в них могут также содержаться другие папки или устройства и их можно беспрепятственно располагать в любом месте "рабочего стола" WPS. Папки - это наглядные представлени каталогов в файловой системе. Само рабочее место WPS определяется как папка и ведет себя точно так же, как любой другой объект этого типа. Если вы исследуете структуру каталога \Desktop и его подкаталогов на своем системном накопителе, то увидите карту своего рабочего места WPS. Заметим, что при использовании файловой системы на основе FAT вместо системы High Performance File System (HPFS) OS/2 вы увидите только краткие имена файлов. Большая часть служебной информации хранитс среди расширенных атрибутов, связанных с подкаталогами \Desktop или в двоичных файлах OS2.INI и OS2SYS.INI системы OS/2. (Расширенные атрибуты содержат дополнительную информацию, относящуюся к файлу, например тип файла, пиктограмму или комментарий. Каждый из атрибутов может иметь размер до 64 Кбайт.)

Содержимое одной и той же папки WPS может отображаться с использованием какого-либо одного или сразу всех представлений: Icon (пиктограмма), Details (подробности), Tree (дерево) и Settings (параметры). Для открытия папки в представлении, отличающемся от используемого по умолчанию, щелкните правой кнопкой мыши по папке для вызова меню объекта, выберите Open, а затем укажите желаемое представление. Выбор представления Settings осуществляется щелчком по одноименному пункту, расположенному сразу под пунктом Open.

Если вы пользуетесь программой Program Manager Windows 3.1, то принимаемое по умолчанию пиктографическое изображение будет вам более знакомым. Однако если вам удобнее работать с программой File Manager Windows 3.1, то вы можете предпочесть представление Details. В этом представлении отображается информация об объектах и файлах, в том числе дата создания, время последнего обращения к файлу и последнего его измерения и т. д. Вид-дерево показывает иерархические связи между папками во многом подобно каталогам и подкаталогам. У каждого из представлений существуют некоторые опции, предназначенные для управления выводом объектов на экран. Например, для автоматической сортировки пиктограмм выберите параметр Nongrid в блокноте параметров папки и пометьте флажок "Always maintain sort order" ("Всегда поддерживать порядок сортировки") на страничке Sort. Страница Background (Фон) в этом блокноте определяет цвет или растровое изображение, выводимое на экран в этой папке. Многим пользователям нравится смена фоновых изображений для многих различных папок, в том числе для рабочего места WPS.

Workplace Shell предоставляет возможность использовать папку особого вида, называемую рабочей, которая особенно полезна, если часто возникает необходимость перехода от одного проекта к другому. WPS "запоминает" состояние объектов рабочей папки, когда вы открываете, закрываете или свертываете ее. Например, предположим, что рабочая папка содержит документ текстового процессора, (обычную) вложенную папку (subfolder) и бухгалтерскую программу - и все это в стадии выполнения или открыто. Когда вы закрываете рабочую папку, OS/2 закрывает текстовый процессор, бухгалтерскую программу и вложенную папку. При следующем открытии рабочей папки будут запущены прикладные программы и загружена исправленная верси документа текстового процессора, а также открыта вложенная папка. При свертывании рабочей папки минимизируются все объекты, размещенные в ней, независимо от того, открыты они или нет. Дл превращения папки в рабочую щелкните по полю Workfolder на странице File блокнота параметров папки. Заметьте, что "рабочий стол" WPS помечен как рабочая папка.

Папка Drives - еще один специальный вид папки, позволяющий видеть все объекты-накопители в вашей системе - накопители на жестких и гибких дисках, логические накопители, CD-ROM и т. д. В отличие от других папок вы не сможете удалить папку Drives, а в ее разделах нельзя создавать, удалять, перемещать или копировать объекты. Объекты-накопители используйте дл непосредственной работы с содержимым дисков. С их помощью можно выводить на экран информацию о файле и диске и перемещать или копировать файлы. При работе с File Manager Windows 3.1 вам поначалу может показаться, что папка Drives обладает меньшими возможностями, но если вы поэкспериментируете и настроите всплывающие меню объектов-накопителей и их папок, то обнаружите, что это полезный инструмент.

Объекты-программы

Объекты-программы внешне похожи на пиктограммы, но фактически они представляют собой гораздо большее. Программный объект - это ссылка на любой файл, запускающий программу, в том числе DLL, исполнимые модули и командные файлы. Поскольку объект-программа не тождественен самой программе, можно создавать несколько программных объектов, указывающих на один и тот же исполнимый модуль. Например, вы можете создать два объекта-программы, которые будут запускать Paradox for Windows (DBExpert for OS/2 или Q+A for DOS - правила применимы в равной степени). Первый может использовать только параметры управления памятью в DOS, тогда как второй - загружать указанную базу данных с помощью параметров командной строки и, возможно, при иных значениях параметров памяти.

Для настройки программного объекта вы должны вносить изменения в его блокнот параметров. Можно менять маршрут доступа и параметры прикладной программы (во многом так же, как и свойства Windows) и, кроме того, определять, будет ли прикладная программа Windows запускаться в окне на "рабочем столе" WPS, в полноэкранном сеансе, в отдельном DOS-сеансе и т. д. Здесь вы также найдете параметры DOS и Windows. В их число входят десятки атрибутов, контролирующих управление памятью в OS/2, драйверы устройств и взаимодействие с операционной системой в процессе выполнения программы. Способность создавать отдельные программные объекты, каждый из которых указывает на одну и ту же программу, предоставляет необычайно гибкие возможности по запуску прикладных программ.

Объекты-данные

Начинающих пользователей OS/2 часто смущают отличи между программными объектами и объектами-данными. В отличие от объектов-программ объект-данные представляет собой не ссылку на файл, а сам файл, обычно содержащий данные. Удаление программного объекта не приводит к удалению исполнимого модуля, но, если удалить объект-данные, связанный с ним файл данных исчезнет. Объекты-данные можно ассоциировать с прикладными программами и указывать программным объектам, как распознавать определенные расширения. Таким образом, если вы дважды щелкнете мышью на объекте-данных, то будет запущена прикладная программа, а в нее будет вызван этот файл данных.

Объекты-устройства

Объекты-устройства предоставляют способ связи между компьютером и подключенным к нему оборудованием, таким, как принтер. В значительной степени объекты-устройства представляют собой расширенные атрибуты, связанные с соответствующими файлами драйверов. Они имеют блокноты параметров для управления порядком пользовани устройством, например, будет ли принтер переключен в режим печати с вертикальным или горизонтальным расположением листа. Объекты-устройства можно копировать и настраивать их копии индивидуально. Вы можете создать один объект-принтер для печати в объемном режиме с вертикальным расположением листа, а другой аналогичный объект настроить на использование устройства подачи конвертов. Затем нужно только "перетащить" (drag) объект-данные на соответствующий объект-принтер, чтобы произвести печать в указанном режиме.

Работа с объектами

Самый простой способ создания новых объектов состоит в использовании папки Templates (шаблоны). Шаблоны подобны формам для кексов: они позволяют создавать новые экземпляры объектов описанного в них типа. В OS/2 имеется много предварительно определенных шаблонов, таких, как Data File, Folder, Printer и Program. Дл создания, например, нового программного объекта нужно "вытащить" (drag) шаблон Program из папки Templates и "опустить" (drop) его на "рабочий стол" или в другую папку. OS/2 обратится к вам за недостающей информацией, например о маршруте доступа к программе и каталоге, используемом по умолчанию. Если это прикладна программа DOS или Windows, система OS/2 будет искать ее в своей базе данных и изменит параметры DOS/Windows в соответствии с рекомендуемыми значениями.

Можно также создать свой собственный шаблон дл любого существующего объекта. Предположим, что у вас есть документ текстового процессора, представляющий собой бланк письма вашей компании. Его можно превратить в шаблон, открыв блокнот параметров и установив флажок Template на странице General setting (Общие параметры). Когда на основе шаблона создаются новые объекты, они будут иметь те же самые содержание и параметры, что и оригинал, в том числе ассоциированные связи. Эта функция ускоряет и облегчает процесс создания, скажем, нового почтового сообщения для сети Internet, электронной таблицы или ранее разработанного документа- конверта.

Техника drag-and-drop в OS/2 используется более широко и последовательно, чем в Windows. Ее можно применять почти повсеместно. "Перенесите" объект-данные на принтер для его распечатки или в объект-программу для запуска программы. Можно "перетащить" запись из телефонного справочника персональной информационной системы IBM Works на объект-данные для связывани телефонного номера с этим объектом, а затем "опустить" его на пиктограмму факса. Система управления факсом автоматически отправит файл по указанному номеру.

Для "перетаскивания" объекта расположите указатель мыши над объектом, нажмите и удерживайте нажатой (пользователи Windows, внимание!) правую кнопку мыши, затем "тащите" объект. По умолчанию при выполнении операции drag для всех объектов, кроме шаблонов, происходит перемещение, хотя в определенных случаях - например, при "перетаскивании" файла с одного накопителя на другой - система OS/2 выполняет копирование, а не перемещение файла. Можно вызвать исполнение конкретного действия с помощью специальных клавиш: нажатие <Ctrl> при "перетаскивании" объекта приводит к созданию его копии; нажатие <Shift> форсирует перемещение; нажатие <Ctrl-Shift> создает теневой объект (о тенях см. ниже). Используйте эти клавиши, если вы на самом деле хотите копировать, перемещать или создавать тень шаблона (поскольку обычное "перетаскивание" шаблона приводит только к получению новой копии объекта данного типа).

Технику drag-and-drop можно также использовать путем выбора опции Pickup в меню объекта. Прибегайте к помощи этой опции, если хотите "перетащить" несколько объектов, возможно, из разных папок. Достаточно только выбрать Pickup в меню каждого объекта, который хотите использовать, затем выбрать опцию Drop во всплывающем меню объекта-получателя. Опции подменю Drop позволяют вам определить, будут ли собранные объекты копироваться, перемещаться или отображаться как тени.

Тени

В WPS появилась мощная функция, называемая "создание тени" (shadowing). Тень - это специальный тип объекта, который не содержит сведений о себе, а вместо этого указывает на другой объект, тем самым потребляя меньше собственных ресурсов. Модификации, вносимые в исходный объект или в его теневое отражение, взаимны: изменение одного немедленно влечет за собой изменение и другого. Однако, в то время как можно удалить тень, не воздействуя на исходный объект, удаление оригинала приводит к исчезновению тени.

Тени - мощное средство для настройки рабочего места в Warp. Поскольку тени позволяют объекту появлятьс сразу в нескольких местах одновременно, можно иметь программу, файл данных или папку, доступные из разных мест, не потребляя много ресурсов. Несмотря на то что всегда имеется возможность создания копии объекта, тени облегчают обслуживание, так как при необходимости изменения приходится вносить только один раз. Применяйте теневые образы, чтобы облегчить доступ к часто используемым объектам. Например, можно создать тени каталога жесткого диска или прикладной программы на рабочем месте. Или используйте их для реорганизации своего "рабочего стола", с тем чтобы можно было работать из разных мест. Например, можно запускать текстовый процессор из одноименной папки, а также создать тень этого программного объекта в папке "Проекты".

Панель быстрого запуска

Панель быстрого запуска Launchpad, использующа многие элементы системы OS/2 Warp, представляет собой просто еще один класс объекта (говоря точнее, тип палитры, использующей тени). Любой объект можно "перетащить" на Launchpad, и после этого щелчок по его пиктограмме, расположенной здесь, приводит к открытию объекта. Использование Launchpad упрощает начальный этап работы с Warp и облегчает доступ к часто используемым прикладным программам и папкам. Если вам нравится Launchpad, заметьте, что можно создавать и настраивать вторичные панели подобного типа.

Другой способ удобного обращения с часто используемыми прикладными программами заключается в добавлении их к меню объекта Desktop (или другой папки). Подробные указания приведены во врезке "Добавление элементов в меню объектов".

Палитры

Многим нравится время от времени изменять внешний вид своего рабочего места. Для модификации шрифтового, цветового оформления объектов или их визуальной схемы в целом применяется еще один специальный тип объекта WPS - палитра.

Откройте любую палитру и воспользуйтесь техникой drag-and-drop для применения цветового, шрифтового оформления или всей схемы в целом к объектам WPS и активизируемым через WPS прикладным программам OS/2 дл изменения внешнего облика вашей системы.

Несмотря на визуальную природу WPS, многие чувствуют себя более комфортно, работая с интерфейсом командной строки. Интерфейс командной строки OS/2 выглядит подобно стандартному интерфейсу DOS, а его команды представляют собой расширения знакомых DOS-команд. По умолчанию используется командный процессор CMD.EXE, который размещен в каталоге OS/2. Он обеспечивает выполнение ряда общих внутренних команд, таких, как DIR и DEL, а также выполняет файлы с расширениями COM, EXE, CMD или BAT. Команды OS/2 могут исполняться либо в полноэкранном сеансе OS/2, либо в окне OS/2. Описани команд можно найти в справочнике OS/2 Command Reference в папке Information.

Вся эта мощь подкреплена ресурсами, однако ручна настройка всего, что расположено на "рабочем столе", может оказаться утомительным процессом. К счастью, OS/2 предоставляет средство для облегчения задачи - интерпретируемый язык программирования REXX, который подробнее мы опишем в следующей статье.

Благодаря логичности построения интерфейса WSP его освоение не вызывает большого труда. А разнообразие и гибкость функций интерфейса делают этот процесс еще легче.


Примеры дополнений к WPS

Как и в случае других интерфейсов пользовател для усовершенствования возможностей, упрощени использования и иной переделки в оболочке Workplace Shell можно применять изделия независимых изготовителей. Ниже рассмотрены некоторые из десятков изделий, которые можно приобрести.


Добавление элементов в меню объектов

В качестве одной из иллюстраций расширяемости интерфейса WPS можно настроить объектное меню любой папки, в том числе путем добавлени объектов-программ в список вариантов выбора в меню. Например, вот как вы можете добавить элемент к меню объекта Desktop для запуска командного окна OS/2.

Теперь щелкните правой кнопкой мыши по свободному месту на "рабочем столе", и в меню объекта Desktop появится дополнительный элемент: OS/2 Window. Когда вы выберете его, откроется окно приглашения дл ввода команды OS/2, так же как если бы вы выполнили двойной щелчок по объекту OS/2 Window.

Однако вы заметите, что запуск OS/2 Window из меню объекта приводит к выводу сообщения об ошибке. Когда используются всплывающие меню, объект Desktop передает имя объекта в качестве параметра. Это сбивает с толку некоторые программы, в том числе CMD.EXE. Сообщение об ошибке, выводимое на экран при начале сеанса работы с командным окном таким способом, в действительности не влияет на ход выполнения задания, но, конечно, раздражает. Вот как можно избавиться от него.