[Glade-devel] I'm back.
- From: e98cuenc free fr (Joaquin Cuenca Abela)
- Subject: [Glade-devel] I'm back.
- Date: Wed, 25 Jun 2003 00:18:40 +0200
Hi!
Paolo wrote:
On Tue, 2003-06-24 at 04:39, Archit Baweja wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hey guys
Well with school over for the summers, I've got time on my
hands. So
how about some thing to work on. Anything lacking in glade3
that might
need attention?
Great to have you working on glade3 again!
Some of the things that come to my mind are:
[snip]
3 - handle the placeholder tag properly: IMHO this is biggest
problem right now. I think I have understood the problem but
fixing it requires quite a bit of changes and I haven't come
to a working solution. Explanation of what I found follows
for those who want to give it a shot (note however that maybe
I'm totally wrong...) The problem is that we don't have
placeholders in our main tree structure (the one made of
GladeWidget->parent and
GladeWidget->children) so when we save a file to xml we don't generate
the <placeholder> tags. This screws various things, first of
all the compatibility with glade-2, but also other things:
for example try to create a window, add a vbox to it, add a
button to the second slot of the vbox, save the file and
exit... now reopen glade-3 and open that
file: the button will be at the wrong place.
The best solution IMHO is to make GladePlaceholder a
GladeWidget and include it in the tree structure instead of
I don't quite agree. GladePlaceholder is a GtkWidget, so if you want to
also make GladePlaceholder a GladeWidget, then GladeWidget should also
be GtkWidget, and that doesn't makes sense.
making it a special case. But how? The more radical solution
would be to make GladeWidget a GObject instead of a simple
structure, but I'm not sure that it makes sense. In this case
GladePlaceholder would be a subclass of GladeWidget. Another
approach (the one I tried, without finishing it) is to make
glade_placeholder_new return a GladeWidget, something like:
What I was thinking is instead to just change the logic of
glade_widget_write.
Right now, it looks on the list of childrens of the GladeWidget.
Instead, look at the list of children of the GtkWidget with
gtk_container_get_children (only if it's a container), and then for each
children, we have 3 possibilities:
1) it's a widget with an associated GladeWidget
2) it's a placeholder
3) neither of these
In case 1, we just keep with the current logic (redoing
glade_widget_write, etc.), in case 2, we print the <placeholder/>, and
in case 3, we just ignore the widget.
I've coded it & committed. The only that I'm lacking is printing the
packing properties of the placeholder, I will do it tomorrow if nobody
beats me. Btw, we should also not print a property if it's equal to the
default value, as right now we're quite verbose.
Cheers,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]