Hi All,

As we discussed a few weeks ago, I've now gtkmmified the desktop window
object. I've also set this object to be parent windows of the file dialogs,
which prevents them falling underneath the application window in Windows as
per bug #1431528. I've spent quite a long time testing this modification,
both in Ubuntu, XP and in Vista, and everything seems ok. Nonetheless, this
sort of modification is could create bugs, especially with all the pointer
casting which goes on in Inkscape. So let me know if there are any problems.

In working on this I may have stumbled across another bug which has crept in
from somehwhere: In Windows, try saving a file through the file dialog. At
this point the application crashes. You can see this happen if you download
Inkscape0707240355.7z (which comes from a few days ago before I comitted
this latest mod, so it's not my fault). I used message boxes to trace the
problem to line 644 of file.cpp: "delete saveDialog;". However when I
compiled this morning, and stepped through with a debugger I could find no
problem - so it remains an enigma for now.

Best Regards
Joel

----- Original Message -----
From: "Bryce Harrington" <bryce@...961...>
To: "MenTaLguY" <mental@...3...>
Cc: <joel@...1709...>; <inkscape-devel@...1784...sourceforge.net>
Sent: Saturday, July 07, 2007 1:01 AM
Subject: Re: [Inkscape-devel] GTK+ and GTKMM problems


> On Fri, Jul 06, 2007 at 03:20:42PM -0700, MenTaLguY wrote:
>> On Fri, 6 Jul 2007 15:09:04 -0700, "joel@...1709..."
>> <joel@...1709...> wrote:
>> > What I really want here is "temporary wrapper" just to satisfy
>> > FileChooserDialog.  There seems to be rather a lack of documentation
>> > about
>> > all this - or maybe I don't know where to look.
>>
>> Glib::wrap wasn't intended to be used that way.
>>
>> > Am I right in thinking that while all inkscape dialogs use Gtkmm, the
>> > main
>> > window is based on plain old GTK+ ? If not, is there a way I can get a
>> > reference to it's underlying Gtk::Window rather than a crumby
>> > GtkWindow*?
>>
>> I think the best thing to do would be to rewrite the desktop window code
>> to use
>> a Gtk::Window rather than a GtkWindow as the top-level window.  It's a
>> small
>> step towards the complete Gtkmmification we have been wanting anyway.
>
> I took a cut at this back when we first started doing the Gtkmm work
> intently.  It's in the experimental SVN module at bryce/inkscape_gtkmm/.
> We ended up deciding to focus on dialogs rather than the application, so
> this never really got to a finished point, but it still might be useful
> for reference or as a starting point.
>
> Bryce
>
>