Re: Creating an aggregating GtkContainer



On Wed, 2009-11-18 at 19:35 +0100, Per Hermansson wrote:
Hi everyone

I'm contributing to a project called the Common Printing Dialog
which goal is to create the next generation print dialog for Gnome.
The dialog allows users to customize different options which depends
on the current printer being selected.

What I'm struggling to implement is a GtkContainer which sort of aggregates
or combines multiple sub-containers. So that when adding new widgets
each sub-container is filled until no more space is available then the 
next sub-container
is filled. A picture of how this should look like is available here:
http://wiki.openusability.org/printing/index.php/Image:Level3.5_1200.png

This is what I call a flowing columned container: Widgets are moved into
the next column if the current column is full, like text in newspaper
columns. You can see the result here, for instance:
http://www.glom.org/screenshots/glom_example_filmmanager.png
In that screenshot the widgets are divided between the two columns at
runtime.

I have a custom FlowTable container
http://git.gnome.org/cgit/glom/tree/glom/utility_widgets/flowtable.cc
to do this in Glom, but 
a) It's C++, using gtkmm
b) The size/positioning code is horrible and inefficient.
c) It's hacky. This can't be done properly until we have
height-for-width layout in GTK+:
https://bugzilla.gnome.org/show_bug.cgi?id=101968 


-- 
murrayc murrayc com
www.murrayc.com
www.openismus.com




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