Changeset 1142 for gaphor/trunk/TODO
- Timestamp:
- 02/28/07 22:43:32 (2 years ago)
- Files:
-
- gaphor/trunk/TODO (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
gaphor/trunk/TODO
r1141 r1142 24 24 !!! Create some example diagrams, 25 25 26 - get rid of resource(). Create an Application instance instead (should 27 make unit testing easier too). 28 This should get rid of the pseudo singletons (_default* instances per module) 29 26 30 - using stereotypes 27 31 - components and stuff … … 33 37 - Use actions only for action definitions. use Events for notification 34 38 between actions. 39 * use zope.component.event for centralized event notification. 40 41 - use GTK's UIManager for menu management. 42 * figure out naming conventions, also for diagram item popup menus. 43 * 44 45 - Copy/Paste for diagramitems 46 - How to do a copy/paste? shallow copy or deep copy? -> just create a diagram 47 item item referening the same model element or also copy the model element? 48 I think we should stick with shallow copy for now. 35 49 36 50 - namedelement.py: from NamedElement … … 42 56 - Use setuptools (pkg_resources) to load plugins. 43 57 Maybe define stuff in terms of services, like PIDA does (pida.org?) 58 59 - In some cases (like when editing attributes) Enter should be used to 60 complete the edit action. 44 61 45 62 Older (long term ;) todo items: … … 57 74 Zope classes are quite optimized. However, mainly provides the same 58 75 functionality as Actions, but not as fine grained. 76 Use zope.component.events for all notification! 59 77 60 78 - Add meta data (such as text alignment) to the model file (add a meta: … … 63 81 - Fix namespace relations between Lifeline and Interaction and Message and 64 82 Interaction 65 66 - Allow to make Action objects, instead of defining classes.67 Should use meta-classes for registration too (define __abstract__ or\something to prevent registration).68 83 69 84 - disable actions when editing. … … 76 91 them into other models. 77 92 78 - How to figure out if a module exists without loading it? 93 - How to figure out if a module exists without loading it? Solved by setuptools 79 94 80 95 - Exporting diagrams to UML XMI (work in progress), 81 96 code, images (SVG/png), etc. - make a plugin! 82 97 83 - fix accelarators (HOW?), partially done, accelerators on items in popup menus84 does not work.85 Accelerators should be activated by the (Abstract)Window, should not depend86 on menu items. Intercept Window::key_pressed_event and let it handle87 popup menu actions.88 89 - In some cases (like when editing attributes) Enter should be used to90 complete the edit action.91 92 98 - Create a good algorithm for placement of lines and maybe nodes too. 93 94 - Use default GTK+ menu classes, in stead of the home-brew one.95 96 - Use GTK+ 2.4 UIManager and ActionGroups (?):97 * Reconsider since GTK+ 2.8 bindings are fairly better than the 2.4 bindings98 . We have to keep the gaphor.misc.action module intact.99 . As far as I can see, cross action updates, are not supported.100 . Properties can be mapped in a straightforward way.101 . Should actions be split up: one for the main window, one group per102 diagram and one group per item type?103 . GtkUIManager looks useful, some structures in Gaphor may have to be104 reconsidered. What to do with AccelMaps for example. (I really have105 to read the tutorial some day ;-).106 . The current structure is simple and quite Pythonic. It should be this way.107 . Stuff like a recent-file box will be easier to create (I guess).108 Previous conclusion: keep using the gaphor.misc.action code109 99 110 100 - Automatically draw relations when an item is DND-ed from the tree-view 111 101 to the diagram. 112 113 - Copy/Paste for diagramitems114 - in order to make copy/paste work, the load/save functions should be115 generatlised to allow a subset to be saved/loaded (which is needed116 anyway for exporting/importing stereotype Profiles).117 - How many data should be saved? (e.g. we copy a diagram item, remove it118 (the underlaying UML element is removed) and the paste the copied item.119 The diagram should act as if we have placed a copy of the removed item120 on the canvas and make the uml element visible again.121 122 - Undo/redo functionality123 102 124 103 #- Stereotypes: check documentation page 581 (597 absolute). Fixed. An extra … … 131 110 functinality should be provided for those. 132 111 133 - Deployment diagram:134 . Node135 . Artifact136 . some relations137 112 - Sequence diagram: 138 113 . Life line
