On Fri, Nov 9, 2018 at 11:20 AM Marius Dumitru Florea
<[email protected]> wrote:
>
> On Wed, Nov 7, 2018 at 5:34 PM Adel Atallah <[email protected]> wrote:
>
> > Hello everyone,
> >
> > So what we thought about with Vincent for implementing the "concept of
> > aliases or groups" would be to actually have two new annotations that
> > we would use on macro properties.
> > The first one is a "Group" annotation which is meant to indicate that
> > some properties are part of the same group, obviously.
> > The second is an "Alternative" annotation which is meant to indicate
> > that only one property / group of properties can be used (among the
> > ones that are part of the alternative).
> > Here is an example:
> > We want for the Include macro to be able to specify either:
> > the "reference" and "type" parameters
> > or
> > the "page" parameter
> > For that, we will change the IncludeMacroParameters java class like this:
> >
> > @Alternative("reference")
> > @Group("entityReference")
> > public void setReference(String reference)
> >
> > @Alternative("reference")
> > @Group("entityReference")
> > public void setType(EntityType type)
> >
> > @Alternative("reference")
> > public void setPage(String page)
> >
> > In the WYSIWYG side, we will only be able to specify either the
> > "reference" and the "type" or the "page" parameter.
> >
>
> I think it would make more sense, at least in this case, to have the
> alternative as an attribute of the group, because semantically the
> "entityReference" group is an alternative to the page parameter. You can't
> say that the type parameter alone is an alternative to the page parameter.
>
> The @Group annotation is clear. No doubt about it. I'm not sure about
> the @Alternative annotation. I'm thinking that the "alternative" is also a
> group, where only one item from the group can be used, which could be
> expressed with an attribute of the @Group annotation.

Thanks for the suggestion, but how can it be used? If I retake my previous
example, will it be:

@Group(name = "entityReference", alternative = "reference")
public void setReference(String reference)

@Group(name = "entityReference", alternative = "reference")
public void setType(EntityType type)

@Group(name = "page", alternative = "reference")
public void setPage(String page)

?
>
>
> >
> > WDYT?
> >
> > Thanks,
> > Adel
> >
> > On Tue, Sep 25, 2018 at 11:51 AM Marius Dumitru Florea
> > <[email protected]> wrote:
> > >
> > > On Wed, Sep 19, 2018 at 4:31 PM Vincent Massol <[email protected]>
> > wrote:
> > >
> > > >
> > > >
> > > > > On 19 Sep 2018, at 14:47, Adel Atallah <[email protected]>
> > wrote:
> > > > >
> > > > > On Wed, Jul 18, 2018 at 5:00 PM Vincent Massol <[email protected]>
> > > > wrote:
> > > > >>
> > > > >>
> > > > >>
> > > > >>> On 5 Jul 2018, at 12:06, Vincent Massol <[email protected]>
> > wrote:
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>> On 4 Jul 2018, at 12:07, Thomas Mortagne <
> > [email protected]>
> > > > wrote:
> > > > >>>>
> > > > >>>> Here are more details on the actual use case we need to support:
> > > > >>>>
> > > > >>>> In include/Display macro either you set:
> > > > >>>>
> > > > >>>> * "reference" and "type" (which default to DOCUMENT)
> > > > >>>> * or you set “page"
> > > > >>>
> > > > >>> Globally I think we need to add 3 concepts to macro parameter
> > > > descriptor:
> > > > >>>
> > > > >>> 1) The concept of “deprecated” parameter. For example for
> > “document”
> > > > in the include macro.
> > > > >>> 2) The concept of aliases or groups, i.e the ability to list
> > > > parameters that are mutually exclusive. Example: reference + type vs
> > page
> > > > for display/include macros. This would mean that in the Macro Dialog
> > UI if
> > > > you select one of those the other gets unselected/cleared out (you
> > cannot
> > > > have mutually exclusive params have values).
> > > > >>> 3) The concept of Advanced parameters. For example, we should put
> > > > reference + type as advanced parameters so that they are not shown to
> > the
> > > > user by default (and so that the page parameter is more highlighted).
> > Users
> > > > would need to click on Advanced to see advanced parameters. I think
> > we’re
> > > > doing something automatic today (I don’t remember the details) to try
> > to
> > > > hide some parameters but we should probably review this.
> > > > >>>
> > > > >>> WDYT?
> > > > >>
> > > > >> Ping!
> > > > >>
> > > > >> Do we agree about this? If we do we can then create jira issue
> > about it
> > > > and take it for implementation.
> > > > >
> > > > > +1, I can create the jira issue if it's ok.
> > > >
> > > > Please do :)
> > > >
> > > >
> > >
> > > > @Marius: Ok for you?
> > > >
> > >
> > > Yes.
> > >
> > >
> > > >
> > > > thanks
> > > > -Vincent
> > > >
> > > > [snip]
> > > >
> > > >
> > > >
> >

Reply via email to