[Uml-devel] [Merge request] New features
Andi Fischer
andi.fischer at hispeed.ch
Thu May 12 18:22:18 UTC 2011
Am 09.05.2011 08:04, schrieb Emmanuel Lepage-Vallée:
> Hi, I my name is Emmanuel Lepage Vallee (Elv13 on IRC). This is my
> first post on this list, some of you may be aware of my recent work on
> Umbrello or have seem me in the past decade on IRC.
>
> Recently, I have put quite a lot of time on Umbrello recently working
> on UI elements I disliked or prevented umbrello from being used to do
> real work at a decent speed. My main contribution is a new input
> system for classifier and other related UML objects. This system
> is/will be making it easier to add element to classifier items (more
> to come, but classifier for now). It use/will use a dock instead of a
> legion of keyboard unfriendly popups. It currently look like that:
>
> http://img88.imageshack.us/i/blender101.png/
>
> The idea is not new, some other modeling software such as Oracle (TM)
> MySQL Workbench already use similar input system. It already work
> really well with the mouse. The keyboard part need some work, as it
> need a custom even filter to manage tabs and enter corectly. This work
> is still in progress. There is also some bugs and unconnected slots. I
> will need to make some test cases to be sure everything work. The
> changes are semi invasive. 95% of them just hook to the model. Some
> other take existing code and put it into new widgets, such as one for
> the operation/attribute type, as this code is shared in many new and
> existing places.
>
> The other changes you can see in this screenshot is a statusbar zoom
> widget. This widget is getting quite common in KDE4 and is easier to
> use than the current toolbar slider. It is a little cool change,
> nothing big. The fact that the text is centered is a bug, I just need
> time to fix it.
>
> The other change is moving the toolbar to the left and dock to the
> right and merge them. While undo view is useful, it may not be
> required by default. As for the documentation dock, I think it's nice
> to have it. I am not sure if it need to be separated from the model
> treeview. The classifier input system take a lot of place when it is
> visible, so it looked better like that, not sure about usability however.
>
> There is quite a lot of other changes I want to make too:
> Double click: return to cursor when the toolbar item is pressed once
> and lock if the item is double clicked. Workbench/Vision/Draw/MS
> Office/OpenOffice/All other work like that. It will require an event
> filter.
> Better item tree: The current treeview is terrible. It show too much
> stuffs like items from other diagrams. A little filter, removal of
> unneeded items, better default expansion settings would be nice, someday.
> Auto add items to the view during import: Having to add items in the
> canvas by hand after importing them is bad. Auto import of the
> projects classes would be nice (not all classes, just the project ones)
> "Fit" zoom: this is broken in the widget right now, I wait from the
> Camila GSoC work.
> Handle all types of diagrams: Some diagrams variant would need some
> love. I am thinking about dedicated helpers for code Classes and
> database diagram while they are the same in theory,
> Remove zoom from toolbar: well, it is not needed anymore to be there
> by default
> New icon set: I am working on it, it's getting nice, but the small
> variants are not yet as nice as I would like them to be.
> KAction for everything: there is a lot of actions missing all over the
> place like adding a class in the canvas.
> Multiple view at once: using a qsplitter to view more than once
> diagram at once. It's useful when you have to base one diagram on an
> existing one. I tried, but I failed to get it to work without bugs, so
> I will wait for the new canvas to be ready too.
>
> Those features are TODO, it is obviously too late for 4.7. However, I
> think my current work on the classifier is more then useful enough to
> be part of 4.7. I added it on the soft feature freeze so I can merge
> it until may 12. I will not enable it by default just yet, it need
> more polishing and bug fixing, but it should be quite strong when 4.7
> is being released. So this is a formal merge request:
>
> Can I merge my current work once I have unified the indentation and
> variable naming (95% done):
> -The dock inout system for classifier items
> -The zoom widget
> -The toolbar on the left with small icons
> -The removal of zoom items from the default toolbar
> -Disable the undo view by default
>
> You can try the features by cloning this repository
> git at github.com:Elv13/Umbrello-ng.git If something is broken, try the
> previous commit. It's still buggy, but it work. As for other things,
> like porting umbrello to git, this will wait until this code is merged
> as the deadline is quite soon. Any feedback welcome. I will take care
> or merging what is ready once/if I get the approval to do it.
>
> Thanks for reading, answer soon please, the deadline is coming, I know
> I am late too, but I talked about it on IRC since like 2 months.
Hi Emmanuel,
I compiled your repository successfully.
Your work is very nice and useful, but I think it is not yet ready for
inclusion.
Here are some observations and opinions:
- A lot of new compiler warnings are present.
- When running Umbrello-ng my CPU is at 100% :-(
- Disable the undo view by default is ok for me.
- Adding the zoom widget is very welcome, but "fit" and "100%" buttons
do not work yet.
- In tab "Entity Attributes" there is a "Doc" button. Clicking on it
opens a pop-up, that can not be closed again. Same in other tabs (e.g.
source).
- Why has a class this tab "Entity Attributes"? Is this not only for
Entity Relationship Diagrams?
- ...
Please, keep up the good work. Do some more polishing and merge it as
soon as the freeze is over.
But this is only my opinion ;-)
Regards,
Andi
More information about the umbrello-devel
mailing list