List of usage examples for org.apache.wicket Component add
public Component add(final Behavior... behaviors)
From source file:com.userweave.components.navigation.breadcrumb.BreadcrumbPanel.java
License:Open Source License
/** * Builds the navigation by recursing from the entity * through all parent entities./* w ww . j av a 2s . c o m*/ * * @param entity * Entity to start recursion from. * @param callback * Callback to fire, when a link is clicked. */ private void init(EntityBase entity, final EventHandler callback) { WebMarkupContainer homePageLinkContainer = new WebMarkupContainer("homePageLinkContainer"); AjaxLink homePageLink = getHomePageLink(callback); homePageLinkContainer.add(homePageLink); add(homePageLinkContainer); if (entity == null) { add(new WebMarkupContainer("crumb")); homePageLinkContainer.add(new AttributeAppender("class", true, new Model("homePageActive"), " ")); return; } LinkedList<BreadcrumbListItem> breadcrumbs = getBreadcrumbs(entity); RepeatingView rv = new RepeatingView("crumb"); add(rv); Iterator<BreadcrumbListItem> iterator = breadcrumbs.iterator(); while (iterator.hasNext()) { final BreadcrumbListItem item = iterator.next(); Component next; StringBuilder cssClass = new StringBuilder("crumb"); // last element is not clickable if (!iterator.hasNext()) { next = new LabelFragment(rv.newChildId(), item.getName()); cssClass.append(" lastCrumb"); } else { next = new LinkFragment(rv.newChildId(), item.getName(), item.getEntity(), callback); } rv.add(next); if (cssClass != null) { next.add(new AttributeAppender("class", true, new Model(cssClass), " ")); } } }
From source file:com.userweave.pages.test.BasePageSurvey.java
License:Open Source License
private void addLoadingPanel() { Component loading = new WebMarkupContainer("loading"); loading.setMarkupId("loading"); add(loading);//from ww w .ja va2 s .c o m final AbstractDefaultAjaxBehavior setTimeBehaviour = new AbstractDefaultAjaxBehavior() { private static final long serialVersionUID = 1L; @Override protected void respond(AjaxRequestTarget target) { pageLoaded(System.currentTimeMillis()); } }; // add js-function setTime to call setTimeBehaviour loading.add(new Behavior() { private static final long serialVersionUID = 1L; @Override public void renderHead(Component component, IHeaderResponse response) { String jsCall = "function setTime() { wicketAjaxGet( '" + setTimeBehaviour.getCallbackUrl() + "', null, null, null); }"; response.renderJavaScript(jsCall, null); } }); loading.add(setTimeBehaviour); }
From source file:de.alpharogroup.wicket.components.report.Effects.java
License:Apache License
/** * Replace.// w w w. ja v a 2 s . c om * * @param target * the target * @param component * the component */ public static void replace(final AjaxRequestTarget target, final Component component) { component.add(new DisplayNoneBehavior()); target.add(component); target.appendJavaScript("jQuery('#" + component.getMarkupId() + "').slideDown(100);"); }
From source file:de.inren.frontend.banking.category.ManageCategoriesPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<Category> builder = new AjaxFallbackDefaultDataTableBuilder<Category>( ManageCategoriesPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<Category>(categoryRepository)) .add(new AbstractColumn<Category, String>( new StringResourceModel("actions.label", ManageCategoriesPanel.this, null)) { @Override/* w ww. j av a 2s . c om*/ public void populateItem(Item<ICellPopulator<Category>> cellItem, String componentId, IModel<Category> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final Category category = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<Category>(category))); } }); ButtonGroup bg = new ButtonGroup(componentId) { @Override protected List<AbstractLink> newButtons(String buttonMarkupId) { List<AbstractLink> res = new ArrayList<AbstractLink>(); BootstrapAjaxLink<String> edit = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<Category>(category))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); // Delete Category BootstrapAjaxLink<String> delete = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.deleteCategory(category); target.add(ManageCategoriesPanel.this); } }; delete.setIconType(GlyphIconType.trash); delete.setSize(Buttons.Size.Mini); res.add(delete); // Filter anwenden BootstrapAjaxLink<String> apply = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.applyCategoryToTransactions(category); target.add(ManageCategoriesPanel.this); } }; apply.setIconType(GlyphIconType.plus); apply.setSize(Buttons.Size.Mini); res.add(apply); // Filter entfernen BootstrapAjaxLink<String> remove = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.removeCategoryFromTransactions(category); target.add(ManageCategoriesPanel.this); } }; remove.setIconType(GlyphIconType.minus); remove.setSize(Buttons.Size.Mini); res.add(remove); return res; } }; cellItem.add(bg); } }).addPropertyColumn("id", true).addBooleanPropertyColumn("income", true) .addBooleanPropertyColumn("marksMonth", true).addPropertyColumn("name", true).setNumberOfRows(10) .build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.banking.common.PrincipalTablePanel.java
License:Apache License
private Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<PrincipalInfo> builder = new AjaxFallbackDefaultDataTableBuilder<PrincipalInfo>( PrincipalTablePanel.this); Component table = builder.addDataProvider(getDataProvider()).addPropertyColumn("principal", true) .addPropertyColumn("count", true).addBooleanPropertyColumn("filtered", true).setNumberOfRows(50) .build(id);/*w ww.ja va2 s. c o m*/ TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.banking.filter.EditOrCreateCategoryFilterPanel.java
License:Apache License
private Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<Transaction> builder = new AjaxFallbackDefaultDataTableBuilder<Transaction>( EditOrCreateCategoryFilterPanel.this); Component table = builder.addDataProvider(getDataProvider()).addPropertyColumn("id", true) .addPropertyColumn("hashCode", true).addPropertyColumn("category", true) .addPropertyColumn("accountNumber", true).addPropertyColumn("accountingDate", true) .addPropertyColumn("valutaDate", true).addPropertyColumn("principal", true) .addPropertyColumn("accountingText", true).addPropertyColumn("purpose", true) .addPropertyColumn("amount", true).addPropertyColumn("transactionCurrency", true) .addPropertyColumn("balance", true).addPropertyColumn("balanceCurrency", true).setNumberOfRows(10) .build(id);//from w w w. j a v a 2 s .c o m TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.banking.filter.ManageCategoryFiltersPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<CategoryFilter> builder = new AjaxFallbackDefaultDataTableBuilder<CategoryFilter>( ManageCategoryFiltersPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<CategoryFilter>(categoryRepository)) .add(new AbstractColumn<CategoryFilter, String>( new StringResourceModel("actions.label", ManageCategoryFiltersPanel.this, null)) { @Override/* www.j av a 2 s .c o m*/ public void populateItem(Item<ICellPopulator<CategoryFilter>> cellItem, String componentId, IModel<CategoryFilter> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final CategoryFilter category = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<CategoryFilter>(category))); } }); ButtonGroup bg = new ButtonGroup(componentId) { @Override protected List<AbstractLink> newButtons(String buttonMarkupId) { List<AbstractLink> res = new ArrayList<AbstractLink>(); BootstrapAjaxLink<String> edit = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<CategoryFilter>(category))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); // Filter anwenden BootstrapAjaxLink<String> apply = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.applyCategoryToTransactions(category); target.add(ManageCategoryFiltersPanel.this); } }; apply.setIconType(GlyphIconType.plus); apply.setSize(Buttons.Size.Mini); res.add(apply); // Filter entfernen BootstrapAjaxLink<String> remove = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.removeCategoryFromTransactions(category); target.add(ManageCategoryFiltersPanel.this); } }; remove.setIconType(GlyphIconType.minus); remove.setSize(Buttons.Size.Mini); res.add(remove); return res; } }; cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("category.name", true) .addPropertyColumn("accountingTextFilter", true).addPropertyColumn("principalFilter", true) .addPropertyColumn("purposeFilter", true) .setNumberOfRows(10).build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.banking.ManageTransactionsPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<Transaction> builder = new AjaxFallbackDefaultDataTableBuilder<Transaction>( ManageTransactionsPanel.this); Component table = builder.addDataProvider(getDataProvider()).add(new AbstractColumn<Transaction, String>( new StringResourceModel("actions.label", ManageTransactionsPanel.this, null)) { @Override//w w w. j ava 2 s . com public void populateItem(Item<ICellPopulator<Transaction>> cellItem, String componentId, IModel<Transaction> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final Transaction transaction = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(Model.of(transaction))); } }); // TODO only delete rights not in use ButtonGroup bg = new ButtonGroup(componentId) { @Override protected List<AbstractLink> newButtons(String buttonMarkupId) { List<AbstractLink> res = new ArrayList<AbstractLink>(); // Edit Button BootstrapAjaxLink<String> edit = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(Model.of(transaction))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); // Create Filter Button BootstrapAjaxLink<String> createFilter = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getCreateFilterPanel(Model.of(transaction))); } }; createFilter.setIconType(GlyphIconType.barcode); createFilter.setSize(Buttons.Size.Mini); res.add(createFilter); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("hashCode", true).addPropertyColumn("category", true) .addPropertyColumn("accountNumber", true).addPropertyColumn("accountingDate", true) .addPropertyColumn("valutaDate", true).addPropertyColumn("principal", true) .addPropertyColumn("accountingText", true).addPropertyColumn("purpose", true) .addMoneyPropertyColumn("amount", true).addPropertyColumn("transactionCurrency", true) .addPropertyColumn("balance", true).addPropertyColumn("balanceCurrency", true).setNumberOfRows(10) .build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.banking.summery.TransactionSummeryPanel.java
License:Apache License
private Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<TransactionSummary> builder = new AjaxFallbackDefaultDataTableBuilder<TransactionSummary>( TransactionSummeryPanel.this); Component table = builder.addDataProvider(getDataProvider()).addPropertyColumn("category", true) .addMoneyPropertyColumn("sum", true).setNumberOfRows(30).build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.banking.tagging.ManageTagsPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<Tag> builder = new AjaxFallbackDefaultDataTableBuilder<Tag>( ManageTagsPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<Tag>(tagRepository)) .add(new AbstractColumn<Tag, String>( new StringResourceModel("actions.label", ManageTagsPanel.this, null)) { @Override//from w w w . j ava 2 s. c o m public void populateItem(Item<ICellPopulator<Tag>> cellItem, String componentId, IModel<Tag> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final Tag tag = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<Tag>(tag))); } }); ButtonGroup bg = new ButtonGroup(componentId) { @Override protected List<AbstractLink> newButtons(String buttonMarkupId) { List<AbstractLink> res = new ArrayList<AbstractLink>(); BootstrapAjaxLink<String> edit = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<Tag>(tag))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); // Delete Tag BootstrapAjaxLink<String> delete = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.deleteTag(tag); target.add(ManageTagsPanel.this); } }; delete.setIconType(GlyphIconType.trash); delete.setSize(Buttons.Size.Mini); res.add(delete); // Filter anwenden BootstrapAjaxLink<String> apply = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.applyTagToTransactions(tag); target.add(ManageTagsPanel.this); } }; apply.setIconType(GlyphIconType.plus); apply.setSize(Buttons.Size.Mini); res.add(apply); // Filter entfernen BootstrapAjaxLink<String> remove = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { bankDataService.removeTagFromTransactions(tag); target.add(ManageTagsPanel.this); } }; remove.setIconType(GlyphIconType.minus); remove.setSize(Buttons.Size.Mini); res.add(remove); return res; } }; cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("name", true) .addPropertyColumn("description", false).setNumberOfRows(10).build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }