<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" type="topic" id="gdk" xml:lang="ja">
<info>
  <link type="guide" xref="index" group="gdk"/>
  <desc>Underlying windowing and event handling</desc>
  <revision pkgversion="3.0" date="2011-04-05" status="candidate"/>
</info>

<title>GDK</title>

<p>GDK is the low-level library used by GTK+ to interact with the
system for graphics and input devices.  Although you will rarely use
GDK directly in application code, it contains all the necessary
functionality to draw objects and text to the screen and to interact
with the user with various input devices.</p>

<p>GDK は GTK+ で使用される高レベルのシグナルによる接続ではなく、より低レベルのキーボードやマウスおよびその他の入力デバイスからのシグナルにアクセスすることを可能にします。GDK はドラッグアンドドロップやシステムのクリップボードにアクセスするための低レベルなルーチンも提供します。カスタムコントロールを実装するときは、これらのシグナルを通じたユーザとの適切なやりとりを実装するために、これらの特色の利用が必要となるでしょう。</p>

<p>GDK は GTK+ のような完全なグラフィック・ツールキット実装するのに必要となる、その他の機能を提供します。GDK がプラットフォームの抽象化を提供するようになって以来、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 Reference Manual</link></p></item>
</list>
</page>
