On Tue, Jan 15, 2013 at 8:54 AM, Torsten Schoenfeld <kaffeeti...@gmx.de> wrote: > On 14.01.2013 18:24, Dave M wrote: >> >> Here's a first stab at the Gtk3::RecentChooserDialog stuff. Attached >> is a diff and the test file. > > > Looking good in general. One minor style nibble: > > + $dialog->add_button( $buttons[$i], $buttons[$i+1] ); > > Please follow the style of the surrounding code, so in this case: > > $dialog->add_button ($buttons[$i], $buttons[$i+1]); > > Similarly for "if" and "for". My apologies, I should have that down by now. > > >> The test is currently doing two bad things: >> >> 1. Several "Gtk-WARNING **: Attempting to add a widget with type >> GtkRecentChooserDialog to a GtkWindow, but as a GtkBin subclass a >> GtkWindow can only contain one widget at a time; it already contains a >> widget of type GtkRecentChooserDialog" warnings. > > > This is due to setting the parent in > > + my $dialog = Glib::Object::new ($class, title => $title, > + parent => $parent); > > Simply remove "parent => $parent". Works. > > >> 2. The tests fail: >> not ok 14 >> # Failed test at GtkRecentChooserDialog.t line 40. >> # got: '1' >> # expected: '2' >> # Looks like you failed 1 test of 14. >> I think this is because it uses a Box, and the "children" are held in >> the box (that sounds horrible - sorry). Note that the original code >> was >> "$chooser -> action_area -> get_children();" but it doesn't like the >> "action_area" stuff, so I changed it to "get_action_area", and it's >> only returning the box. > > > This was actually a bug (or missing override, rather) in Gtk3. I fixed it > with > <http://git.gnome.org/browse/perl-Gtk3/commit/?id=6363e69c9028380b238331e54e2307a7ca2524b1> > last year. > > >> The code for both 'new' and 'new_for_manager' are very similar, so we >> should be able to write them in the same manner as the >> "Gtk3::RadioMenuItem constructors". Probably wouldn't save many lines >> though, so I'm not sure it's worth it. > > > I agree; two separate functions are fine in this case. Here it is, completely working and properly formatted. Note that I changed the test file to match the Gtk3 test formatting, which differs from Gtk2 test formatting (e.g., single vs double quotes, different cuddling, etc). I'm not sure if I did the chaining format properly though: $chooser-> get_action_area-> get_children();
I'm going to submit a demo for this to my git repository as well. Finally, I hope to submit InfoBar patches this weekend. Thanks, Dave M
RecentChooserDialog2.tar.gz
Description: GNU Zip compressed data
_______________________________________________ gtk-perl-list mailing list gtk-perl-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-perl-list