You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by "Andi Huber (Jira)" <ji...@apache.org> on 2022/04/29 16:32:00 UTC
[jira] [Updated] (ISIS-2676) [Wish] Better approach to ordering columns in tables (properties + actions)
[ https://issues.apache.org/jira/browse/ISIS-2676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andi Huber updated ISIS-2676:
-----------------------------
Component/s: Isis Applib (programming model)
(was: Isis Core)
(was: Isis Viewer Wicket)
> [Wish] Better approach to ordering columns in tables (properties + actions)
> ---------------------------------------------------------------------------
>
> Key: ISIS-2676
> URL: https://issues.apache.org/jira/browse/ISIS-2676
> Project: Isis
> Issue Type: Wish
> Components: Isis Applib (programming model)
> Affects Versions: 2.0.0-M5
> Reporter: Daniel Keir Haywood
> Priority: Major
>
> re: [https://the-asf.slack.com/archives/CFC42LWBV/p1620925090232000?thread_ts=1620883840.222800&cid=CFC42LWBV]
> what we have already, of course, is TableColumnOrderService, which is a terrible but rather handy kludge.... it works surprisingly well.
> In olden days, before we had layout.xml, the (recently deceased) {{@MemberOrder}} sufficed both for the order of fields on an object form, and for the order of columns in a table. But we are well beyond that now. So I think that the table column order should be specified through a completely different mechanism.
> Suggestions:
> 1. One is to extend {{@PropertyLayout}} with a new element just for column order, eg {{@PropertyLayout(columnOrder="1.0"). }}We would use dewey decimal to allow subtypes to "slot" any columns in as nec.
> 2. Another annotation-based idea is something like:
> @DomainObjectLayout(columnOrderBy=CustomerColumnComparator.class)
> public interface Customer {
> }
> 3. A different idea is to specify this in a separate file, eg "ApplicationUser.columnOrder.txt". That could then be changed at runtime, same as layout files, and could support commenting out as well in order to hide columns.
> A separate ongoing spike is to allow actions also being in the table. So whatever option, it would be nice to anticipate this.
> ~~~
> Riffing on (3), each row could represent either a property or an actionId. We would provide a service to download it (same as Object_downloadLayout currently).
> eg:
> {code:java}
> # properties (this row starts with a '#' so is a comment and is ignored)
> firstName
> lastName
> emailAddress
> # actions. These would be shown in a separate column as a drop-down.
> resetPassword # allow comments here also.
> updateEmail
> updateFamilyName
> updateGivenName
> updateKnownAs
> {code}
>
>
>
--
This message was sent by Atlassian Jira
(v8.20.7#820007)