QT 4: программирование GUI на С++
Шрифт:
Настройка Qtopia Core
При установке Qtopia Core можно указать функции, которые мы хотим устранить, чтобы снизить расход памяти. В состав Qtopia Core входит сотня конфигурируемых функций, каждой из которых соответствует какой-то препроцессорный символ. Например, QT_NO_FILEDIALOG исключает класс QFileDialog из библиотеки QtGui, a QT_NO_I18N удаляет всю поддержку интернационализации. Эти функции перечислены в файле src/corelib/qfeatures.txt.
Qtopia Core содержит пять примеров конфигурации (minimum, small, medium, large и dist), которые
Для создания пользовательских конфигураций можно вручную создать файл qconfig—xxx.h и использовать его, как будто он определяет стандартную конфигурацию. Можно поступить по-другому — использовать графическую утилиту qconfig, расположенную в подкаталоге Qt tools.
Qtopia Core предоставляет следующие классы для интерфейса с входными и выходными устройствами и для настройки пользовательского интерфейса оконной системы:
• QScreen — драйверы экрана,
• QScreenDriverPlugin — подключаемые модули драйверов экрана,
• QWSMouseHandler — драйверы мышки,
• QMouseDriverPlugin — подключаемые модули драйверов мышки,
• QWSKeyboardHandler — драйверы клавиатуры,
• QKbdDriverPlugin — подключаемые модули драйверов клавиатуры,
• QWSInputMethod — методы ввода,
• QDecoration — стили оформления окон,
• QDecorationPlugin — подключаемые модули стилей оформления окон.
Для получения списка заранее определенных драйверов, методов ввода и стилей оформления экрана запустите скрипт configure с опцией —help.
Драйвер экрана можно задать с помощью опции командной строки —display при запуске сервера Qtopia Core, как это было показано в предыдущем разделе, или путем установки переменной среды QWS_DISPLAY. Драйвер мышки и связанное с ним устройство можно задавать, используя переменную среды QWS_MOUSE_PROTO, значение которой задается в виде тип:устройство, где тип — один из поддерживаемых драйверов, а устройство — путь к устройству (например, QWS_MOUSE_PROTO=IntelliMouse:/dev/mouse). Клавиатуры задаются аналогично при помощи переменной среды QWS_KEYBOARD. Методы ввода и оформления окон устанавливаются программно в сервере при помощи функций QWSServer::setCurrentInputMethod и QApplication::qwsSetDecoration.
Стили оформления окон можно задавать отдельно от стиля виджетов, который наследует класс QStyle. Например, вполне допускается установить Windows в качестве стиля оформления окон и Plastique в качестве стиля виджетов. При желании для каждого окна можно задавать свой стиль оформления.
Класс QWSServer содержит различные функции по настройке оконной системы. Приложения, функционирующие как сервер Qtopia Core, могут получать доступ к уникальному экземпляру QWSServer через глобальную переменную qwsServer, которую инициализирует конструктор QApplication.
Qtopia Core поддерживает следующие форматы шрифтов: TrueType (TTF), PostScript Type 1, Bitmap Distribution Format (BDF)
Поскольку QPF является растровым форматом, он быстрее и компактнее, чем такие векторные форматы, как TTF и PostScript Туре 1, если требуется использовать только один или два различных размера. Утилита makeqpf позволяет воспринимать файлы TTF или PostScript Туре 1 и сохранять результат в формате QPF. Можно поступить по-другому — запустить наши приложения с опцией командной строки —savefonts.
На момент написания книги компания «Trolltech» разрабатывает дополнительный уровень, расположенный над Qtopia Core и позволяющий еще быстрее и удобнее разрабатывать приложения для встроенных систем. Можно надеяться, что следующее издание данной книги будет содержать больше информации по этому вопросу.
Приложение А. Установка Qt
В данном приложении рассматривается порядок установки Qt в вашу систему с компакт-диска, который прилагается к этой книге. Компакт-диск содержит версию Qt 4.1.1 для Windows, Mac OS X и X11 (для Linux и большинства версий Unix). Все они включают SQLite — общедоступную, не нуждающуюся в сервере базу данных и драйвер SQLite. Для вашего удобства на компакт-диске представлены различные версии Qt. Для серьезных разработок программного обеспечения лучше всего загрузить из Интернета последнюю версию Qt по адресуили приобрести коммерческую версию.
Компания «Trolltech» также обеспечивает Qtopia Core для построения приложений на базе системы Linux для таких устройств, как карманные компьютеры и мобильные телефоны. Если вы интересуетесь созданием встроенных приложений, вы можете скачать Qtopia Core с соответствующей веб-страницы сайта компании «Trolltech».
Приложения представленных в книге примеров содержатся на компакт-диске в каталоге examples. Кроме того, Qt предоставляет много небольших приложений—примеров, которые располагаются в подкаталоге examples.
Замечание о лицензировании
Qt выпускается в двух формах: с открытым исходным кодом и коммерческая. Версия с открытым исходным кодом распространяется бесплатно; за коммерческую версию приходится платить.
Представленное на компакт-диске программное обеспечение пригодно для создания приложений для себя или для образовательных целей.
Если вы собираетесь распространять созданные вами приложения с использованием версии Qt с открытым исходным кодом, вы должны соблюсти определенные условия, которые отражены в лицензиях используемого вами программного обеспечения для создания своих программ. Для версий с открытым исходным кодом такие условия включают лицензию GNU GPL (General Public License — общедоступная лицензия). Простые лицензии, подобные GPL, наделяют пользователей определенными правами, включая просмотр и модификацию исходного кода, а также распространение приложений (на тех же условиях). Если вы собираетесь распространять ваши приложения без исходного кода (и считаете ваш программный код своей собственностью) или хотите применять в отношении ваших приложений свою собственную коммерческую лицензию, вы должны приобретать коммерческие версии программного обеспечения, используемого для создания ваших программ. Коммерческие версии программного обеспечения позволяют вам продавать и распространять созданные вами приложения на ваших условиях.
Компакт-диск содержит GPL—версии Qt для Windows, Mac OS X и X11. Полные, юридически верные тексты лицензий включены в пакеты программ компакт-диска; здесь же имеется информация о том, как получить коммерческие версии.
Установка Qt/Windows
Когда вы вставляете компакт-диск в машину с системой Windows, автоматически запускается программа установки. Если этого не происходит, с помощью Проводника попадите в корневой каталог компакт-диска и дважды щелкните по install.exe. (Эта программа в Проводнике может выглядеть как install, что зависит от конкретной настройки вашей системы.)