You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cayenne.apache.org by Andrus Adamchik <an...@objectstyle.org> on 2013/05/17 09:41:07 UTC

Modeler improvements

I will have a few interns this summer at our company, so I am thinking we can have a private "Summer of Code" of sorts and try to improve CayenneModeler. Here is a quick improvement list that I sketched out. Any comments / suggestions from your own experience?

* rework of ObjRelationship/ObjAttribute "inspector" (Better path mapping UI, display the joins … just something that is not confusing)

* Filters for Left-hand project navigator (kind of like Eclipse panel filters) to show/hide everything/objentities/dbentities/queries

* Allow to link DataMaps to DataNodes from DataNode editor. Also when creating the first DN in the project, auto link all DMs to it.

* Make DataMap editor fields wider.

* better callback mapping (maybe a tree of callback types with methods? instead of a dropdown). Otherwise it is hard to get a big picture for a given entity.

* Merge Entity Attributes and Relationships tabs together

* at the minimum add "new attr" and "new rel" buttons to the "rel" and "attr" panels

* Generate classes/ generate DB schema should be enabled when higher tree objects are selected

* Easy navigation between related attributes and rels

* remove ":sync w/DbEntity" button from ObjEntity - it is redundant and already present on the entity toolbar.

* Remove DataDomain cache configuration UI and move it to DI

* Remove Listeners support from the Modeler (IMO listeners do not belong in the DataMap, unlike callbacks, and should be added in the code)

* (not modeler related) Some XML or property file for cdbimport to tweak the naming of special cases of reengineered schemas


Andrus






Re: Modeler improvements

Posted by Michael Gentry <mg...@masslight.net>.
On Fri, May 17, 2013 at 3:41 AM, Andrus Adamchik <an...@objectstyle.org>wrote:

> * rework of ObjRelationship/ObjAttribute "inspector" (Better path mapping
> UI, display the joins … just something that is not confusing)


YES! (I know I opened a bug for this).


> * Filters for Left-hand project navigator (kind of like Eclipse panel
> filters) to show/hide everything/objentities/dbentities/queries
>
> * Allow to link DataMaps to DataNodes from DataNode editor. Also when
> creating the first DN in the project, auto link all DMs to it.
>
> * Make DataMap editor fields wider.
>
> * better callback mapping (maybe a tree of callback types with methods?
> instead of a dropdown). Otherwise it is hard to get a big picture for a
> given entity.
>

YES! (I think I opened a bug report for this).


> * Merge Entity Attributes and Relationships tabs together
>

YES!


> * at the minimum add "new attr" and "new rel" buttons to the "rel" and
> "attr" panels
>
> * Generate classes/ generate DB schema should be enabled when higher tree
> objects are selected
>
> * Easy navigation between related attributes and rels
>
> * remove ":sync w/DbEntity" button from ObjEntity - it is redundant and
> already present on the entity toolbar.
>
> * Remove DataDomain cache configuration UI and move it to DI
>
> * Remove Listeners support from the Modeler (IMO listeners do not belong
> in the DataMap, unlike callbacks, and should be added in the code)
>
> * (not modeler related) Some XML or property file for cdbimport to tweak
> the naming of special cases of reengineered schemas



I'd also like to see relationships expandable and presented in the
left-hand pane, like EOModeler did.  You could click the plus on "+ Artist"
to expand it to see "+ paintings" under it, etc.  And also be able to open
up paintings, etc.

We might want to mock up some screenshots and comment upon them?

Thanks,

mrg

Re: Modeler improvements

Posted by Aristedes Maniatis <ar...@maniatis.org>.
On 17/05/13 8:00pm, Andrus Adamchik wrote:
>
> On May 17, 2013, at 12:05 PM, Aristedes Maniatis <ar...@maniatis.org> wrote:
>
>>
>> 2. Wireframes are essential. I've been using Omnigraffle (OSX) and then invisionapp for discussion. This is an truly invaluable process. I'd be happy to assist with this part of the process.
>
> Awesome. I have OmniGraffle license, but never heard of invisionapp.


Actually, the other wireframing tool I use is XCode (it has Interface Builder inside it now). Quite nice even if you don't want to build the final tool with it. Plus it is free (other than the 1Gb download).



> IMO the most important piece of UI on my list is ObjRelationship dialog. Maybe we start with it?
>
> I think we should get rid of the bottom part (the poor imitation of the OS X Finder) and let a user type DB path into the text field, assisting him with autocomplete popup that suggests appropriate relationships. (And also somehow show which entity they point to and ideally the join semantics)… Once you type a dot ("."), the next path component choices open, and so on…
>
> Will you be able to sketch this out?


I'll put it on my list for the weekend.


Ari



-- 
-------------------------->
Aristedes Maniatis
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A

Re: Modeler improvements

Posted by Andrus Adamchik <an...@objectstyle.org>.
On May 17, 2013, at 12:05 PM, Aristedes Maniatis <ar...@maniatis.org> wrote:

> 
> 2. Wireframes are essential. I've been using Omnigraffle (OSX) and then invisionapp for discussion. This is an truly invaluable process. I'd be happy to assist with this part of the process.

Awesome. I have OmniGraffle license, but never heard of invisionapp. 

IMO the most important piece of UI on my list is ObjRelationship dialog. Maybe we start with it?

I think we should get rid of the bottom part (the poor imitation of the OS X Finder) and let a user type DB path into the text field, assisting him with autocomplete popup that suggests appropriate relationships. (And also somehow show which entity they point to and ideally the join semantics)… Once you type a dot ("."), the next path component choices open, and so on…

Will you be able to sketch this out?

Andrus


Re: Modeler improvements

Posted by Aristedes Maniatis <ar...@maniatis.org>.
On 17/05/13 5:41pm, Andrus Adamchik wrote:
> I will have a few interns this summer at our company, so I am thinking we can have a private "Summer of Code" of sorts and try to improve CayenneModeler. Here is a quick improvement list that I sketched out. Any comments / suggestions from your own experience?

1. There is a bit to be learnt from the Webobject modeler (the Eclipse version). It was quite interesting although it has been many years since I used it.

2. Wireframes are essential. I've been using Omnigraffle (OSX) and then invisionapp for discussion. This is an truly invaluable process. I'd be happy to assist with this part of the process.


Ari


-- 
-------------------------->
Aristedes Maniatis
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A