List of usage examples for org.apache.wicket Component add
public Component add(final Behavior... behaviors)
From source file:de.inren.frontend.blogpost.ManageBlogPostsPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<BlogPost> builder = new AjaxFallbackDefaultDataTableBuilder<BlogPost>( ManageBlogPostsPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<BlogPost>(blogPostRepository)) .add(new AbstractColumn<BlogPost, String>( new StringResourceModel("actions.label", ManageBlogPostsPanel.this, null)) { @Override//from w w w . j a v a 2s . c o m public void populateItem(Item<ICellPopulator<BlogPost>> cellItem, String componentId, IModel<BlogPost> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final BlogPost blogPost = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<BlogPost>(blogPost))); } }); // TODO only delete blogPosts not in use 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<BlogPost>(blogPost))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("uid", true).addPropertyColumn("created", true) .addPropertyColumn("title", true).addPropertyColumn("state", true) .addBooleanPropertyColumn("availableForComment", true).addListProperty("roles", "name") .setNumberOfRows(10).build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.carlogbook.ManageCarLogEntriesPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<CarLogEntry> builder = new AjaxFallbackDefaultDataTableBuilder<CarLogEntry>( ManageCarLogEntriesPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<CarLogEntry>(logBookRepository)) .add(new AbstractColumn<CarLogEntry, String>( new StringResourceModel("actions.label", ManageCarLogEntriesPanel.this, null)) { @Override/*from ww w . jav a 2s. c om*/ public void populateItem(Item<ICellPopulator<CarLogEntry>> cellItem, String componentId, IModel<CarLogEntry> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final CarLogEntry group = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<CarLogEntry>(group))); } }); // TODO only delete groups not in use 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<CarLogEntry>(group))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("carId", true).addPropertyColumn("totalKm", true) .addPropertyColumn("fuel", true).addPropertyColumn("fuel", true).addPropertyColumn("oil", true) .addPropertyColumn("service", true).addPropertyColumn("pitStopDate", true) .addPropertyColumn("price", true).addPropertyColumn("station", true).setNumberOfRows(10).build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.carlogbook.ManageCarsPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<Car> builder = new AjaxFallbackDefaultDataTableBuilder<Car>( ManageCarsPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<Car>(carRepository)) .add(new AbstractColumn<Car, String>( new StringResourceModel("actions.label", ManageCarsPanel.this, null)) { @Override//from w w w . j a va 2 s . c o m public void populateItem(Item<ICellPopulator<Car>> cellItem, String componentId, IModel<Car> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final Car group = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<Car>(group))); } }); // TODO only delete groups not in use 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<Car>(group))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("plate", true) .addPropertyColumn("description", true).setNumberOfRows(10).build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.common.table.AjaxFallbackDefaultDataTableBuilder.java
License:Apache License
/** * /* w ww. j av a 2s .c o m*/ * @param id * @return the table */ public Component build(String id) { if (Strings.isNullOrEmpty(id) || columns.isEmpty() || dataProvider == null) { throw new IllegalStateException( "Can't create Table, not all elements are available. id=" + id + ", " + toString()); } Component table = new AjaxFallbackDefaultDataTable<T, String>(id, columns, dataProvider, numberOfRows); table.setOutputMarkupId(true); table.add(AttributeModifier.append("class", "table-bordered")); table.add(AttributeModifier.append("class", "table-hover")); table.add(AttributeModifier.append("class", "table-condensed")); table.add(AttributeModifier.append("class", "table-striped")); return table; }
From source file:de.inren.frontend.componentaccess.ManageComponentAccessPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<ComponentAccess> builder = new AjaxFallbackDefaultDataTableBuilder<ComponentAccess>( ManageComponentAccessPanel.this); Component table = builder .addDataProvider(new RepositoryDataProvider<ComponentAccess>(componentAccessRepository)) .add(new AbstractColumn<ComponentAccess, String>( new StringResourceModel("actions.label", ManageComponentAccessPanel.this, null)) { @Override/*from www. j av a2s . c o m*/ public void populateItem(Item<ICellPopulator<ComponentAccess>> cellItem, String componentId, IModel<ComponentAccess> rowModel) { final ComponentAccess componentAccess = rowModel.getObject(); 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<ComponentAccess>(componentAccess))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); return res; }; }; cellItem.add(bg); } }).addPropertyColumn("id", 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.dbproperty.ManageDbPropertiesPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<DbProperty> builder = new AjaxFallbackDefaultDataTableBuilder<DbProperty>( ManageDbPropertiesPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<DbProperty>(dbPropertyService)) .add(new AbstractColumn<DbProperty, String>( new StringResourceModel("actions.label", ManageDbPropertiesPanel.this, null)) { @Override//w w w .j a va2s . c o m public void populateItem(Item<ICellPopulator<DbProperty>> cellItem, String componentId, IModel<DbProperty> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final DbProperty right = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<DbProperty>(right))); } }); // 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>(); BootstrapAjaxLink<String> edit = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<DbProperty>(right))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("name", true).addPropertyColumn("host", true) .addPropertyColumn("value", true).addPropertyColumn("description", true).setNumberOfRows(10) .build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.group.ManageGroupsPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<Group> builder = new AjaxFallbackDefaultDataTableBuilder<Group>( ManageGroupsPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<Group>(groupRepository)) .add(new AbstractColumn<Group, String>( new StringResourceModel("actions.label", ManageGroupsPanel.this, null)) { @Override//from ww w . j a va 2 s . co m public void populateItem(Item<ICellPopulator<Group>> cellItem, String componentId, IModel<Group> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final Group group = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<Group>(group))); } }); // TODO only delete groups not in use 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<Group>(group))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("name", true) .addPropertyColumn("description", true).addListProperty("roles", "name").setNumberOfRows(10) .build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.health.ManageMeasurementsPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<Measurement> builder = new AjaxFallbackDefaultDataTableBuilder<Measurement>( ManageMeasurementsPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<Measurement>(measurementRepository) { @Override/*from ww w . ja va 2s . c om*/ protected Page<Measurement> getPage(Pageable pageable) { return measurementRepository.findByUid(getUser().getId(), pageable); } @Override public long size() { User user = getUser(); return user == null ? 0L : measurementRepository.findByUid(user.getId()).size(); } }).add(new AbstractColumn<Measurement, String>( new StringResourceModel("actions.label", ManageMeasurementsPanel.this, null)) { @Override public void populateItem(Item<ICellPopulator<Measurement>> cellItem, String componentId, IModel<Measurement> rowModel) { final Measurement measurement = rowModel.getObject(); 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<Measurement>(measurement))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); BootstrapAjaxLink<String> delete = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { try { // feedback getSession().getFeedbackMessages().clear(); target.add(getFeedback()); // delete measurementRepository.delete(measurement.getId()); // manage Component table = getTable(id); ManageMeasurementsPanel.this.addOrReplace(table); target.add(table); } catch (Exception e) { error(e.getMessage()); target.add(getFeedback()); } } }; delete.setIconType(GlyphIconType.trash); delete.setSize(Buttons.Size.Mini); res.add(delete); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("uid", true) // .addPropertyColumn("weight", true) // .addPropertyColumn("fat", true) // .addPropertyColumn("water", true) .add(new HealthColumn<Measurement>( new StringResourceModel("weight.label", ManageMeasurementsPanel.this, null), "weight", "weight")) .add(new HealthColumn<Measurement>( new StringResourceModel("fat.label", ManageMeasurementsPanel.this, null), "fat", "fat")) .add(new HealthColumn<Measurement>( new StringResourceModel("water.label", ManageMeasurementsPanel.this, null), "water", "water")) .add(new HealthColumn<Measurement>( new StringResourceModel("muscle.label", ManageMeasurementsPanel.this, null), "muscle", "muscle")) .add(new HealthColumn<Measurement>( new StringResourceModel("bone.label", ManageMeasurementsPanel.this, null), "bone", "bone")) .setNumberOfRows(10) .build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.log4j.ManageLoggerSettingsPanel.java
License:Apache License
private Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<LoggerBean> builder = new AjaxFallbackDefaultDataTableBuilder<LoggerBean>( ManageLoggerSettingsPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<LoggerBean>(loggerBeanRepository) { @Override/* w ww . j a v a 2 s. c o m*/ protected Page<LoggerBean> getPage(final Pageable pageable) { if (filterSettings == null) { return getRepository().findAll(pageable); } final String name = Strings.isEmpty(filterSettings.getName()) ? "%" : "%" + filterSettings.getName() + "%"; final String level = Strings.isEmpty(filterSettings.getLevel()) ? null : "%" + filterSettings.getLevel() + "%"; if (level == null) { return ((LoggerBeanRepository) getRepository()).findByNameLike(name, pageable); } else { return ((LoggerBeanRepository) getRepository()).findByNameLikeAndLevelLike(name, level, pageable); } } @Override public long size() { PageRequest page = new PageRequest(0, 100); return getPage(page).getTotalElements(); } }).addPropertyColumn("id", true).addPropertyColumn("name", true).addPropertyColumn("level", true) .add(new AbstractColumn<LoggerBean, String>( new StringResourceModel("level.label", ManageLoggerSettingsPanel.this, null)) { @Override public void populateItem(Item<ICellPopulator<LoggerBean>> cellItem, String componentId, IModel<LoggerBean> rowModel) { ListChoice<String> listChoice = new ListChoice<String>(ListChoiceMarkupContainer.CHOICES_ID, new PropertyModel<String>(rowModel.getObject(), "level"), loggerAdminService.getLogLevels()) { protected void onSelectionChanged(String level) { LoggerBean lb = rowModel.getObject(); loggerAdminService.setLevelAndSave(lb.getName(), level); }; @Override protected boolean wantOnSelectionChangedNotifications() { return true; } }; listChoice.setNullValid(true); listChoice.setMaxRows(1); ListChoiceMarkupContainer markup = new ListChoiceMarkupContainer(componentId, listChoice); cellItem.add(markup); } }).setNumberOfRows(10).build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }
From source file:de.inren.frontend.mailserver.ManageMailServerPanel.java
License:Apache License
@Override protected final Component getTable(final String id) { AjaxFallbackDefaultDataTableBuilder<MailServer> builder = new AjaxFallbackDefaultDataTableBuilder<MailServer>( ManageMailServerPanel.this); Component table = builder.addDataProvider(new RepositoryDataProvider<MailServer>(mailServerRepository)) .add(new AbstractColumn<MailServer, String>( new StringResourceModel("actions.label", ManageMailServerPanel.this, null)) { @Override/*from w ww .java 2 s .c o m*/ public void populateItem(Item<ICellPopulator<MailServer>> cellItem, String componentId, IModel<MailServer> rowModel) { final ActionPanelBuilder linkBuilder = ActionPanelBuilder.getBuilder(); final MailServer mailServer = rowModel.getObject(); // edit link linkBuilder.add(new EditActionLink(true) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<MailServer>(mailServer))); } }); // 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>(); BootstrapAjaxLink<String> edit = new BootstrapAjaxLink<String>("button", Buttons.Type.Menu) { @Override public void onClick(AjaxRequestTarget target) { delegate.switchToComponent(target, delegate.getEditPanel(new Model<MailServer>(mailServer))); } }; edit.setIconType(GlyphIconType.pencil); edit.setSize(Buttons.Size.Mini); res.add(edit); return res; } }; // bg.add(new ToolbarBehavior()); cellItem.add(bg); } }).addPropertyColumn("id", true).addPropertyColumn("name", true).addPropertyColumn("host", true) .addPropertyColumn("port", true).addPropertyColumn("username", true) .addPropertyColumn("password", true).addBooleanPropertyColumn("current").setNumberOfRows(10) .build(id); TableBehavior tableBehavior = new TableBehavior().bordered().condensed(); table.add(tableBehavior); return table; }