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

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

Commit 325fc45c717165624aca945c43f2b155a7ab1e89 in branch refs/heads/master 
from [~danhaywood]
[ https://git-wip-us.apache.org/repos/asf?p=isis.git;h=325fc45 ]

ISIS-691: improved null handling for drop-down lists

- for entity refs, if null, shouldn't default to showing the first in list
- for values (enums), should be able to set to null (in list, the blank line)
- get rid of clear link for entity refs, instead set by choosing from list, 
same as the value drop-down


> In Wicket viewer, improve drop-down list's handling of null entity or values
> ----------------------------------------------------------------------------
>
>                 Key: ISIS-691
>                 URL: https://issues.apache.org/jira/browse/ISIS-691
>             Project: Isis
>          Issue Type: Bug
>          Components: Archetype: ToDoApp WRJ, Core, Viewer: Wicket
>    Affects Versions: archtype-quickstart-wrj-1.3.1, viewer-wicket-1.3.1, 
> core-1.3.0
>            Reporter: Dan Haywood
>            Assignee: Dan Haywood
>             Fix For: archetype-quickstart-wrj-1.4.0, viewer-wicket-1.4.0, 
> core-1.4.0
>
>
> Several issues:
> 1.  for entities, if the reference is null, the drop-down 
> (EntityLinkSelect2Panel) always shows the first object in edit mode
> 2.  for value types (eg enums), it is not possible to set a null value (!)
> ~~~
> To replicate (1) add the following property to the simple archetype's 
> SimpleObject class:
>     // //////////////////////////////////////
>     // other (property)
>     // //////////////////////////////////////
>     private SimpleObject other;
>     @Column(allowsNull="true")
>     @MemberOrder(sequence = "1")
>     // @Mandatory
>     public SimpleObject getOther() {
>         return other;
>     }
>     public void setOther(final SimpleObject other) {
>         this.other = other;
>     }
>     public List<SimpleObject> choicesOther() {
>         List<SimpleObject> list = container.allInstances(SimpleObject.class);
>         return list;
>     }
> ~~~
> To replicate (2), 
> ToDoItem
>     @javax.jdo.annotations.Column(allowsNull="true")
>     public Subcategory getSubcategory() {
> and 
> ToDoItemContributions
>     public ToDoItem updateCategory(
>             final ToDoItem item, 
>             final @Named("Category") Category category,
>             final @Optional @Named("Subcategory") Subcategory subcategory) {
>         ...
>     }
> and
>     public static enum Category {
>         Professional {
>             @Override
>             public List<Subcategory> subcategories() {
>                 return Arrays.asList(null, Subcategory.OpenSource, 
> Subcategory.Consulting, Subcategory.Education);
>             }
>         }, Domestic {
>             @Override
>             public List<Subcategory> subcategories() {
>                 return Arrays.asList(null, Subcategory.Shopping, 
> Subcategory.Housework, Subcategory.Garden, Subcategory.Chores);
>             }
>         }, Other {
>             @Override
>             public List<Subcategory> subcategories() {
>                 return Arrays.asList(null, Subcategory.Other);
>             }
>         };
>         
>         public abstract List<Subcategory> subcategories();
>     }



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to