List of usage examples for org.apache.wicket.markup.html.list ListView setModelObject
public final void setModelObject(List<T> object)
From source file:com.axway.ats.testexplorer.pages.reports.compare.ComparePage.java
License:Apache License
private Form<Object> getItemsToCompareForm(final Label noRunsLabel, final Label noTestcasesLabel) { final Form<Object> itemsToCompareForm = new Form<Object>("itemsToCompareForm"); itemsToCompareForm.setOutputMarkupId(true); IModel<? extends List<Run>> runsListModel = new LoadableDetachableModel<List<Run>>() { private static final long serialVersionUID = 1L; protected List<Run> load() { return getTESession().getCompareContainer().getRunsList(); }//from w ww . ja v a 2 s .c o m }; final ListView<Run> runsToCompare = new ListView<Run>("runsToCompare", runsListModel) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final ListItem<Run> item) { final ListView<Run> runsToCompareComponent = this; if (item.getIndex() % 2 != 0) { item.add(AttributeModifier.replace("class", "oddRow")); } Map<Run, Model<Boolean>> runs = getTESession().getCompareContainer().getRuns(); item.add(new CheckBox("checkbox", runs.get(item.getModelObject()))); item.add(new Label("runName", item.getModelObject().runName).setEscapeModelStrings(false)); item.add(new Label("version", item.getModelObject().versionName).setEscapeModelStrings(false)); item.add(new Label("build", item.getModelObject().buildName).setEscapeModelStrings(false)); item.add(new Label("startDate", item.getModelObject().getDateStart()).setEscapeModelStrings(false)); item.add(new Label("endDate", item.getModelObject().getDateEnd()).setEscapeModelStrings(false)); item.add(new AjaxButton("removeIcon") { private static final long serialVersionUID = 1L; @Override public void onSubmit(AjaxRequestTarget target, Form<?> form) { CompareContainer compareContainer = getTESession().getCompareContainer(); compareContainer.removeObject(item.getModelObject()); runsToCompareComponent.setModelObject(compareContainer.getRunsList()); noRunsLabel.setVisible(compareContainer.getRuns().size() == 0); target.add(noRunsLabel); target.add(itemsToCompareForm); } }); } }; itemsToCompareForm.add(runsToCompare); AjaxButton removeAllRunsButton = new AjaxButton("removeAllRuns") { private static final long serialVersionUID = 1L; @Override public void onSubmit(AjaxRequestTarget target, Form<?> form) { CompareContainer compareContainer = getTESession().getCompareContainer(); compareContainer.getRuns().clear(); runsToCompare.setModelObject(compareContainer.getRunsList()); noRunsLabel.setVisible(true); target.add(noRunsLabel); target.add(itemsToCompareForm); } }; itemsToCompareForm.add(removeAllRunsButton); IModel<? extends List<Testcase>> testcasesListModel = new LoadableDetachableModel<List<Testcase>>() { private static final long serialVersionUID = 1L; protected List<Testcase> load() { return getTESession().getCompareContainer().getTestcasesList(); } }; final TestcaseListView<Testcase> testcasesToCompare = new TestcaseListView<Testcase>("testcasesToCompare", testcasesListModel) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final ListItem<Testcase> item) { final ListView<Testcase> testcasesToCompareComponent = this; if (item.getIndex() % 2 != 0) { item.add(AttributeModifier.replace("class", "oddRow")); } Map<Testcase, Model<Boolean>> testcases = getTESession().getCompareContainer().getTestcases(); item.add(new CheckBox("checkbox", testcases.get(item.getModelObject()))); item.add(new Label("runName", item.getModelObject().runName).setEscapeModelStrings(false)); item.add(new Label("suiteName", item.getModelObject().suiteName).setEscapeModelStrings(false)); item.add( new Label("scenarioName", item.getModelObject().scenarioName).setEscapeModelStrings(false)); item.add(new Label("testcaseName", item.getModelObject().name).setEscapeModelStrings(false)); item.add(new Label("dateStart", item.getModelObject().getDateStart()).setEscapeModelStrings(false)); item.add(new TextField<String>("testcaseAlias", new PropertyModel<String>(item.getModelObject(), "alias"))); item.add(moveLinkUp("moveUpLink", item)); item.add(new AjaxButton("removeIcon") { private static final long serialVersionUID = 1L; @Override public void onSubmit(AjaxRequestTarget target, Form<?> form) { CompareContainer compareContainer = getTESession().getCompareContainer(); compareContainer.removeObject(item.getModelObject()); testcasesToCompareComponent.setModelObject(compareContainer.getTestcasesList()); noTestcasesLabel.setVisible(compareContainer.getTestcases().size() == 0); target.add(noTestcasesLabel); target.add(itemsToCompareForm); } }); } }; itemsToCompareForm.add(testcasesToCompare); AjaxButton removeAllTestcasesButton = new AjaxButton("removeAllTestcases") { private static final long serialVersionUID = 1L; @Override public void onSubmit(AjaxRequestTarget target, Form<?> form) { CompareContainer compareContainer = getTESession().getCompareContainer(); compareContainer.getTestcases().clear(); testcasesToCompare.setModelObject(compareContainer.getTestcasesList()); noTestcasesLabel.setVisible(true); target.add(noTestcasesLabel); target.add(itemsToCompareForm); } }; itemsToCompareForm.add(removeAllTestcasesButton); // Standard Runs Compare buttons itemsToCompareForm.add(getStandardRunsCompareButtons()); // Custom Runs Compare buttons itemsToCompareForm.add(getCustomRunsCompareButtons()); // Standard Testcases Compare buttons itemsToCompareForm.add(getStandardTestcasesCompareButtons()); // Custom Testcases Compare buttons itemsToCompareForm.add(getCustomTestcasesCompareButtons()); noRunsLabel.setVisible(getTESession().getCompareContainer().getRuns().size() == 0); itemsToCompareForm.add(noRunsLabel); noTestcasesLabel.setVisible(getTESession().getCompareContainer().getTestcases().size() == 0); itemsToCompareForm.add(noTestcasesLabel); return itemsToCompareForm; }
From source file:org.hippoecm.frontend.editor.plugins.field.MultipleTextFieldWidget.java
License:Apache License
public MultipleTextFieldWidget(String id, final IModel<IPluginConfig> model, final IClusterConfig cluster, final String name, final boolean editable) { super(id, model); setOutputMarkupId(true);//from w w w . j a v a 2 s . c om add(CssClass.append("hippo-multiple-text-field-widget")); IPluginConfig config = model.getObject(); final ListView<String> list = new MultipleValueListView(name, config, cluster, editable); add(list); AjaxButton button = new AjaxButton("add") { @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { List<String> values = list.getModelObject(); values.add(""); list.setModelObject(values); target.add(MultipleTextFieldWidget.this); } }; button.setVisible(editable); button.setDefaultFormProcessing(false); add(button); button.add(HippoIcon.fromSprite("icon", Icon.PLUS)); }