Ignore:
Timestamp:
07/08/14 07:48:30 (10 years ago)
Author:
Twan Goosen
Message:

Fixed adding and removing keywords to collections

File:
1 edited

Legend:

Unmodified
Added
Removed
  • VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/gui/wizard/CreateVirtualCollectionWizard.java

    r5448 r5456  
    22
    33import eu.clarin.cmdi.virtualcollectionregistry.gui.VolatileEntityModel;
     4import eu.clarin.cmdi.virtualcollectionregistry.gui.dialog.ConfirmationDialog;
     5import eu.clarin.cmdi.virtualcollectionregistry.model.Creator;
     6import eu.clarin.cmdi.virtualcollectionregistry.model.Resource;
     7import eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection;
    48import java.util.Arrays;
    59import java.util.Iterator;
    610import java.util.List;
    7 
    811import org.apache.wicket.Component;
    912import org.apache.wicket.ajax.AjaxRequestTarget;
     
    3942import org.apache.wicket.model.IModel;
    4043import org.apache.wicket.model.Model;
     44import org.apache.wicket.model.PropertyModel;
    4145import org.apache.wicket.model.StringResourceModel;
    4246import org.apache.wicket.validation.validator.StringValidator;
    4347import org.apache.wicket.validation.validator.UrlValidator;
    4448
    45 import eu.clarin.cmdi.virtualcollectionregistry.gui.dialog.ConfirmationDialog;
    46 import eu.clarin.cmdi.virtualcollectionregistry.model.Creator;
    47 import eu.clarin.cmdi.virtualcollectionregistry.model.Resource;
    48 import eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection;
    49 
    5049@SuppressWarnings("serial")
    5150public abstract class CreateVirtualCollectionWizard extends WizardBase {
     
    7776            private final ListView<String> itemsView;
    7877
    79             public KeywordsList(String id, final List<String> items) {
     78            public KeywordsList(String id, final IModel<List<String>> itemsModel) {
    8079                super(id);
    8180                setOutputMarkupId(true);
    8281
    83                 itemsView = new ListView<String>("keywords", items) {
     82                itemsView = new ListView<String>("keywords", itemsModel) {
    8483                    @Override
    8584                    protected void populateItem(final ListItem<String> item) {
     
    141140                            new EnumChoiceRenderer<VirtualCollection.Reproducibility>(this));
    142141            add(reproducibilityChoice);
    143             final TextArea<String> reproducibilityNoticeArea
     142                final TextArea<String> reproducibilityNoticeArea
    144143                    = new TextArea<String>("reproducibilityNotice");
    145144            add(reproducibilityNoticeArea);
    146145
    147146            final KeywordsList keywordList
    148                     = new KeywordsList("keywordsList", vc.getObject().getKeywords());
     147                    = new KeywordsList("keywordsList",
     148                            new PropertyModel<List<String>>(vc, "keywords"));
    149149            add(keywordList);
    150150            add(new AjaxLink<String>("keywordsAdd") {
     
    158158                @Override
    159159                public void onSubmit(AjaxRequestTarget target, String keyword) {
    160                     if (!vc.getObject().getKeywords().contains(keyword)) {
    161                         vc.getObject().getKeywords().add(keyword);
     160                    final List<String> keywords = vc.getObject().getKeywords();
     161                    if (!keywords.contains(keyword)) {
     162                        keywords.add(keyword);
    162163                    }
    163164                    target.addComponent(keywordList);
Note: See TracChangeset for help on using the changeset viewer.