List of usage examples for org.apache.wicket.markup.html.basic MultiLineLabel add
public Component add(final Behavior... behaviors)
From source file:com.doculibre.constellio.wicket.panels.admin.thesaurus.AddEditThesaurusPanel.java
License:Open Source License
public AddEditThesaurusPanel(String id) { super(id, false); this.thesaurusModel = new EntityModel<Thesaurus>(new LoadableDetachableModel() { @Override/*from w ww . jav a 2 s .c om*/ protected Object load() { AdminCollectionPanel collectionAdminPanel = (AdminCollectionPanel) findParent( AdminCollectionPanel.class); RecordCollection collection = collectionAdminPanel.getCollection(); Thesaurus thesaurus = collection.getThesaurus(); return thesaurus != null ? thesaurus : newThesaurus; } }); Form form = getForm(); form.setModel(new CompoundPropertyModel(thesaurusModel)); final List<String> errorMessages = new ArrayList<String>(); errorsModalWindow = new ModalWindow("errorsModal"); errorsModalWindow.setCssClassName(ModalWindow.CSS_CLASS_GRAY); skosFileField = new FileUploadField("skosFile"); uploadButton = new Button("uploadButton") { @Override public void onSubmit() { errorMessages.clear(); FileUpload upload = skosFileField.getFileUpload(); if (upload != null) { try { skosFile = upload.writeToTempFile(); } catch (IOException e) { throw new WicketRuntimeException(e); } } AddEditThesaurusPanel.this.add(new AbstractAjaxTimerBehavior(Duration.seconds(1)) { @Override protected void onTimer(AjaxRequestTarget target) { stop(); if (!importing && skosFile != null && skosFile.exists()) { importing = true; importCompleted = false; progressInfo = new ProgressInfo(); progressPanel.start(target); getForm().modelChanging(); new Thread() { @Override public void run() { try { SkosServices skosServices = ConstellioSpringUtils.getSkosServices(); FileInputStream is = new FileInputStream(skosFile); AdminCollectionPanel collectionAdminPanel = (AdminCollectionPanel) findParent( AdminCollectionPanel.class); RecordCollection collection = collectionAdminPanel.getCollection(); Thesaurus importedThesaurus = skosServices.importThesaurus(is, progressInfo, errorMessages); List<ImportThesaurusPlugin> importThesaurusPlugins = PluginFactory .getPlugins(ImportThesaurusPlugin.class); if (!importThesaurusPlugins.isEmpty()) { for (ImportThesaurusPlugin importThesaurusPlugin : importThesaurusPlugins) { is = new FileInputStream(skosFile); importThesaurusPlugin.afterUpload(is, importedThesaurus, collection); } } FileUtils.deleteQuietly(skosFile); thesaurusModel.setObject(importedThesaurus); importing = false; importCompleted = true; } catch (FileNotFoundException e) { throw new WicketRuntimeException(e); } } }.start(); } } }); } }; uploadButton.setDefaultFormProcessing(false); progressInfo = new ProgressInfo(); progressInfoModel = new LoadableDetachableModel() { @Override protected Object load() { return progressInfo; } }; progressPanel = new ProgressPanel("progressPanel", progressInfoModel) { @Override protected void onFinished(AjaxRequestTarget target) { // while (!importCompleted) { // // Wait for the import to be completed // try { // Thread.sleep(500); // } catch (InterruptedException e) { // throw new WicketRuntimeException(e); // } // } target.addComponent(rdfAbout); target.addComponent(dcTitle); target.addComponent(dcDescription); target.addComponent(dcDate); target.addComponent(dcCreator); if (!errorMessages.isEmpty()) { IModel errorMsgModel = new LoadableDetachableModel() { @Override protected Object load() { StringBuffer sb = new StringBuffer(); for (String errorMsg : errorMessages) { sb.append(errorMsg); sb.append("\n"); } return sb.toString(); } }; MultiLineLabel multiLineLabel = new MultiLineLabel(errorsModalWindow.getContentId(), errorMsgModel); multiLineLabel.add(new SimpleAttributeModifier("style", "text-align:left;")); errorsModalWindow.setContent(multiLineLabel); errorsModalWindow.show(target); } } }; progressPanel.setVisible(false); deleteButton = new Button("deleteButton") { @Override public void onSubmit() { Thesaurus thesaurus = thesaurusModel.getObject(); if (thesaurus.getId() != null) { SkosServices skosServices = ConstellioSpringUtils.getSkosServices(); EntityManager entityManager = ConstellioPersistenceContext.getCurrentEntityManager(); if (!entityManager.getTransaction().isActive()) { entityManager.getTransaction().begin(); } skosServices.makeTransient(thesaurus); entityManager.getTransaction().commit(); AdminCollectionPanel collectionAdminPanel = (AdminCollectionPanel) findParent( AdminCollectionPanel.class); RecordCollection collection = collectionAdminPanel.getCollection(); collection.setThesaurus(null); AddEditThesaurusPanel.this.replaceWith(newReturnComponent(AddEditThesaurusPanel.this.getId())); } } @Override public boolean isVisible() { return super.isVisible() && thesaurusModel.getObject().getId() != null; } @Override protected String getOnClickScript() { String confirmMsg = getLocalizer().getString("confirmDelete", AddEditThesaurusPanel.this) .replace("'", "\\'"); return "if (confirm('" + confirmMsg + "')) { return true;} else { return false; }"; } }; deleteButton.setDefaultFormProcessing(false); rdfAbout = new Label("rdfAbout"); rdfAbout.setOutputMarkupId(true); dcTitle = new Label("dcTitle"); dcTitle.setOutputMarkupId(true); dcDescription = new Label("dcDescription"); dcDescription.setOutputMarkupId(true); dcDate = new Label("dcDate"); dcDate.setOutputMarkupId(true); dcCreator = new Label("dcCreator"); dcCreator.setOutputMarkupId(true); form.add(skosFileField); form.add(uploadButton); form.add(progressPanel); form.add(errorsModalWindow); form.add(deleteButton); form.add(rdfAbout); form.add(dcTitle); form.add(dcDescription); form.add(dcDate); form.add(dcCreator); }
From source file:com.evolveum.midpoint.web.page.forgetpassword.PageForgotPassword.java
License:Apache License
private void initButtons(Form<?> form) { AjaxSubmitButton submit = new AjaxSubmitButton(ID_SUBMIT, createStringResource("PageForgetPassword.resetPassword")) { private static final long serialVersionUID = 1L; @Override//from w ww . j a v a2s . c om protected void onSubmit(AjaxRequestTarget target) { processResetPassword(target, form); } @Override protected void onError(AjaxRequestTarget target) { target.add(getFeedbackPanel()); } }; submit.setOutputMarkupId(true); form.add(submit); form.setDefaultButton(submit); AjaxButton backButton = new AjaxButton(ID_BACK, createStringResource("PageForgetPassword.back")) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { setResponsePage(PageLogin.class); } }; backButton.setOutputMarkupId(true); form.add(backButton); add(form); MultiLineLabel label = new MultiLineLabel(ID_PASSWORD_RESET_SUBMITED, createStringResource("PageForgotPassword.form.submited.message")); add(label); label.add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isVisible() { return submited; } @Override public boolean isEnabled() { return submited; } }); }
From source file:com.francetelecom.clara.cloud.presentation.designer.panels.DesignerArchitectureConfigSetPanel.java
License:Apache License
private void initComponents() { entries = new ArrayList<DetailedConfigEntry>(); createConfigEntryList();//www .j av a2 s . c o m List<IColumn<DetailedConfigEntry, String>> columns = new ArrayList<IColumn<DetailedConfigEntry, String>>(); columns.add(new PropertyColumn<DetailedConfigEntry, String>( getStringResourceModel("portal.designer.config.summary.header.execNodeName"), "execNodeName")); columns.add(new PropertyColumn<DetailedConfigEntry, String>( getStringResourceModel("portal.designer.config.summary.header.configSetName"), "configSetName")); columns.add(new PropertyColumn<DetailedConfigEntry, String>( getStringResourceModel("portal.designer.config.summary.header.key"), "key")); columns.add(new PropertyColumn<DetailedConfigEntry, String>( getStringResourceModel("portal.designer.config.summary.header.value"), "value")); columns.add(new PropertyColumn<DetailedConfigEntry, String>( getStringResourceModel("portal.designer.config.summary.header.comment"), "comment") { private static final long serialVersionUID = 1321984147078227956L; @Override public void populateItem(Item<ICellPopulator<DetailedConfigEntry>> item, String componentId, IModel<DetailedConfigEntry> rowModel) { MultiLineLabel label = new MultiLineLabel(componentId, getDataModel(rowModel)); label.add(new AttributeAppender("class", "preserve_whitespace")); item.add(label); } }); AjaxFallbackCustomDataTable<DetailedConfigEntry, String> table = new AjaxFallbackCustomDataTable<>( "configList", columns, new ConfigEntryProvider(), PageTemplate.ROWS_PER_PAGE); add(table); if (entries.size() == 0) { this.setVisible(false); } }