SoftWeyr Graphic Interface Library
Version 2.8 beta
CopyRight (С) by SoftWeyr, 1990-1994
Чтобы увидеть сей текст во всей красе, запустите README.EXE
Концепция
Первое, о чем хотим предупредить читателя: SWGI это не очередная графи-
ческая Turbo Vision.
Несмотря на схожесть некоторых концепций и синонимичность названий объ-
ектов, SWGI это средство создания графических DOS-программ, построенное на
совершенно иных принципах.
Каковы основные отличия SWGI от всех графических вариаций на тему Turbo
Vision?
1. Концепция рабочего поля - большая часть экрана (за исключением узкой
полоски главного меню отводится для Вашей графики. Необходимость в ее пере-
рисовки возникает как правило только тогда, когда Вы сами этого хотите.
2. Принципиальная двуцветность всех интерфейсных объектов дает вам воз-
можность переназначать все цвета кроме черного и белого.
3. Работа с графикой только через BGI дает вам возможность пользоваться
любым графическим режимом, для которого у вас есть драйвер.
4. Оригинальная система обработки событий позволяет гарантировать, что
несколько событий от разных устройств ввода будут обработаны в той последо-
вательности, в которой они поступили.
5. Встроенные средства поддержки дигитайзера.
6. Встроенный эмулятор мыши с помощью клавиатуры позволяет работать во-
обще без мыши или более точно позиционировать курсор с помощью клавиш.
6. Объекты - только там, где они удобнее. Пользуясь генератором прило-
жений AIVAS вы можете написать достаточно сложную программу, вообще не
зная, что такое объекто-ориентированное программирование, но если вы боль-
шой любитель переопределять виртуальные методы - перед вами полный простор.
7. Выделенные,подчеркнутые,широкие и др. растровые шрифты 8x14
при сохранении возможности работать с векторными шрифтами BGI.
Средства вывода текста SWGI понимают все управляющие коды редактора MIM.
8. Независимость горячих клавиш в меню и т.д. от регистра клавиатуры
Теперь немного подробнее о первых двух пунктах, так как они самые спор-
ные. Мы считаем, что человек, пишущий программу с графикой под DOS, не осо-
бенно заинтересован в большом количестве основных графических окон, а то бы
он давно ушел под Windows или на худой конец GEM. К тому же, если пользова-
тель активно работает с палитрой, открытие даже двух окон приводит к проб-
лемам, если они должны иметь разную палитру.
Поэтому мы остановились на таком наборе видимых элементов:
Главное рабочее поле - весь экран кроме главного меню.
Главное разворачивающееся меню.
Диалоговые окна, которые всплывают поверх рабочего поля и бесследно ис-
чезают после выполнения своих функций. (в том смысле, что не требую
перерисовки рабочего поля)
Плавающие окна, которые непрерывно (пока не надоест) плавают поверх ра-
бочего поля частично его закрывая, и что-то отображают.
Причина принципиальной черно-белости не в том, что мы очень любим CGA и
Hercules, хотя как раз благодаря ей мы их поддерживаем, а в том, что мы
очень любим VGA и SVGA, на которых доступно 262144 цвета и хотим использо-
вать возможно большее число из них одновременно. Поэтому зарезервированы
только два цвета - черный (0) и белый (GetMaxColor). Использование дополни-
тельных цветов в интерфейсе привело бы к необходимости запретить и их пере-
назначение, чего очень не хочется, когда цветов всего 16.
Что мы поддерживаем
Turbo Pascal 6.0 и выше, в том числе и BP7.0 в Protected
Mode
Все графические адаптеры, для которых существуют BGI
драйверы, при количестве цветов от 2 до 256
Все мыши, совместимые с Mcrosoft или Mouse Systems
Условия распространения
Пакет SWGI, как и большинство программных продуктов группы SoftWeyr яв-
ляется Freeware, то есть его можно свободно использовать в любых коммерчес-
ких и некоммерческих разработках. Существуют следующие ограничения:
1. Распространяя программу, написанную с использованием SWGI вы обязаны
указать в документации, что вы его использовали.
2. Распространяя сам пакет вы не имеете права:
а. Распространять его в виде откомпилированых TPU и TPP модулей без
исходных текстов, в том числе и ассемблерных.
б. Брать плату за распространение, превышающую стоимость копирова-
ния и пересылки
3. Распространяя модифицированный пакет вы обязаны отметить коммента-
риями все измененные места.
Состав пакета
Getting started
1. README.SW - то, что вы сейчас читаете
2. README.EXE - то, с помощью чего это следует делать
3. MAKEFILE - файл проекта для компиляции библиотеки
Исходные тексты модулей
4. VGILOW.PAS - работа с событиями и BitMap - графикой
5. VGIKEYS.PAS - константы-коды клавиш
6. VGITEXT.PAS - работа с растровыми шрифтами
7. VGIBASE.PAS - базовые графические объекты
8. VGIMENU.PAS - Pull-Down меню
9. VGIDLG.PAS - Диалоговые окна
10. VGIAPP.PAS - Средства верхнего уровня для приложений
11. VGICHOIС.PAS - Дополнительные эл-ты для диалогов
12. TEXTDLG.PAS - - " -
13. VGIEDIT.PAS - маленький текстовый редактор
14. VGIPCX.PAS - Работа с PCX-файлами
15. FILEDLG.PAS - Диалоги для выбора имен файлов
16. CURSORS.PAS - библиотека мышиных курсоров хороших и разных (разных
больше, чем хороших)
17. MOUSE.ASM - Мышь
18. SOUND.ASM - Звук
Шрифты
19. FONT8X5.OBJ
20. FONT8X8.OBJ
21. FONT8X14.OBJ
Если у Вас нет ассемблера
22. MOUSE.OBJ - Мышь для TP6.0 и TP5.5
23. MOUSE7.OBJ - Мышь для версии 7
24. SOUND.OBJ - Звук
Если у Вас Turbo Pascal 5.5
25. OBJECTS.5_5 - Переименовывается в OBJECTS.TPU и используеся в Pascal
5.5. По интерфейсам совместим с OBJECTS.TPU от 6.0
Генератор приложение AIVAS
26. AIVAS.PAS - Исходный текст
27. AIVAS.RES - файл ресурсов
примеры, они же утилиты
28. README.PAS - Исходный текст README.EXE
29. PCX2BITS.PAS - Конвертер PCX в картинки для пиктограмм SWGI
30. AC.PAS - Конвертер шрифтов Lexicon, Слово и дело в МИМ и
обратно
31. EDCURSOR.PAS - редактор графических курсоров мыши
Документация
32. APP.SW - Как создавать программы, не думая об их объектной сущности
33. CONTROL.SW - Как создавать свои управляющие объекты для диалогов.
34. LOWLEVEL.SW - Как работать на низком уровне
35. EVENTS.SW - Пространство событий и что с ним следует делать
36. MODULES.SW - расположение всего этого барахла по модулям и совмести-
мость с модулями других библиотек
37. AIVAS.SW - описание генератора приложений AIVAS
38. UNILS.SW - описание утилит
39. QREF.SW - Краткий справочник.
Если вы просматриваете данный файл с помощью README.EXE, то через меню
Documentation вы можете добраться до всех вышеперечисленных файлов докумен-
тации.
Если вы хотите документацию распечатать, а редактора Микромир у вас нет, то
во-первых, откомпилируйте AC.PAS;
во-вторых,
а) если у вас EPSON - совместимый принтер, то дайте команду
AC filename.sw /m prn /e
б) принтер не EPSON - совместимый или не русифицированный, но есть Лексикон
или Слово и Дело, который на нем замечательно печатает, то
AC filename.sw /m filename.lex /l
или
AC filename.sw /m filename.txt /w
Если же нет ни того ни другого, то можете сделать
AC filename.sw /m filename.txt /a
и вы, распрощавшись, правда с выделениями жирностью, курсивом и т.д., полу-
чите вполне печатаемый текст. Впрочем, еще не все потеряно. есть еще ключ
/u, который даст хотя бы жирность и подчеркивание практически на любом
принтере.
Как связаться с автором
E-Mail: vitus@agropc.msk.su
FIDOnet:2:5020/358.5
Phone:7(095)231-07-77 (office hours)
|