List of usage examples for org.apache.wicket.model AbstractReadOnlyModel AbstractReadOnlyModel
AbstractReadOnlyModel
From source file:com.evolveum.midpoint.web.page.admin.configuration.PageEvaluateMapping.java
License:Apache License
private void initLayout() { Form mainForm = new Form(ID_MAIN_FORM); add(mainForm);/*w w w.j a v a 2 s. c o m*/ AceEditor editorMapping = new AceEditor(ID_EDITOR_MAPPING, new PropertyModel<String>(model, ExecuteMappingDto.F_MAPPING)); editorMapping.setHeight(400); editorMapping.setResizeToMaxHeight(false); mainForm.add(editorMapping); AceEditor editorRequest = new AceEditor(ID_EDITOR_REQUEST, new PropertyModel<String>(model, ExecuteMappingDto.F_REQUEST)); editorRequest.setHeight(430); editorRequest.setResizeToMaxHeight(false); mainForm.add(editorRequest); AjaxSubmitButton evaluateMapping = new AjaxSubmitButton(ID_EXECUTE, createStringResource("PageEvaluateMapping.button.evaluateMapping")) { @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(getFeedbackPanel()); } @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { executeMappingPerformed(target); } }; mainForm.add(evaluateMapping); final DropDownChoice<String> sampleChoice = new DropDownChoice<>(ID_MAPPING_SAMPLE, Model.of(""), new AbstractReadOnlyModel<List<String>>() { @Override public List<String> getObject() { return SAMPLES; } }, new StringResourceChoiceRenderer("PageEvaluateMapping.sample")); sampleChoice.setNullValid(true); sampleChoice.add(new OnChangeAjaxBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { String sampleName = sampleChoice.getModelObject(); if (StringUtils.isEmpty(sampleName)) { return; } model.getObject().setMapping(readResource(SAMPLES_DIR + "/" + sampleName + ".map.xml.data")); model.getObject().setRequest(readResource(SAMPLES_DIR + "/" + sampleName + ".req.xml.data")); model.getObject().setResultText(""); target.add(PageEvaluateMapping.this); } private String readResource(String name) { InputStream is = PageEvaluateMapping.class.getResourceAsStream(name); if (is != null) { try { return IOUtils.toString(is, "UTF-8"); } catch (IOException e) { LoggingUtils.logUnexpectedException(LOGGER, "Couldn't read sample from resource {}", e, name); } finally { IOUtils.closeQuietly(is); } } else { LOGGER.warn("Resource {} containing sample couldn't be found", name); } return null; } }); mainForm.add(sampleChoice); AceEditor resultText = new AceEditor(ID_RESULT_TEXT, new PropertyModel<String>(model, ExecuteMappingDto.F_RESULT_TEXT)); resultText.setReadonly(true); resultText.setHeight(300); resultText.setResizeToMaxHeight(false); resultText.setMode(null); mainForm.add(resultText); }
From source file:com.evolveum.midpoint.web.page.admin.configuration.PageRepositoryQuery.java
License:Apache License
private void initLayout() { Form mainForm = new Form(ID_MAIN_FORM); add(mainForm);//from w ww . j a va 2s .com List<QName> objectTypeList = WebComponentUtil.createObjectTypeList(); Collections.sort(objectTypeList, new Comparator<QName>() { @Override public int compare(QName o1, QName o2) { return String.CASE_INSENSITIVE_ORDER.compare(o1.getLocalPart(), o2.getLocalPart()); } }); DropDownChoice<QName> objectTypeChoice = new DropDownChoice<>(ID_OBJECT_TYPE, new PropertyModel<QName>(model, RepoQueryDto.F_OBJECT_TYPE), new ListModel<>(objectTypeList), new QNameChoiceRenderer()); objectTypeChoice.setOutputMarkupId(true); objectTypeChoice.setNullValid(true); objectTypeChoice.add(new OnChangeAjaxBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { target.add(get(ID_MAIN_FORM).get(ID_MIDPOINT_QUERY_BUTTON_BAR)); } }); mainForm.add(objectTypeChoice); AceEditor editorMidPoint = new AceEditor(ID_EDITOR_MIDPOINT, new PropertyModel<String>(model, RepoQueryDto.F_MIDPOINT_QUERY)); editorMidPoint.setHeight(400); editorMidPoint.setResizeToMaxHeight(false); mainForm.add(editorMidPoint); AceEditor editorHibernate = new AceEditor(ID_EDITOR_HIBERNATE, new PropertyModel<String>(model, RepoQueryDto.F_HIBERNATE_QUERY)); editorHibernate.setHeight(300); editorHibernate.setResizeToMaxHeight(false); editorHibernate.setReadonly(!isAdmin); editorHibernate.setMode(null); mainForm.add(editorHibernate); AceEditor hibernateParameters = new AceEditor(ID_HIBERNATE_PARAMETERS, new PropertyModel<String>(model, RepoQueryDto.F_HIBERNATE_PARAMETERS)); hibernateParameters.setReadonly(true); hibernateParameters.setHeight(100); hibernateParameters.setResizeToMaxHeight(false); hibernateParameters.setMode(null); mainForm.add(hibernateParameters); WebMarkupContainer hibernateParametersNote = new WebMarkupContainer(ID_HIBERNATE_PARAMETERS_NOTE); hibernateParametersNote.setVisible(isAdmin); mainForm.add(hibernateParametersNote); WebMarkupContainer midPointQueryButtonBar = new WebMarkupContainer(ID_MIDPOINT_QUERY_BUTTON_BAR); midPointQueryButtonBar.setOutputMarkupId(true); mainForm.add(midPointQueryButtonBar); AjaxSubmitButton executeMidPoint = new AjaxSubmitButton(ID_EXECUTE_MIDPOINT, createStringResource("PageRepositoryQuery.button.translateAndExecute")) { @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(getFeedbackPanel()); } @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { queryPerformed(Action.EXECUTE_MIDPOINT, target); } }; midPointQueryButtonBar.add(executeMidPoint); AjaxSubmitButton compileMidPoint = new AjaxSubmitButton(ID_COMPILE_MIDPOINT, createStringResource("PageRepositoryQuery.button.translate")) { @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(getFeedbackPanel()); } @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { queryPerformed(Action.TRANSLATE_ONLY, target); } }; midPointQueryButtonBar.add(compileMidPoint); AjaxSubmitButton useInObjectList = new AjaxSubmitButton(ID_USE_IN_OBJECT_LIST, createStringResource("PageRepositoryQuery.button.useInObjectList")) { @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(getFeedbackPanel()); } @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { useInObjectListPerformed(target); } }; useInObjectList.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return USE_IN_OBJECT_LIST_AVAILABLE_FOR.contains(model.getObject().getObjectType()); } }); midPointQueryButtonBar.add(useInObjectList); final DropDownChoice<String> sampleChoice = new DropDownChoice<>(ID_QUERY_SAMPLE, Model.of(""), new AbstractReadOnlyModel<List<String>>() { @Override public List<String> getObject() { return SAMPLES; } }, new StringResourceChoiceRenderer("PageRepositoryQuery.sample")); sampleChoice.setNullValid(true); sampleChoice.add(new OnChangeAjaxBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { String sampleName = sampleChoice.getModelObject(); if (StringUtils.isEmpty(sampleName)) { return; } String resourceName = SAMPLES_DIR + "/" + sampleName + ".xml.data"; InputStream is = PageRepositoryQuery.class.getResourceAsStream(resourceName); if (is != null) { try { String localTypeName = StringUtils.substringBefore(sampleName, "_"); model.getObject().setObjectType(new QName(SchemaConstants.NS_C, localTypeName)); model.getObject().setMidPointQuery(IOUtils.toString(is, "UTF-8")); model.getObject().setHibernateQuery(""); model.getObject().setHibernateParameters(""); model.getObject().setQueryResultObject(null); model.getObject().resetQueryResultText(); target.add(PageRepositoryQuery.this); } catch (IOException e) { LoggingUtils.logUnexpectedException(LOGGER, "Couldn't read sample from resource {}", e, resourceName); } } else { LOGGER.warn("Resource {} containing sample couldn't be found", resourceName); } } }); mainForm.add(sampleChoice); AjaxSubmitButton executeHibernate = new AjaxSubmitButton(ID_EXECUTE_HIBERNATE, createStringResource("PageRepositoryQuery.button.execute")) { @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(getFeedbackPanel()); } @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { queryPerformed(Action.EXECUTE_HIBERNATE, target); } }; executeHibernate.setVisible(isAdmin); mainForm.add(executeHibernate); Label resultLabel = new Label(ID_RESULT_LABEL, new AbstractReadOnlyModel<String>() { @Override public String getObject() { if (model.getObject().getQueryResultText() == null) { return ""; } Object queryResult = model.getObject().getQueryResultObject(); if (queryResult instanceof List) { return getString("PageRepositoryQuery.resultObjects", ((List) queryResult).size()); } else if (queryResult instanceof Throwable) { return getString("PageRepositoryQuery.resultException", queryResult.getClass().getName()); } else { // including null return getString("PageRepositoryQuery.result"); } } }); mainForm.add(resultLabel); WebMarkupContainer incompleteResultsNote = new WebMarkupContainer(ID_INCOMPLETE_RESULTS_NOTE); incompleteResultsNote.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return !isAdmin && model.getObject().getQueryResultText() != null; } }); mainForm.add(incompleteResultsNote); AceEditor resultText = new AceEditor(ID_RESULT_TEXT, new PropertyModel<String>(model, RepoQueryDto.F_QUERY_RESULT_TEXT)); resultText.setReadonly(true); resultText.setHeight(300); resultText.setResizeToMaxHeight(false); resultText.setMode(null); resultText.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return model.getObject().getQueryResultText() != null; } }); mainForm.add(resultText); }
From source file:com.evolveum.midpoint.web.page.admin.home.component.MyAssignmentsPanel.java
License:Apache License
@Override protected void initLayout() { List<IColumn<AssignmentItemDto, String>> columns = new ArrayList<IColumn<AssignmentItemDto, String>>(); columns.add(new IconColumn<AssignmentItemDto>(createStringResource("MyAssignmentsPanel.assignment.type")) { @Override/*from w w w . j a v a2 s.c o m*/ protected IModel<String> createIconModel(final IModel<AssignmentItemDto> rowModel) { return new AbstractReadOnlyModel<String>() { @Override public String getObject() { AssignmentItemDto item = rowModel.getObject(); if (item.getType() == null) { return "silk-error"; } switch (item.getType()) { case ACCOUNT_CONSTRUCTION: return "silk-drive"; case ORG_UNIT: return "silk-building"; case ROLE: return "silk-user_suit"; default: return "silk-error"; } } }; } @Override protected IModel<String> createTitleModel(final IModel<AssignmentItemDto> rowModel) { return new AbstractReadOnlyModel<String>() { @Override public String getObject() { AssignmentItemDto item = rowModel.getObject(); if (item.getType() == null) { return MyAssignmentsPanel.this.getString("MyAssignmentsPanel.type.error"); } switch (item.getType()) { case ACCOUNT_CONSTRUCTION: return MyAssignmentsPanel.this.getString("MyAssignmentsPanel.type.accountConstruction"); case ORG_UNIT: return MyAssignmentsPanel.this.getString("MyAssignmentsPanel.type.orgUnit"); case ROLE: return MyAssignmentsPanel.this.getString("MyAssignmentsPanel.type.role"); default: return MyAssignmentsPanel.this.getString("MyAssignmentsPanel.type.error"); } } }; } }); columns.add(new AbstractColumn<AssignmentItemDto, String>( createStringResource("MyAssignmentsPanel.assignment.displayName")) { @Override public void populateItem(Item<ICellPopulator<AssignmentItemDto>> cellItem, String componentId, final IModel<AssignmentItemDto> rowModel) { AssignmentHeaderPanel panel = new AssignmentHeaderPanel(componentId, rowModel); panel.add(new AttributeModifier("class", "dashAssignmentHeader")); cellItem.add(panel); } }); ISortableDataProvider provider = new ListDataProvider(this, getModel()); TablePanel accountsTable = new TablePanel<AssignmentItemDto>(ID_ASSIGNMETNS_TABLE, provider, columns); accountsTable.setShowPaging(false); add(accountsTable); }
From source file:com.evolveum.midpoint.web.page.admin.home.component.PersonalInfoPanel.java
License:Apache License
@Override protected void initLayout() { Label lastLoginDate = new Label(ID_LAST_LOGIN_DATE, new AbstractReadOnlyModel<String>() { @Override/*from w ww. jav a 2 s . com*/ public String getObject() { PersonalInfoDto dto = getModel().getObject(); return dto.getLastLoginDate() != null ? WebMiscUtil.formatDate(dto.getLastLoginDate()) : PersonalInfoPanel.this.getString("PersonalInfoPanel.never"); } }); add(lastLoginDate); Label lastLoginFrom = new Label(ID_LAST_LOGIN_FROM, new AbstractReadOnlyModel<String>() { @Override public String getObject() { PersonalInfoDto dto = getModel().getObject(); return StringUtils.isNotEmpty(dto.getLastLoginFrom()) ? dto.getLastLoginFrom() : PersonalInfoPanel.this.getString("PersonalInfoPanel.undefined"); } }); add(lastLoginFrom); Label lastFailDate = new Label(ID_LAST_FAIL_DATE, new AbstractReadOnlyModel<String>() { @Override public String getObject() { PersonalInfoDto dto = getModel().getObject(); return dto.getLastFailDate() != null ? WebMiscUtil.formatDate(dto.getLastFailDate()) : PersonalInfoPanel.this.getString("PersonalInfoPanel.never"); } }); add(lastFailDate); Label lastFailFrom = new Label(ID_LAST_FAIL_FROM, new AbstractReadOnlyModel<String>() { @Override public String getObject() { PersonalInfoDto dto = getModel().getObject(); return StringUtils.isNotEmpty(dto.getLastFailFrom()) ? dto.getLastFailFrom() : PersonalInfoPanel.this.getString("PersonalInfoPanel.undefined"); } }); add(lastFailFrom); Label passwordExp = new Label(ID_PASSWORD_EXP, new AbstractReadOnlyModel<String>() { @Override public String getObject() { PersonalInfoDto dto = getModel().getObject(); return dto.getPasswordExp() != null ? WebMiscUtil.formatDate(dto.getPasswordExp()) : PersonalInfoPanel.this.getString("PersonalInfoPanel.undefined"); } }); add(passwordExp); }
From source file:com.evolveum.midpoint.web.page.admin.home.component.SimplePieChart.java
License:Apache License
@Override protected void initLayout() { WebMarkupContainer chart = new WebMarkupContainer(ID_CHART); chart.setOutputMarkupId(true);/* w w w . j ava2 s. c om*/ chart.add(AttributeModifier.replace("data-percent", new PropertyModel(getModel(), "percent"))); add(chart); Label value = new Label(ID_VALUE, new PropertyModel(getModel(), "percent")); chart.add(value); Label unit = new Label(ID_UNIT, new PropertyModel<Object>(getModel(), SimplePieChartDto.F_UNIT)); chart.add(unit); Label label = new Label(ID_LABEL, new AbstractReadOnlyModel<String>() { @Override public String getObject() { return createStringResource(getModel().getObject().getLabel()).getString(); } }); add(label); }
From source file:com.evolveum.midpoint.web.page.admin.orgs.OrgTreePanel.java
License:Apache License
private void initLayout() { WebMarkupContainer treeHeader = new WebMarkupContainer(ID_TREE_HEADER); treeHeader.setOutputMarkupId(true);/*from w w w . j av a 2 s . c o m*/ add(treeHeader); String title = StringUtils.isEmpty(treeTitleKey) ? "TreeTablePanel.hierarchy" : treeTitleKey; Label treeTitle = new Label(ID_TREE_TITLE, createStringResource(title)); treeHeader.add(treeTitle); InlineMenu treeMenu = new InlineMenu(ID_TREE_MENU, new Model<>((Serializable) createTreeMenuInternal())); treeHeader.add(treeMenu); ISortableTreeProvider provider = new OrgTreeProvider(this, getModel()) { @Override protected List<InlineMenuItem> createInlineMenuItems() { return createTreeChildrenMenu(); } }; List<IColumn<SelectableBean<OrgType>, String>> columns = new ArrayList<>(); if (selectable) { columns.add(new CheckBoxHeaderColumn<SelectableBean<OrgType>>()); } columns.add( new TreeColumn<SelectableBean<OrgType>, String>(createStringResource("TreeTablePanel.hierarchy"))); columns.add(new InlineMenuHeaderColumn(createTreeChildrenMenu())); WebMarkupContainer treeContainer = new WebMarkupContainer(ID_TREE_CONTAINER) { @Override public void renderHead(IHeaderResponse response) { super.renderHead(response); // method computes height based on document.innerHeight() - // screen height; Component form = OrgTreePanel.this.getParent().get("memberPanel"); if (form != null) { response.render(OnDomReadyHeaderItem .forScript("updateHeight('" + getMarkupId() + "', ['#" + form.getMarkupId() + "'], ['#" + OrgTreePanel.this.get(ID_TREE_HEADER).getMarkupId() + "'])")); } } }; add(treeContainer); TableTree<SelectableBean<OrgType>, String> tree = new TableTree<SelectableBean<OrgType>, String>(ID_TREE, columns, provider, Integer.MAX_VALUE, new TreeStateModel(this, provider)) { @Override protected Component newContentComponent(String id, IModel<SelectableBean<OrgType>> model) { return new SelectableFolderContent(id, this, model, selected) { @Override protected void onClick(AjaxRequestTarget target) { super.onClick(target); MidPointAuthWebSession session = OrgTreePanel.this.getSession(); SessionStorage storage = session.getSessionStorage(); storage.getUsers().setSelectedItem(selected.getObject()); selectTreeItemPerformed(selected.getObject(), target); } }; } @Override protected Item<SelectableBean<OrgType>> newRowItem(String id, int index, final IModel<SelectableBean<OrgType>> model) { Item<SelectableBean<OrgType>> item = super.newRowItem(id, index, model); item.add(AttributeModifier.append("class", new AbstractReadOnlyModel<String>() { @Override public String getObject() { SelectableBean<OrgType> itemObject = model.getObject(); if (itemObject != null && itemObject.equals(selected.getObject())) { return "success"; } return null; } })); return item; } @Override public void collapse(SelectableBean<OrgType> collapsedItem) { super.collapse(collapsedItem); MidPointAuthWebSession session = OrgTreePanel.this.getSession(); SessionStorage storage = session.getSessionStorage(); Set<SelectableBean<OrgType>> items = storage.getUsers().getExpandedItems(); if (items != null && items.contains(collapsedItem)) { items.remove(collapsedItem); } storage.getUsers().setExpandedItems((TreeStateSet) items); storage.getUsers().setCollapsedItem(collapsedItem); } @Override protected void onModelChanged() { super.onModelChanged(); Set<SelectableBean<OrgType>> items = getModelObject(); MidPointAuthWebSession session = OrgTreePanel.this.getSession(); SessionStorage storage = session.getSessionStorage(); storage.getUsers().setExpandedItems((TreeStateSet<SelectableBean<OrgType>>) items); } }; tree.setItemReuseStrategy(new ReuseIfModelsEqualStrategy()); tree.getTable().add(AttributeModifier.replace("class", "table table-striped table-condensed")); tree.add(new WindowsTheme()); // tree.add(AttributeModifier.replace("class", "tree-midpoint")); treeContainer.add(tree); }
From source file:com.evolveum.midpoint.web.page.admin.reports.PageCreatedReports.java
License:Apache License
@Override protected IModel<String> createPageSubTitleModel() { return new AbstractReadOnlyModel<String>() { @Override/* w w w . java 2s .c om*/ public String getObject() { return createStringResource("page.subTitle").getString(); } }; }
From source file:com.evolveum.midpoint.web.page.admin.reports.PageCreatedReports.java
License:Apache License
private void initSearchForm() { Form searchForm = new Form(ID_SEARCH_FORM); add(searchForm);//www . j a v a2 s .co m //TODO - commented until FileType property will be available in ReportOutputType /* DropDownChoice filetypeSelect = new DropDownChoice(ID_FILTER_FILE_TYPE, new PropertyModel(searchModel, ReportOutputDto.F_FILE_TYPE), new AbstractReadOnlyModel<List<ExportType>>() { @Override public List<ExportType> getObject() { return createFileTypeList(); } }, new EnumChoiceRenderer(PageCreatedReports.this)); filetypeSelect.add(new OnChangeAjaxBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { fileTypeFilterPerformed(target); } }); filetypeSelect.setOutputMarkupId(true); if(filetypeSelect.getModel().getObject() == null){ filetypeSelect.getModel().setObject(null); } searchForm.add(filetypeSelect); */ DropDownChoice reportTypeSelect = new DropDownChoice(ID_REPORT_TYPE_SELECT, new PropertyModel(searchModel, ReportOutputSearchDto.F_REPORT_TYPE), new AbstractReadOnlyModel<List<String>>() { @Override public List getObject() { return createReportTypeList(); } }, new ChoiceRenderer()) { @Override protected String getNullValidDisplayValue() { return getString("pageCreatedReports.filter.reportType"); } }; reportTypeSelect.add(new OnChangeAjaxBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { reportTypeFilterPerformed(target); } }); reportTypeSelect.setOutputMarkupId(true); reportTypeSelect.setNullValid(true); if (getPageParameters().get(OnePageParameterEncoder.PARAMETER) != null) { createReportTypeList(); for (String key : searchModel.getObject().getReportTypeMap().keySet()) { if (searchModel.getObject().getReportTypeMap().get(key) .equals(getPageParameters().get(OnePageParameterEncoder.PARAMETER).toString())) { reportTypeSelect.getModel().setObject(key); } } } searchForm.add(reportTypeSelect); BasicSearchPanel<ReportOutputSearchDto> basicSearch = new BasicSearchPanel<ReportOutputSearchDto>( ID_BASIC_SEARCH) { @Override protected IModel<String> createSearchTextModel() { return new PropertyModel<>(searchModel, ReportOutputSearchDto.F_TEXT); } @Override protected void searchPerformed(AjaxRequestTarget target) { PageCreatedReports.this.searchPerformed(target); } @Override protected void clearSearchPerformed(AjaxRequestTarget target) { PageCreatedReports.this.clearSearchPerformed(target); } }; searchForm.add(basicSearch); }
From source file:com.evolveum.midpoint.web.page.admin.reports.PageCreatedReports.java
License:Apache License
private List<IColumn<SelectableBean<ReportOutputType>, String>> initColumns( final AjaxDownloadBehaviorFromStream ajaxDownloadBehavior) { List<IColumn<SelectableBean<ReportOutputType>, String>> columns = new ArrayList<>(); IColumn column;/*from w ww .ja v a 2 s . c o m*/ column = new CheckBoxHeaderColumn(); columns.add(column); column = new PropertyColumn(createStringResource("pageCreatedReports.table.name"), "name", "value.name"); columns.add(column); column = new PropertyColumn(createStringResource("pageCreatedReports.table.description"), "value.description"); columns.add(column); column = new AbstractColumn<SelectableBean<ReportOutputType>, String>( createStringResource("pageCreatedReports.table.time"), "createTimestamp") { @Override public void populateItem(Item<ICellPopulator<SelectableBean<ReportOutputType>>> cellItem, String componentId, final IModel<SelectableBean<ReportOutputType>> rowModel) { cellItem.add(new Label(componentId, new AbstractReadOnlyModel() { @Override public Object getObject() { ReportOutputType object = rowModel.getObject().getValue(); MetadataType metadata = object.getMetadata(); if (metadata == null) { return null; } return WebMiscUtil.formatDate(metadata.getCreateTimestamp()); } })); } }; columns.add(column); column = new DoubleButtonColumn<SelectableBean<ReportOutputType>>(new Model(), null) { @Override public String getFirstCap() { return createStringResource("pageCreatedReports.button.download").getString(); } @Override public String getSecondCap() { return ""; } @Override public String getFirstColorCssClass() { return BUTTON_COLOR_CLASS.PRIMARY.toString(); } @Override public String getSecondColorCssClass() { return BUTTON_COLOR_CLASS.DANGER.toString() + " glyphicon glyphicon-trash"; } @Override public void firstClicked(AjaxRequestTarget target, IModel<SelectableBean<ReportOutputType>> model) { currentReport = model.getObject().getValue(); downloadPerformed(target, model.getObject().getValue(), ajaxDownloadBehavior); } @Override public void secondClicked(AjaxRequestTarget target, IModel<SelectableBean<ReportOutputType>> model) { deleteSelectedPerformed(target, ReportDeleteDialogDto.Operation.DELETE_SINGLE, model.getObject().getValue()); } @Override public String getSecondSizeCssClass() { return BUTTON_SIZE_CLASS.SMALL.toString(); } }; columns.add(column); column = new InlineMenuHeaderColumn<InlineMenuable>(initInlineMenu()) { @Override public void populateItem(Item<ICellPopulator<InlineMenuable>> cellItem, String componentId, IModel<InlineMenuable> rowModel) { cellItem.add(new Label(componentId)); } }; columns.add(column); return columns; }
From source file:com.evolveum.midpoint.web.page.admin.reports.PageCreatedReports.java
License:Apache License
private IModel<String> createDeleteConfirmString() { return new AbstractReadOnlyModel<String>() { @Override/* w w w. j a v a 2s. com*/ public String getObject() { ReportDeleteDialogDto dto = deleteModel.getObject(); switch (dto.getOperation()) { case DELETE_SINGLE: ReportOutputType report = dto.getObjects().get(0); return createStringResource("pageCreatedReports.message.deleteOutputSingle", report.getName().getOrig()).getString(); case DELETE_ALL: return createStringResource("pageCreatedReports.message.deleteAll").getString(); default: return createStringResource("pageCreatedReports.message.deleteOutputConfirmed", getSelectedData().size()).getString(); } } }; }