1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" type="topic" id="gdk" xml:lang="ru">
<info>
<link type="guide" xref="index" group="gdk"/>
<desc>Основа обработки событий и действий с окнами</desc>
<revision pkgversion="3.0" date="2011-04-05" status="candidate"/>
</info>
<title>GDK</title>
<p>GDK — это низкоуровневая библиотека, используемая GTK+ для работы с графикой и устройствами ввода. Хотя непосредственное использование библиотеки GDK в коде довольно редко, она содержит весь функционал необходимый для прорисовки объектов и текста на экране, а также взаимодействия с пользователем с помощью различных устройств ввода.</p>
<p>GDK позволяет использовать события клавиатуры, мыши и других устройств ввода, вместо использования высокоуровневых сигналов GTK+. Также GDK предоставляет доступ к низкоуровневым процедурам перетаскивания и работы с данными системного буфера обмена. При реализации собственных элементов управления, возможно, понадобится этот функционал для реализации корректного взаимодействия с элементами интерфейса.</p>
<p>GDK содержит и другой функционал, необходимый для реализации полноценного графического пакета, например GTK+. Так как GDK выступает в роли уровня абстракции платформы, позволяя GTK+ работать в различных средах, он обеспечивает API для всего системного функционала, необходимого GTK+, например получение информации о множественных дисплеях, разрешении экрана и глубине цвета, цветовых картах и курсорах.</p>
<p>Необходимость в использовании GDK возникает, если есть потребность в низкоуровневом доступе к слою, находящемуся под оконной системой, включая низкоуровневый доступ к событиям, окнам и буферу обмена. Использование GDK для таких задач гарантирует переносимость кода и интеграцию с остальной частью кода, использующего GTK+. В основном, не следует использовать примитивные процедуры прорисовки из GDK, вместо этого следует использовать расширенный функционал Cairo.</p>
<list style="compact">
<item><p><link href="http://library.gnome.org/devel/gdk/stable/">Справочное руководство по GDK</link></p></item>
</list>
</page>
|