Re: thoughts on gtk, after Hexsweeper

Liam Quin <liam holoweb net> writes:

> I wrote up some of my expreience at:

Many of these are GNOME things not GTK+ things, but to quickly comment
and ask for a little more clarification:

 - I don't quite understand what you want from your aligned layout
   that GtkTable doesn't provide. 

   Complaints I've heard on occasion:

    - Vertical alignment is problematical when you have controls
      like GtkRadioButton where the alignment of the the text 

    - Sometimes you want to constrain controls to be the same
      size that aren't all at one level of the hiearchy - for

      GTK+-2.0 will have a mechanism for doing this - where you
      can specify a group of widgets and say that their size
      requisition should be the max of all of them.

   But I'm not sure these are your complaints.

   Glade does need some easier ways of doing common layout operations;
   using glade without knowing how GTK+ geometry management works
   is rather mystifying; it would be nice if Glade could help
   teach you how it worked.
 - gnome-hello in CVS should have what you want for a template
   script. Make sure that you are using automake not just
   autoconf, or you will indeed have lots of problems.

 - The #defines for string arguments have been suggested before.
   Its more extra typing beyond what GTK+ already requires,
   but yes, it would have some advantages.

   In my experience, the runtime errors aren't really a big problem
   because signal connections and argument settings almost always
   occur on the common codepath, and not on a rarely hit codepath.

 - The double casting problem is a bit of a gotcha, but I think the
   macros you propose are rather confusing and probably obscure
   what is going on to much to make it a good idea.

   Its basically a mistake everybody  makes once, in my experience.

 - Screenshots in the API docs would be nice, but a lot of work. Maybe
   once we redo the default theme

And of course, the number 1 tip for GTK+ programming is:

 - Don't use C; In my opinion, C is a library programming language
   not an app programming language.


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