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
>
>