[ 
https://issues.apache.org/jira/browse/ISIS-1740?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16312791#comment-16312791
 ] 

ASF subversion and git services commented on ISIS-1740:
-------------------------------------------------------

Commit 807867506895c07cb04fb925847b2ad3a8a4c8d4 in isis's branch 
refs/heads/ISIS-1740-where-am-i from [~hobrom]
[ https://gitbox.apache.org/repos/asf?p=isis.git;h=8078675 ]


ISIS-1740 initial commit of prototype



> New Feature: Where am I
> -----------------------
>
>                 Key: ISIS-1740
>                 URL: https://issues.apache.org/jira/browse/ISIS-1740
>             Project: Isis
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Andi Huber
>            Assignee: Andi Huber
>             Fix For: 2.0.0-M1
>
>         Attachments: Clipboard01.png, Clipboard02.png, Clipboard03.png, 
> Clipboard04.png
>
>
> Its common practice to display a navigation hint somewhere at top of an 
> application's page or below the main menu, indicating where the user 
> currently has navigated to. (Typically within a navigable tree-structure.) 
> Let's call this the *WhereAmI hint*. We could integrate such a feature into 
> ISIS.
> +Examples+
> [^Clipboard01.png]
> [^Clipboard02.png]
> [^Clipboard03.png]
> Note: we could optionally include the DomainObject's icons
> +Proposal+
> For any DomainObject/View currently displayed ISIS would need to know its 
> corresponding
> navigable tree-structure. Let's call this the DomainObject's *WhereAmI tree*.
> All the framework needs to known to build the relevant sub-tree, is to know 
> the parent node of any DomainObject/View that 'takes part' in the tree.
> We could provide this 'who is your parent' meta information similar to the 
> existing 'what is your title' mechanism:
> {code:java}
> // Who is your parent? if null there is none
> public AnyDomainObjectOrView parent()
> {
>     return foo;
> }
> {code}
> or
> {code:java}
> // Who is your parent? if null there is none
> @Parent
> public AnyDomainObjectOrView anyMethodName()
> {
>     return foo;
> }
> {code}
> The typical layout.xml could look like this:
> {code:xml}
> <bs3:grid >
>     <bs3:row>
>         <bs3:col span="12" unreferencedActions="true">
>             <cpt:whereAmI />
>             <cpt:domainObject />
>             ...
>         </bs3:col>
>     </bs3:row>
>      ...
> </bs3:grid >
> {code}
> +Implementation Notes+
> # The framework needs to ensure that the chain of parent references starting 
> at the current DomainObject/View is finite. (No circular or self references.) 
> If it detects a circle, be nice and just stop the 'tree-up' traversal there.
> # For standalone Collection Views we could display a WhereAmI hint that 
> allows back navigation to the DomainObject/View that had produced the 
> collection.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to