Руководство программиста в Photon (Раздаточные материалы)
Описание файла
Файл "Руководство программиста в Photon" внутри архива находится в папке "Раздаточные материалы". Документ из архива "Раздаточные материалы", который расположен в категории "". Всё это находится в предмете "программное обеспечение управляющих комплексов (поук)" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "поук" в общих файлах.
Онлайн просмотр документа "Руководство программиста в Photon"
Текст из документа "Руководство программиста в Photon"
400
Глава 1. Уроки: Урок 2. Редактирование ресурсов===============================================================================
Руководство программиста в Photon
(Photon Programmer's Guide)
Перевод выполнен Владимиром Зайцевым, г.Харьков
Редактирование текста выполнено Михаилом Поспеловым, г.Калуга
Содержание
Небольшое пояснение переводчика 10
Введение 11
Обзор архитектуры Photon'а 11
Построитель Photon'овских приложений – PhAB 12
Концепции виджетов 14
Парадигма (система понятий) программирования 20
Библиотеки Photon'а 22
Обзор построения приложений под PhAB 24
Написание приложений без PhAB 26
Глава 1. Уроки 27
Перед тем как Вам начать... 27
Урок 1 – Привет, мир 28
Создание приложения 28
Генерирование кода 29
Хотите больше информации? 30
Урок 2. Редактирование ресурсов 30
Добавление виджета "Кнопка" 31
Редактирование пиксельной карты 33
Редактирование многострочного текста 34
Редактирование списка текстовых параграфов 35
Создание шаблона 36
Желаете узнать побольше? 38
Урок 3. Создание меню и панелей меню 38
О присоединении ответных реакций 38
Об именах экземпляров 39
Создание панели меню 39
Создание модуля меню "File" 40
Создание модуля меню "Help" 41
Присоединение ответных реакций 41
Подготовка кода 43
Хотите узнать больше? 43
Урок 4. Создание диалогов 44
О диалогах 44
Ещё об именах экземпляров 44
Прикрепление модуля диалога 44
Добавление виджетов в диалог 45
Добавление ответной реакции к кнопке Done 46
Модификация сгенерированного кода функции 47
Компиляция и запуск на выполнение 47
Желаете узнать больше? 48
Урок 5. Создание окон 48
Создание окна 48
Прикрепление ответной реакции 49
Добавление виджетов 49
Генерирование и модификация кода 50
Компиляция и запуск 53
Хотите узнать больше? 53
Глава 2. Окружение PhAB 54
Меню 54
Панели инструментов 56
Панели управления 58
Палитра виджетов 58
Панель ресурсов 60
Панель ответных реакций 61
Панель дерева модулей 61
Панель связей модуля 62
Панель поиска 63
Подгонка Вашего окружения PhAB 63
Общие предпочтения ("General preferences") 64
Предпочтение цвета ("Color preferences") 64
Предпочтение по перетаскиванию (Dragging preferences) 65
Предпочтения сетки 65
Глава 3. Работа с приложениями 66
Создание приложения 66
Открытие приложения 67
Сохранение приложения 68
Именование и переименование приложения 68
Сохранение существующего приложения 69
Переписывание существующего приложения 69
Закрытие приложения 69
Задание стартовой информации приложения 69
Задание глобального заголовочного файла 70
Функция инициализации 70
Опции командной строки 71
Включение имён экземпляров 71
Окна запуска 72
Импортирование файлов 72
Импортирование модулей PhAB из других приложений 73
Импортирование графических образов 73
Глава 4. Работа с модулями 74
Типы модулей 74
Анатомия модуля 75
Выбор модуля 76
Как сохраняются модули 76
Изменение ресурсов модуля 76
Использование селектора модулей 76
Создание нового модуля 77
Просмотр модулей 77
Открытие модулей 78
Удаление модуля 78
Сворачивание модулей в иконки 78
Закрытие модуля 78
Отображение модулей в реальном времени 79
Нахождение потерянных модулей и иконок 80
Модули окон 80
Модули диалога 81
Модули меню 81
Модули картинок 87
Модули иконок 88
Глава 5. Создание виджетов в PhAB 89
Типы виджетов 89
Имена экземпляров 90
Создание виджета 91
Выбор виджетов 92
Выравнивание виджетов 94
Общепользовательский доступ (СИА) и управление фокусом 95
Упорядочивание виджетов 97
Перетаскивание виджетов 98
Установка координат x и y виджетов 99
Перемещение виджетов между контейнерами 99
Изменение размеров виджетов и модулей 99
Буфер обмена 100
Дублирование виджетов и контейнеров 101
Удаление виджетов 101
Импортирование графических файлов 102
Изменение класса виджета 102
Шаблоны 102
Глава 6. Редактирование ресурсов и ответных реакций в PhAB 105
Редактирование ресурсов виджета 105
Попиксельный редактор 106
Редактор цвета 109
Редактор флагов/опций 110
Редактор шрифтов 111
Редактор списка 112
Редактор чисел 113
Текстовые редакторы 113
Редактор функций 115
Ответные реакции 115
Модульные ответные реакции 118
Ответные реакции горячих клавиш 120
Горячие клавиши – основы 120
Задание метки горячей клавиши 121
Задание ответной реакции 121
Обработка горячих клавиш 122
Отключение горячих клавиш 123
Обработчики событий – необработанные и отфильтрованные ответные реакции 123
Глава 7. Управление геометрией 125
Контейнер виджетов 125
Согласование геометрии 125
Абсолютное позиционирование 129
Выравнивание виджетов с использованием групп 129
Управление привязкой с использованием анкеров – средств привязки 132
Установка ограничений по размерам или позиционированию без анкеров 136
Глава 8. Генерирование, компилирование и запуск программного кода на исполнение 137
Использование диалога Build+Run 137
Генерирование программного кода приложения 138
Как организовать файлы приложения 142
Редактирование исходного кода 143
Компилирование и линковка 144
Запуск приложения на исполнение 145
Отладка 146
Включение в Ваше приложение не-PhAB файлов 147
Создание результирующей DLL как приложения PhAB 147
Глава 9. Работа с программным кодом 150
Переменные и декларации 150
Глобальный хеадер-файл 152
Имена функций и имена файлов 153
Функция инициализации 154
Установочные функции модуля 156
Функции ответных реакций кодового типа 157
Типы данных геометрии 158
Таймеры 158
Меню инициализации 159
Задержка и принудительное обновление изображения на экране 164
Глава 10. Манипулирование ресурсами в коде приложения 166
Список аргументов 166
Установка ресурсов 167
Получение ресурсов 171
Глава 11. Управление виджетами в исходном коде приложения 177
Создание виджетов 177
Задание порядка виджетов 178
Ответные реакции 179
Обработчики событий 182
Стили виджетов 184
Глава 12. Поверхности управления 187
Что такое поверхности управления? 187
Ограничения 187
Привязка действий к поверхностям управления 188
Ссылка на поверхности управления 188
API поверхностей управления 189
Создание и уничтожение поверхностей управления 189
Нахождения идентификаторов для поверхностей управления 189
Вычисление геометрии для поверхностей управления 189
Прорисовка поверхностей управления 190
Активация поверхностей управления 190
Включение и отключение поверхностей управления 190
Нахождение поверхностей управления 190
Скрытие и демонстрирование поверхностей управления 190
Установление порядка поверхностей управления 191
Размещение пользовательских данных вместе с поверхностями управления 191
Пример 191
Глава 13. Доступ к модулям PhAB из программного кода 193
Создание внутренних связей 193
Использование внутренних связей в Вашем программном коде 194
Использование базы данных виджетов 196
Создание базы данных 196
Создание динамической базы данных 197
Функции базы данных виджетов 197
Глава 14. Поддержка международных языков 200
Соображения о проектировании приложения 200
Размер виджетов, основанных на тексте 200
Выравнивание 201
Высота шрифта 202
Жёстко закодированные строки 202
Использование символа "@" в именах экземпляров 203
Двуязычные приложения 203
Общие строки 204
Генерация языковой базы данных 204
Базы данных сообщений 204
Редактор языка 205
Запуск Вашего приложения на исполнение 208
Распространение Вашего приложения 209
Глава 15. Контекстно-чувствительная помощь 210
Создание текста помощи 210
Тэги 210
Атрибуты 210
Ссылки на темы помощи 212
Связывание помощи с виджетами 213
Получение доступа к помощи из Вашего программного кода 214
Глава 16. Межпроцессные связи 215
Коннекции 216
Пример 218
Отсылка QNX-сообщений 219
Приём QNX-сообщений 220
Пример – регистрация сообщений об ошибках 223
Импульсы Photon'а 224
Пример – очередь сообщений 226
Обработка сигналов 228
Другие механизмы ввода/вывода 229
Глава 17. Параллельные операции 230
Обзор 230
Фоновое исполнение 230
Рабочие процедуры 231
Потоки 234
Запирание библиотеки Photon'а 235
Несколько потоков, обрабатывающих события 236
Потоки реального времени 236
Не-Photon'овские и Photon'овские потоки 237
Модальные операции и потоки 237
Завершение многопоточной программы 238
Потоки и рабочие процедуры 239
Глава 18. Необработанное рисование и мультипликация 240
Виджет PtRaw 240
Функция необработанного рисования 241
Определение холста необработанного виджета 242
Преобразование координат 242
Отсечение 242
Использование повреждённых черепиц (tiles) 243
Использование модели для более сложного рисования 244
Примеры простых функций прорисовки PtRaw 244
Цвет 245
Атрибуты рисования 246
Дуги, эллипсы, многоугольники и прямоугольники 247
Прямоугольники 248
Многоугольники 250
Дуги, круги, хорды и сектора 251
Спэны – сложные кривые 252
Линии, пиксели и массивы пикселей 252
Текст 253
Побитовые образы (bitmaps) 254
Образы (images) 255
Образы на основе палитры 256
Образы в непосредственных цветах 256
Образы в градиентных цветах 256
Создание образов 256
Кэширование образов 257
Прозрачность в образах 257
Отображение образов 258
Управление образами 258
Освобождение образов 258
Мультипликация 259
Создание серии кадров 259
Циклическая прокрутка кадров 260
Исключение мерцания в мультипликации 261
Режим рисования с прямым доступом 262
Внеэкранная видеопамять 264
Поддержка альфа-сопряжения 266
Поддержка хроматического ключа 267
Операции расширенного растра 267
Видеорежимы 268
Градиенты 269
Видеоверлей 269
Слои 272
Поверхности 272
Окна просмотра 273
API слоев 273
Пример 274
Глава 19. Шрифты 277
Метрики символа 277
Имена шрифтов 278
Запрос доступных шрифтов 278
Генерирование имён шрифтов 280
Написание текста в прямоугольной области 282
Исправление повреждений в случае пропорционального шрифта текста 285
Глава 20. Печать 288
Контекст печати 288
Создание контекста печати 289
Модифицирование контекста печати 289
Запуск процесса печати 289
Печать требуемых виджетов 291
Печать новой страницы 291
Печать скроллирующихся виджетов 292
Приостановка и возобновление работы печати 293
Завершение работы печати 294
Освобождение контекста печати 294