[
https://issues.apache.org/jira/browse/ISIS-2602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andi Huber updated ISIS-2602:
-----------------------------
Description:
1. In the XML, every fieldset has an `id`, though it may be inferred from a
non-empty `name`. (If the name is empty "" or missing, then the id is
mandatory).
2. We place a property in a fieldset either by locating within the XML, or by
using `@PropertyLayout(fieldSet=...)`. If the latter then
`@PropertyLayout(sequence=...)` is then the relative position within that
fieldset.
3. We can associate an action with a property or collection using
`@Action(associateWith=...)`. This will be positioned close to the
property/collection, either under it or on the header panel depending on other
layout facets.
4. We can override (3) using `@ActionLayout(fieldSet=...)`. In such a case,
the action is placed on the panel.
5. We take the fieldset name and pass it to the TranslationService along with a
context. As with all translations, if none is available then the name is
returned unchanged. For this reason it is the fieldset name (not its id) that
is passed in to translations.
6. For the context of a fieldset name translation, we use a construct
`com.mycompany.Customer~fieldSets`. We DON'T indicate the id of the fieldset,
the human translator doesn't need that detail.
7. Similar, we take the tab name and pass it through to be translated.
8. For the context of a tab, we use a construct `com.mycompany.Customer~tabs`.
Again, no more detail than that is needed by the human translator.
was:
{color:#1d1c1d}1. Have
{color}{{@ActionLayout/@PropertyLayout(group=...)}}{color:#1d1c1d} indicate the
id of a group/fieldset.{color}
{color:#1d1c1d}2. Have
{color}{{@ActionLayout/@PropertyLayout(groupName=...)}}{color:#1d1c1d} indicate
a group/fieldset friendly name.{color}
{color:#1d1c1d}3. Have {color}{{@Action(associateWith=...)}}{color:#1d1c1d}
associate with another member, that's the member's name (not a friendly
name).{color}
{color:#1d1c1d}4. If (3) is present, then the group/fieldset (if any) of the
given associated member is used to place/layout the
{color}_Action_{color:#1d1c1d}, unless explicitly specified otherwise using
{color}{{@ActionLayout(group/groupName)}}{color:#1d1c1d}.{color}
{color:#1d1c1d}5. If (2) is specified, then (1) is mandatory. (Enforce best
practice.){color}
> Programming Model: add @ActionLayout(group=...) and
> @ActionLayout/@PropertyLayout(groupName=...)
> ------------------------------------------------------------------------------------------------
>
> Key: ISIS-2602
> URL: https://issues.apache.org/jira/browse/ISIS-2602
> Project: Isis
> Issue Type: Improvement
> Components: Isis Core
> Reporter: Andi Huber
> Assignee: Andi Huber
> Priority: Major
> Fix For: 2.0.0-M6
>
>
> 1. In the XML, every fieldset has an `id`, though it may be inferred from a
> non-empty `name`. (If the name is empty "" or missing, then the id is
> mandatory).
> 2. We place a property in a fieldset either by locating within the XML, or by
> using `@PropertyLayout(fieldSet=...)`. If the latter then
> `@PropertyLayout(sequence=...)` is then the relative position within that
> fieldset.
> 3. We can associate an action with a property or collection using
> `@Action(associateWith=...)`. This will be positioned close to the
> property/collection, either under it or on the header panel depending on
> other layout facets.
> 4. We can override (3) using `@ActionLayout(fieldSet=...)`. In such a case,
> the action is placed on the panel.
> 5. We take the fieldset name and pass it to the TranslationService along with
> a context. As with all translations, if none is available then the name is
> returned unchanged. For this reason it is the fieldset name (not its id)
> that is passed in to translations.
> 6. For the context of a fieldset name translation, we use a construct
> `com.mycompany.Customer~fieldSets`. We DON'T indicate the id of the
> fieldset, the human translator doesn't need that detail.
> 7. Similar, we take the tab name and pass it through to be translated.
> 8. For the context of a tab, we use a construct
> `com.mycompany.Customer~tabs`. Again, no more detail than that is needed by
> the human translator.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)