On Mon, 2006-03-27 at 16:58 -0500, Tristan Van Berkom wrote: > Vincent Geddes wrote: > > Hi Tristan > > > > I have resumed work on a fancy resizable palette for glade3. > > > > Attached is a prototype. Most of the work has been done though. If you > > like it, I can finish it off and integrate it into glade3. > > > > I think it beats the pants off any other palette in Gnome! > > Nice progress, it really rocks :) > > A few comments: > > o What does GladePaletteExpander do differently than GtkExpander ? > (would it be possible to derive from GtkExpander and achieve the > same or close with alot less code ?) > > o From the example I cant really tell if the item order is preserved, > just noting here that it should be (i.e. resizes on the palette > should preserve the order in which icons are listed when the icons > get "shuffled"). > > So asides from that... there are a few things I'd like to change > about the way the palette works (which I may have already mentioned) > after integrating the UI work: > > o GladePalette obviously doesnt need "catalog-changed" signal, > so that can be trashed (I dont even know if it was ever emitted, > and it was certainly never connected to). > > o Need some simple apis for: > /* Add an icon associated with a generic pointer > * (we will use the pointer for a GladeWidgetClass *) > */ > void glade_palette_add_item (palette, icon, user_data) > > /* Return the user data associated with the selected icon > */ > gpointer glade_palette_get_selected_data (palette) > > In a nutshell, we need generic palette apis to replace the ugly > glade_app_get_add/alt_class() stuff. > > o The palette should catch GladeApp signals to handle when there > is no active project, and set itself insensitive (and set sensitive > when a new project is added). > > I've been trying to get the time to review/finish this mail all day, > and with everything I have to do... that wont happen soon, so > the bottom line is; I like the UI work and hope to not have to > maintain a dual implementation of GtkExpander; if you feel comfortable > re-arranging the GladePalette api as I mentioned above; please > do so, otherwise just patch the UI stuff and I'll get to the other > stuff myself. > > Cheers and thanks for the great palette ;-) > > -Tristan >
Hello Tristan I do intend to rewrite the GladePalette class, and will take into account all the points outlined in your message. My GladePaletteExpander was a bit of a hack, I just used the GTK GtkExpander source, and fiddled with it's drawing code to get the look I wanted. I did try and subclass GtkExpander, but I needed to access some of it's private members, so that was the end of that. I could use a normal GtkExpander until as such time that I work out a solution. Earlier, you pointed out that it would be nice if the palette had two layout styles, the one Glade3 currently uses, and the one seen in my prototype. I have modified my custom layout container (GladePaletteTable) to support this. As such the palette will provide the user with a right-click pop-up menu, which will offer the user various preferences such as "Show Widget Names", "Show [Small|Large] icons", etc. So that means users will have a choice of 2 palette item layout styles. I will send you my next prototype in 2 or 3 weeks. Cheerio Vincent _______________________________________________ Glade-devel maillist - [email protected] http://lists.ximian.com/mailman/listinfo/glade-devel
