diagram tree update




hi,

i'm attaching a patch for the current dia cvs tree that adds the
following functionalities to the diagram tree window:

- the diagram tree is not created/updated if the diagram tree window
  is never shown.

- a single mouse click on a diagram or object node does not raise 
  the corresponding diagram window nor selects the object. a double
  click is needed.

- right-clicking a node pops up a context menu with the following
  commands:
        * Locate: same as double click
        * Properties: pop up the properties window (for objects)
        * Sort objects:
                + by name
                + by type
                + as inserted : these three have effect on the current
                                diagram
                + All by name
                + All by type
                + All as inserted: these affect objects in all
                                   current diagrams
                + Default:
                        + by name
                        + by type
                        + as inserted: these affect objects in all current and
                                       new diagrams

        * Sort diagrams:
                + by name
                + as inserted : these three have effect on the current
                                diagrams
                + Default:
                        + by name
                        + as inserted: these affect all current and
                                       new diagrams.

- the diagram tree has now its own preferences tab, and includes the
  initial width and height of the diagram tree window as configurable
  params. also, the default diagram and object sort modes are stored
  in diarc.

caveats:

- the pop-up menus are created using raw gtk (no #ifdef GNOME
  stuff). i have not added GNOME-style menus because gtk menus work
  fine for both GNOME and gtk, and the pop-up menus are so simple that
  i thought GNOME menus were not necessary: am i mistaken?

- the menus are implemented in diagram_tree_menu.c instead of putting
  the code in menus.c... maybe i'm missing some i18n handling of the
  new menus: i have not fully understood the stuff in menus.c: any
  help/comments greatly appreciated! :-)

todo:

- allow multiple selection of objects/diagram nodes

- a menu/preferences option to hide objects of some type (for
  instance, when displaying UML use cases, i'm not interested in
  seeing the connectors...)

- delete command in pop-ups???

- handle the tree window size using sessions

- <put your suggestion here :-)>

as always, any comment will be highly appreciated.

cheers,

jao

Attachment: dia.diff.gz
Description: dia unidiff file



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]