[bzr-gtk] Branch, Checkout, and Push dialog refactoring

Vincent Ladeuil v.ladeuil+lp at free.fr
Mon Feb 5 14:01:18 GMT 2007


>>>>> "john" == John Arbash Meinel <john at arbash-meinel.com> writes:

<snip/>

    >> Highlights:
    >> - Branch, Checkout, and Push dialogs don't use glade (we're about to
    >> get rid of glade step by step)

    john> Why is that? I'm just curious if there is a specific
    john> problem with glade that makes you not want to use it.

I second that and hardly regret I could not find more time to
discuss it at the sprint (where I miss John a lot, hi by the way
;)

    john> For the GUI design that I've done, I've found it useful
    john> to have a very clear separation between the portion of
    john> the code doing gui layout, and all of the hooks behind
    john> it.

Same here. I always found it a time-saver to have a clean
separation between GUI layout, GUI dynamics  and the code
manipulating the presented data.

So glade is the best I found to manage the layout of the GUI and
respect a few coherence rules (mostly setting the containers
spaces the same way, glade helping hugely to define the right
containers with the right default geometry managing rules).

One thing I don't use in glade is the ability to bind code to the
widgets by signals. I find it more appropriate to handle that
part in the code.

On rule of thumb I have is to imagine that the layout is defined
by someone who just don't know how to program, his job is to make
a nice UI and label significant widgets with names the code can
refer to.

Note however that I have made some exceptions to these rules in
the past either because I needed a specialized widget or because
the default widget behavior.

Also, at the sprint, I mentioned that the main problems I had
with the actual use of glade was:

- I prefer having one glade file by python module,

- glade files should be found in the python import path which
  needs code I'm not able to write today.

I'll be glad to get a better understanding on:

- why glade was dropped,

- would it still be dropped if crucial problems can be solved
  (easy acquisition of glade file comes to mind),

I have experienced GUI design with both approaches, fully coded
(with Tk) and editor assisted (Gtk and glade), and the later have
been a huge win. I'm a bit surprised that bzr-gtk is choosing the
former after having used the later...

  Vincent



More information about the bazaar mailing list