RE: Large GTK Application design tips



Hi Paul,
 
I led a very large government project using GTK+ and C++ with great success.  I don't know of any docs on the subject, but here are the top three tips that I had to learn the hard way:
  1. GTK+ is not thread safe, and the gdk_threads_enter/gdk_threads_leave calls don't always work.  When worker threads need to do something to the GUI, just use g_idle_add().
  2. Glade together with libglade is a must.  With your GUI layout defined in XML, its easy to make mass GUI changes via a script.  It also simplifies testing, since you don't need to re-compile when trying out different layouts.
  3. We created a C++ wrapper class hierarchy for each significant widget we use.  The wrappers allow us to easily change the look and/or behavior of all of those widgets in our system (ex: all non-editable GtkEntries have a grey background, or custom search box below all GtkTreeViews). The wrappers are also useful when you discover GTK+ quirks that you need to work around (All GUI toolkits have them). 
-Anthony Vallone
 

From: gtk-list-bounces gnome org [mailto:gtk-list-bounces gnome org] On Behalf Of Paul Stuart
Sent: Thursday, September 11, 2008 3:59 PM
To: gtk-list gnome org
Subject: Large GTK Application design tips

Hi,

 I’m about to embark on designing a large application that will use GTK+. I was wondering if there are any resources out there that might have tips on architecture practices specific to GTk+, style guides, etc. I’ve written small apps, but I’m curious about how things scale up.

 

Any pointers would be appreciated!

 

Thanks,

Paul



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]