UNIX, X Window, Motif. Основы программирования [ч.1 ]
Содержит описание основных методов и приемов программирования в системе X-Window и пакетах, базирующихся на ней. При под
237
97
2MB
Russian
Pages 252
Year 1995
Report DMCA / Copyright
DOWNLOAD DJVU FILE
Table of contents :
Аннотация......Page 7
Введение......Page 9
1.1. История создания и развития системы UNIX......Page 12
1.2. Основные понятия системы UNIX......Page 13
1.3. Начальная загрузка UNIX. Вход пользователя в систему......Page 14
1.4. Файловая система......Page 15
1.4.1. Соединение многих файловых систем в одну ("монтирование")......Page 17
1.4.2. Работа с каталогами......Page 18
1.4.3. Создание и уничтожение файлов. Получение информации о файлах......Page 20
1.4.4. Ввод-вывод данных......Page 21
1.5. Процессы......Page 24
1.6. Сигналы......Page 26
1.7.1. Разделяемые файлы......Page 28
1.7.2. Каналы межпроцессного обмена......Page 29
1.7.3.1. Очереди сообщений......Page 31
1.7.3.2. Семафоры......Page 36
1.7.3.3. Разделяемая память......Page 37
1.8. Распределение памяти......Page 42
1.9.1. Получение подсказки. Программа man......Page 44
1.9.3. Компилятор языка Си......Page 46
1.9.4. Создание библиотек файлов. Программа аг......Page 50
1.9.5. Программа make......Page 51
1.9.6. Система контроля исходного кода......Page 57
1.10. Проблемы переносимости программного обеспечения......Page 65
2.1. Основы......Page 68
2.1.1. Общее устройство X Window......Page 69
2.1.2. X окно......Page 70
2.1.3. Управление окнами......Page 71
2.1.5. "Свойства" и атомы......Page 72
2.1.6. Первый пример......Page 73
2.1.7. События......Page 79
2.1.8. Атрибуты окна......Page 81
2.2.1. Графический контекст......Page 86
2.2.2. Характеристики графического контекста......Page 88
2.2.3. Вывод текста......Page 93
2.2.3.2. Шрифты......Page 94
2.2.3.3. Загрузка шрифтов......Page 95
2.2.4. Рисование графических примитивов......Page 97
2.2.5.1. Работа с областями простой формы......Page 98
2.2.5.2. Работа с областями сложной формы......Page 104
2.2.6. Очистка и копирование окон или их частей......Page 107
2.2.7. Работа со структурой Xlmage......Page 108
2.2.8. Работа с цветом......Page 109
2.2.8.1. Структура XVisuallnfo......Page 110
2.2.8.2. Создание и использование цветовых палитр......Page 112
2.2.8.3. Именование цветов......Page 113
2.2.8.4. Выделение цветов программами - клиентами......Page 114
2.3.1. Клавиатура......Page 118
2.3.1.2. Физические и логические коды клавиш......Page 119
2.3.1.4. Пример программы, работающей с клавиатурой......Page 121
2.3.1.5. Задание параметров клавиатуры......Page 122
2.3.2.1. События, порождаемые мышью......Page 124
2.3.2.2. Работа с курсором мыши......Page 128
2.3.2.3. Задание параметров мыши......Page 129
2.3.3. "Захват" клавиатуры и/или мыши......Page 130
2.4.1. Формат файла ресурсов......Page 131
2.4.2. Доступ к ресурсам программ......Page 132
2.5.1. Механизм "свойств"......Page 134
2.5.2. Общение с менеджером окон......Page 135
3.1.1. Что такое объекты Xt......Page 139
3.1.2. Инициализация программы. Контекст программы......Page 140
3.1.3. Первый пример......Page 142
3.2.1. Классы объектов......Page 144
3.2.3. Управление объектами......Page 147
3.2.4. Модификация и чтение ресурсов объекта......Page 150
3.2.5.1. Процедуры обратного вызова (callback)......Page 152
3.2.5.2. Использование action-процедур......Page 154
3.2.5.3. Обработчики событий......Page 162
3.3.1. Ввод данных из файла или из внешнего устройства......Page 165
3.3.2. Таймер......Page 167
3.3.4. Управление очередью событий......Page 169
3.3.5. Акселераторы......Page 172
3.3.6. Процедуры, предназначенные для работы с окнами объектов......Page 173
3.3.7. Программы, имеющие много объектов (окон) верхнего уровня......Page 176
3.4.1. Формат файла описания ресурсов......Page 178
3.4.2. Создание базы данных ресурсов программы......Page 179
3.4.3. Получение ресурсов программы......Page 183
3.4.4. Процедуры, преобразующие значения ресурсов от одного типа к другому ("конвертеры")......Page 187
4.2. Основные классы объектов в Motif......Page 193
4.2.1.1. Класс XmArrowButton......Page 195
4.2.1.2. Класс XmLabel......Page 197
4.2.1.3. Класс XmPushButton......Page 198
4.2.1.4. Класс XmDrawnButton......Page 200
4.2.1.6. Класс XmCascadeButton......Page 201
4.2.1.7. Класс XmList......Page 202
4.2.1.8. Класс XmScrollBar......Page 204
4.2.1.10. Класс XmText......Page 205
4.2.2.1. Класс XmBulletinBoard......Page 207
4.2.2.2. Класс XmForm......Page 208
4.2.2.3. Класс XmSelectionBox......Page 210
4.2.2.4. Класс XmCommand......Page 211
4.2.2.5. Класс XmFileSelectionBox......Page 212
4.2.2.6. Класс XmMessageBox......Page 214
4.2.2.8. Класс XmFrame......Page 215
4.2.2.10. Класс XmRowColumn......Page 216
4.2.2.11. Класс XmScale......Page 220
4.2.3. Класс XmMenuShell......Page 221
4.2.5. Класс XmGadget и его подклассы......Page 222
4.3. Создание и использование меню......Page 224
4.4. Диалоги......Page 231
4.5.1. Motif и шрифты......Page 233
4.5.2. "Составные" (compound) строки......Page 234
4.5.2.1. "Составные" строки, использующие один шрифт......Page 235
4.5.2.2. "Составные" строки, использующие несколько шрифтов......Page 236
4.5.2.3. Рисование "составной" строки......Page 237
4.5.2.5. Преобразование "составной" строки в обычную текстовую строку......Page 238
4.6. Процедуры для работы с изображениями......Page 240
4.7. Управление фокусом ввода......Page 242
4.8. Преобразование типов в Motif......Page 244
4.9. Заключительный пример......Page 245
Литература......Page 252