2017-05-22 6 views
0

私はgtk用のdiscordianカレンダーウィジェットを作ろうとしています。 Discordianカレンダーは70年代以降、Linuxではデフォルトであった。今はほとんどのディストリビューションに含まれています。ターミナルに「ddate」と入力して確認することができます。 :)discordian gtkカレンダーウィジェットを作る - gtkcalendar.cを自分のディレクトリに展開するためにヘッダーを変更するには?

だから、既存のカレンダーウィジェットコードを変更するだけで、gtkウィジェットを作りたいと思っています。私はそれを実験するために、別々の作業ディレクトリに置いておきたいと思います。

私は定期的にgtkcalendar.cとgtkcalendar.hを使用した例を見つけたし、ちょうどそのようにそれは、非常に簡単です:

#include <gtk/gtk.h> 

私は同じ作業ディレクトリにgtkdiscocalendar.cをしたいのですが私のexample.cのようにそれを含める:

#include "gtkdiscocalendar.c" 
#include "gtkdiscocalendar.h" 

gtk/gtkからこのファイルを正しく抽出するには?彼らのヘッダは、次のようになります。

(gtkcalendar.c)

#include "config.h" 

#ifdef HAVE_SYS_TIME_H 
#include <sys/time.h> 
#endif 
#ifdef HAVE__NL_TIME_FIRST_WEEKDAY 
#include <langinfo.h> 
#endif 
#include <string.h> 
#include <stdlib.h> 
#include <time.h> 

#include <glib.h> 

#ifdef G_OS_WIN32 
#include <windows.h> 
#endif 

#include "gtkcalendar.h" 
#include "gtkdnd.h" 
#include "gtkdragdest.h" 
#include "gtkintl.h" 
#include "gtkmain.h" 
#include "gtkmarshalers.h" 
#include "gtktooltip.h" 
#include "gtkprivate.h" 
#include "gtkrendericonprivate.h" 
#include "gtksnapshot.h" 
#include "gtkstylecontextprivate.h" 

(gtkcalendar.h)

#include <gtk/gtkwidget.h> 

も、右の私のアプローチですか?あるいは、gtk全体を自分のクローンにして、それを修正して自分のPCにインストールするよりも、これは私のシステムを台無しにしたくないのでgtkでの初めてのことです。また、私は訓練されたプログラマーではないので、それらはすべて基本的な質問です。私は答えに非常に感謝したいと思います:

+0

**あなたの**具体的な**問題は何ですか?しかし、「ddate」についてのヒントをありがとう。 – Olaf

+0

@Olaf、gtkcalendar.cを〜/ myprograms/dcalendar /にコピーして、修正したウィジェットを実際に使っているプログラムで動作させたいと思います。 – Franklin

+0

私はあなたの問題が何であるか尋ねました、あなたがしたいことではありません! – Olaf

答えて

0

gtkcalendar.cは、フレームワークと一緒に提供される/ウィジェットであり、GtkWidget/GObjectや派生物をサブクラス化するウィジェットとは目的が異なります。

CでのGObjectまたはGtkWidgetsのサブクラス化は、非常に冗長であり、新規ではエラーが発生しやすくなります。 Vala、Python、Javascriptなどの他の言語バインディングを試してみてください。

カスタムウィジェットで:GNOME開発者に多くの情報があり

website

関連する問題