「GNOMEフレームワーク」の版間の差分

削除された内容 追加された内容
cairo について
745 行
最近のGTKでは、図形描画ライブラリにcairoというフリーの画像描画ライブラリを採用している。特に追加インストールすることなく、cairoの図形描画命令が使用できる。
cairo自体は、GTKとは別のアプリなので、詳細はcairoの入門書を参照のこと。
 
 
コード例を示すと下記のようになります。
 
;コード例 (CentOS7CentOS-7-x86_64-LiveGNOME-1908.iso​ で確認ずみ)
<syntaxhighlight lang="c">
#include <gtk/gtk.h>
806 ⟶ 805行目:
</syntaxhighlight>
 
2019年の現在、GTK3で cairo を使うと、いくつかの組み込み関数を別の関数(たとえば gdk_window_begin_draw_frame() など)に置き換えるようにコンパイラを介して警告されますが、しかしGTK開発元のGnomeコミュニティが、ロクに それらの組み込み関数のマニュアルを整備してない状況なので(形式的にリファレンスがあるが、実際のコード例がなく、まったく新関数の使い方が調べられない状況であるので)、警告は無視して、従来通りにマニュアルの比較的に充実している cairo を使いましょう。マニュアルも整備しないで満足してサボっているナードな技術マニア連中のGnomeコミュニティのほうが悪いのです。
 
もし将来的にcairoが使えなくなったら、フォークするか、でなければGTKでなくQtなどの別のデスクトップ環境に移行しましょう。どうせ組込系ではGTKよりもQtのほうが主流です。
 
ちなみに、上記のコード例の場合、このように警告されます。
<pre>
‘gdk_cairo_create’ is deprecated (declared at /usr/include/gtk-3.0/gdk/gdkcairo.h:35): Use 'gdk_window_begin_draw_frame() and gdk_drawing_context_get_cairo_context()' instead [-Wdeprecated-declarations]
handoru = gdk_cairo_create(gtk_widget_get_window(uindou));
</pre>
 
;コードの解説
GTK3 では、まず main 関数側で、図形の描画をできるように設定を宣言する必要があります。