List of usage examples for org.apache.wicket.markup.html.form FormComponent setModelObject
default C setModelObject(T object)
From source file:org.brixcms.plugin.site.page.tile.admin.NewTileFragment.java
License:Apache License
public NewTileFragment(String id, String fragmentId, MarkupContainer markupContainer, final IModel<BrixNode> nodeModel) { super(id, fragmentId, markupContainer, nodeModel); final Form<Void> form = new Form<Void>("form"); add(form);//from w w w. j a va 2s . c o m form.add(new ContainerFeedbackPanel("feedback", form)); final FormComponent<String> tileId; form.add(tileId = new TextField<String>("tileId", new PropertyModel<String>(this, "newTileId"))); tileId.setRequired(true).add(new NewTileIdValidator()).add(NodeNameValidator.getInstance()) .setOutputMarkupId(true); IModel<List<? extends String>> idSuggestionModel = new LoadableDetachableModel<List<? extends String>>() { @Override protected List<? extends String> load() { List<String> res = new ArrayList<String>(); Collection<String> ids = ((AbstractContainer) NewTileFragment.this.getModelObject()).getTileIDs(); res.addAll(ids); return res; } }; final DropDownChoice<String> idSuggestion; form.add(idSuggestion = new DropDownChoice<String>("idSuggestion", new Model<String>(), idSuggestionModel) { @Override public boolean isVisible() { return NewTileFragment.this.getModelObject() instanceof GlobalContainerNode == false; } }); idSuggestion.add(new AjaxFormComponentUpdatingBehavior("onchange") { @Override protected void onUpdate(AjaxRequestTarget target) { tileId.setModelObject(idSuggestion.getModelObject()); idSuggestion.setModelObject(null); target.addComponent(tileId); target.addComponent(idSuggestion); target.focusComponent(tileId); } }); idSuggestion.setNullValid(true); form.add(new DropDownChoice<String>("tileType", new PropertyModel<String>(this, "newTileTypeName"), new TileTypeNamesModel(), new TileTypeNameRenderer()) { private static final long serialVersionUID = 1L; @Override protected boolean wantOnSelectionChangedNotifications() { return true; } @Override protected void onSelectionChanged(String tileTypeName) { ; if (tileTypeName == null) { EmptyPanel ep = new EmptyPanel(newTileEditor.getId()); newTileEditor.replaceWith(ep); newTileEditor = ep; } else { final Brix brix = NewTileFragment.this.getModelObject().getBrix(); final Tile tile = Tile.Helper.getTileOfType(tileTypeName, brix); TileEditorPanel ed = tile.newEditor(newTileEditor.getId(), nodeModel); newTileEditor.replaceWith(ed); newTileEditor = ed; } } }.setRequired(true)); newTileEditor = new EmptyPanel("tile-editor"); form.add(newTileEditor); form.add(new SubmitLink("add") { @Override public void onSubmit() { onAddTile(newTileId, newTileTypeName); } }); }
From source file:org.obiba.onyx.quartz.editor.openAnswer.OpenAnswerPanel.java
License:Open Source License
private static void clearAndHide(FormComponent<?>... components) { if (components != null) { for (FormComponent<?> component : components) { component.setModelObject(null); component.setVisible(false); }//from w ww .j a v a2 s .co m } }
From source file:org.onehippo.taxonomy.plugin.NewCategoryDialog.java
License:Apache License
public NewCategoryDialog(final IModel<Taxonomy> taxonomyModel, final String pathKey) { super(taxonomyModel); this.name = "new category"; this.pathKey = pathKey; this.key = createKey(); add(new AttributeAppender("class", new Model<String>("hippo-editor"), " ")); final FormComponent<String> keyField = new TextField<String>("key", new IModel<String>() { private static final long serialVersionUID = 1L; public String getObject() { return getKey(); }// w w w. j a va2 s . c o m public void setObject(String object) { key = object; } public void detach() { } }); keyField.setModelObject(key); keyField.add(new SimpleAttributeModifier("readonly", "readonly")); keyField.add(new AjaxFormComponentUpdatingBehavior("onchange") { private static final long serialVersionUID = 1L; @Override protected void onUpdate(AjaxRequestTarget target) { } }); keyField.setOutputMarkupId(true); add(keyField); final FormComponent<String> nameField = new TextField<String>("name", new IModel<String>() { private static final long serialVersionUID = 1L; public String getObject() { return name; } public void setObject(String object) { name = object; } public void detach() { } }); nameField.add(new OnChangeAjaxBehavior() { private static final long serialVersionUID = 1L; @Override protected void onUpdate(AjaxRequestTarget target) { keyField.setModelObject(createKey()); target.addComponent(keyField); } }); add(nameField); }