Changeset 5456
- Timestamp:
- 07/08/14 07:48:30 (10 years ago)
- Location:
- VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/gui
- Files:
-
- 1 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/gui/VolatileEntityModel.java
r5446 r5456 2 2 3 3 import eu.clarin.cmdi.virtualcollectionregistry.model.IdentifiedEntity; 4 import java.io.Serializable; 4 5 import javax.persistence.EntityManager; 5 6 import org.apache.wicket.model.IModel; … … 17 18 * @see EntityManager#merge(java.lang.Object) 18 19 */ 19 public class VolatileEntityModel<T extends IdentifiedEntity > implements IModel<T> {20 public class VolatileEntityModel<T extends IdentifiedEntity & Serializable> implements IModel<T> { 20 21 21 22 private final static Logger logger = LoggerFactory.getLogger(VolatileEntityModel.class); -
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/gui/wizard/AddKeywordDialog.java
r5447 r5456 1 1 package eu.clarin.cmdi.virtualcollectionregistry.gui.wizard; 2 2 3 import eu.clarin.cmdi.virtualcollectionregistry.gui.DynamicProxyModel; 3 4 import org.apache.wicket.markup.html.form.Form; 4 5 import org.apache.wicket.markup.html.form.RequiredTextField; … … 13 14 @SuppressWarnings("serial") 14 15 public abstract class AddKeywordDialog extends ModalEditDialogBase<String> { 16 17 15 18 private final class Content extends 16 19 ModalEditDialogBase<String>.ContentPanel { 20 17 21 private final Form<String> form; 18 22 private final FeedbackPanel feedbackPanel; … … 21 25 super(id); 22 26 form = new Form<String>("addKeywordForm", model); 23 final TextField<String> keywordField = 24 new RequiredTextField<String>("keyword", form.getModel()); 27 final TextField<String> keywordField 28 = new RequiredTextField<String>("keyword", new DynamicProxyModel<String>() { 29 30 @Override 31 protected IModel<String> getWrappedModel() { 32 return form.getModel(); 33 } 34 }); 25 35 keywordField.add(new StringValidator.MaximumLengthValidator(255)); 26 36 form.add(keywordField); … … 48 58 @Override 49 59 protected ModalEditDialogBase<String>.ContentPanel 50 createContentPanel(String id, IModel<String> model) {60 createContentPanel(String id, IModel<String> model) { 51 61 return new Content(id, model); 52 62 } … … 54 64 @Override 55 65 protected final IModel<String> newInstanceModel() { 56 return new Model<String>();66 return Model.of(""); 57 67 } 58 68 -
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/gui/wizard/CreateVirtualCollectionWizard.java
r5448 r5456 2 2 3 3 import eu.clarin.cmdi.virtualcollectionregistry.gui.VolatileEntityModel; 4 import eu.clarin.cmdi.virtualcollectionregistry.gui.dialog.ConfirmationDialog; 5 import eu.clarin.cmdi.virtualcollectionregistry.model.Creator; 6 import eu.clarin.cmdi.virtualcollectionregistry.model.Resource; 7 import eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection; 4 8 import java.util.Arrays; 5 9 import java.util.Iterator; 6 10 import java.util.List; 7 8 11 import org.apache.wicket.Component; 9 12 import org.apache.wicket.ajax.AjaxRequestTarget; … … 39 42 import org.apache.wicket.model.IModel; 40 43 import org.apache.wicket.model.Model; 44 import org.apache.wicket.model.PropertyModel; 41 45 import org.apache.wicket.model.StringResourceModel; 42 46 import org.apache.wicket.validation.validator.StringValidator; 43 47 import org.apache.wicket.validation.validator.UrlValidator; 44 48 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 50 49 @SuppressWarnings("serial") 51 50 public abstract class CreateVirtualCollectionWizard extends WizardBase { … … 77 76 private final ListView<String> itemsView; 78 77 79 public KeywordsList(String id, final List<String> items) {78 public KeywordsList(String id, final IModel<List<String>> itemsModel) { 80 79 super(id); 81 80 setOutputMarkupId(true); 82 81 83 itemsView = new ListView<String>("keywords", items ) {82 itemsView = new ListView<String>("keywords", itemsModel) { 84 83 @Override 85 84 protected void populateItem(final ListItem<String> item) { … … 141 140 new EnumChoiceRenderer<VirtualCollection.Reproducibility>(this)); 142 141 add(reproducibilityChoice); 143 final TextArea<String> reproducibilityNoticeArea142 final TextArea<String> reproducibilityNoticeArea 144 143 = new TextArea<String>("reproducibilityNotice"); 145 144 add(reproducibilityNoticeArea); 146 145 147 146 final KeywordsList keywordList 148 = new KeywordsList("keywordsList", vc.getObject().getKeywords()); 147 = new KeywordsList("keywordsList", 148 new PropertyModel<List<String>>(vc, "keywords")); 149 149 add(keywordList); 150 150 add(new AjaxLink<String>("keywordsAdd") { … … 158 158 @Override 159 159 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); 162 163 } 163 164 target.addComponent(keywordList);
Note: See TracChangeset
for help on using the changeset viewer.