List of usage examples for com.vaadin.ui.themes ValoTheme BUTTON_DANGER
String BUTTON_DANGER
To view the source code for com.vaadin.ui.themes ValoTheme BUTTON_DANGER.
Click Source Link
From source file:com.mcparland.john.vaadin_mvn_arch.samples.crud.ProductForm.java
License:Apache License
public ProductForm(SampleCrudLogic sampleCrudLogic) { viewLogic = sampleCrudLogic;//from w w w.jav a 2 s . c om addStyleName("product-form-wrapper"); setId("product-form"); productName.setWidth("100%"); price.setConverter(new EuroConverter()); stockCount.setWidth("80px"); availability.setNullSelectionAllowed(false); availability.setTextInputAllowed(false); for (Availability s : Availability.values()) { availability.addItem(s); } category.setWidth("100%"); saveButton.addStyleName(ValoTheme.BUTTON_PRIMARY); cancelButton.addStyleName("cancel"); removeButton.addStyleName(ValoTheme.BUTTON_DANGER); VerticalLayout layout = new VerticalLayout(); layout.setHeight("100%"); layout.setSpacing(true); layout.addStyleName("form-layout"); HorizontalLayout priceAndStock = new HorizontalLayout(price, stockCount); priceAndStock.setSpacing(true); priceAndStock.setWidth("100%"); price.setWidth("100%"); stockCount.setWidth("100%"); availability.setWidth("100%"); layout.addComponent(productName); layout.addComponent(priceAndStock); layout.addComponent(availability); layout.addComponent(category); CssLayout expander = new CssLayout(); expander.addStyleName("expander"); layout.addComponent(expander); layout.setExpandRatio(expander, 1); layout.addComponent(saveButton); layout.addComponent(cancelButton); layout.addComponent(removeButton); addComponent(layout); fieldGroup = new BeanFieldGroup<Product>(Product.class); fieldGroup.bindMemberFields(this); // perform validation and enable/disable buttons while editing ValueChangeListener valueListener = new ValueChangeListener() { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override public void valueChange(ValueChangeEvent event) { formHasChanged(); } }; for (Field<?> f : fieldGroup.getFields()) { f.addValueChangeListener(valueListener); } fieldGroup.addCommitHandler(new CommitHandler() { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override public void preCommit(CommitEvent commitEvent) throws CommitException { } @Override public void postCommit(CommitEvent commitEvent) throws CommitException { DataService.get().updateProduct(fieldGroup.getItemDataSource().getBean()); } }); saveButton.addClickListener(new ClickListener() { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(ClickEvent event) { try { fieldGroup.commit(); // only if validation succeeds Product product = fieldGroup.getItemDataSource().getBean(); viewLogic.saveProduct(product); } catch (CommitException e) { Notification n = new Notification("Please re-check the fields", Type.ERROR_MESSAGE); n.setDelayMsec(500); n.show(getUI().getPage()); } } }); cancelButton.setClickShortcut(KeyCode.ESCAPE); cancelButton.addClickListener(new ClickListener() { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(ClickEvent event) { viewLogic.cancelProduct(); } }); removeButton.addClickListener(new ClickListener() { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(ClickEvent event) { Product product = fieldGroup.getItemDataSource().getBean(); viewLogic.deleteProduct(product); } }); }
From source file:com.mechanicshop.components.TableLayout.java
private void buildLayout() { HorizontalLayout layoutTitle = new HorizontalLayout(); layoutTitle.setSizeUndefined();//from ww w . ja va 2 s . c o m layoutTitle.setWidth("100%"); layoutTitle.setSpacing(false); layoutTitle.setMargin(false); titleLabel.addStyleName(ValoTheme.LABEL_H2); titleLabel.addStyleName(ValoTheme.LABEL_COLORED); titleLabel.addStyleName(ValoTheme.LABEL_NO_MARGIN); titleLabel.addStyleName(ValoTheme.LABEL_BOLD); titleLabel.setSizeUndefined(); layoutTitle.addComponent(titleLabel); layoutTitle.setComponentAlignment(titleLabel, Alignment.MIDDLE_CENTER); VerticalLayout layoutTable = new VerticalLayout(); layoutTable.addComponent(table); layoutTable.setComponentAlignment(table, Alignment.TOP_CENTER); layoutTable.setSizeFull(); layoutTable.setSpacing(true); HorizontalLayout layoutButtons = new HorizontalLayout(); layoutButtons.setMargin(false); layoutButtons.setSpacing(true); layoutButtons.setSizeUndefined(); layoutButtons.setWidth("100%"); Button addBtn = new Button("Add new Car"); addBtn.addClickListener(addBtnListener); addBtn.setImmediate(true); addBtn.setStyleName(ValoTheme.BUTTON_TINY); addBtn.addStyleName(ValoTheme.BUTTON_FRIENDLY); Button deleteBtn = new Button("Delete Selected"); deleteBtn.setStyleName(ValoTheme.BUTTON_TINY); deleteBtn.addStyleName(ValoTheme.BUTTON_DANGER); deleteBtn.setImmediate(true); deleteBtn.addClickListener(removeListener); btnSendSMS.setStyleName(ValoTheme.BUTTON_TINY); btnSendSMS.addStyleName(ValoTheme.BUTTON_FRIENDLY); btnSendSMS.setImmediate(true); btnSendSMS.addClickListener(sendSMSBtnListener); searchTextField.setImmediate(true); searchTextField.addStyleName(ValoTheme.TEXTFIELD_TINY); searchTextField.addTextChangeListener(filterChangeListener); Label lbSearch = new Label("Search"); lbSearch.addStyleName(ValoTheme.LABEL_TINY); lbSearch.setSizeUndefined(); layoutButtons.addComponents(lbSearch, searchTextField, addBtn, deleteBtn, btnSendSMS); layoutButtons.setComponentAlignment(lbSearch, Alignment.MIDDLE_LEFT); layoutButtons.setComponentAlignment(searchTextField, Alignment.BOTTOM_LEFT); layoutButtons.setComponentAlignment(addBtn, Alignment.BOTTOM_RIGHT); layoutButtons.setComponentAlignment(deleteBtn, Alignment.BOTTOM_RIGHT); layoutButtons.setComponentAlignment(btnSendSMS, Alignment.BOTTOM_RIGHT); layoutButtons.setExpandRatio(addBtn, 3); addComponent(layoutTitle); addComponent(layoutTable); layoutTable.addComponent(layoutButtons); layoutTable.setExpandRatio(table, 3); setComponentAlignment(layoutTitle, Alignment.TOP_CENTER); setComponentAlignment(layoutTable, Alignment.TOP_CENTER); setExpandRatio(layoutTable, 3); setSpacing(true); setMargin(true); }
From source file:com.mechanicshop.components.TableLayout.java
public void createCustomMessage() { final TextArea textArea = new TextArea(); textArea.setImmediate(true);/*from w ww. j a va 2s . c o m*/ textArea.setColumns(30); textArea.setRows(10); textArea.addStyleName(ValoTheme.TEXTAREA_SMALL); textArea.setRequired(true); final Window subWindow = new Window(); subWindow.setModal(true); subWindow.setHeight("350px"); subWindow.setWidth("500px"); subWindow.setCaption("Insert Message"); subWindow.setStyleName(ValoTheme.WINDOW_TOP_TOOLBAR); subWindow.setClosable(false); subWindow.setResizable(false); HorizontalLayout layoutButtons = new HorizontalLayout(); layoutButtons.setMargin(false); Button sendBtn = new Button("Send"); sendBtn.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { try { textArea.validate(); String message = textArea.getValue(); smsSenderService.sendMessageMassive(message); subWindow.close(); Notification.show("Message Sent"); } catch (Exception e) { } } }); sendBtn.setImmediate(true); sendBtn.setStyleName(ValoTheme.BUTTON_TINY); sendBtn.addStyleName(ValoTheme.BUTTON_FRIENDLY); Button cancelBtn = new Button("Cancel"); cancelBtn.setStyleName(ValoTheme.BUTTON_TINY); cancelBtn.addStyleName(ValoTheme.BUTTON_DANGER); cancelBtn.setImmediate(true); cancelBtn.addClickListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { subWindow.close(); } }); layoutButtons.setSizeUndefined(); layoutButtons.setSpacing(true); layoutButtons.addComponents(cancelBtn, sendBtn); VerticalLayout layout = new VerticalLayout(); layout.setSpacing(true); layout.setMargin(true); layout.addComponent(textArea); layout.addComponent(layoutButtons); layout.setComponentAlignment(textArea, Alignment.MIDDLE_CENTER); layout.setComponentAlignment(layoutButtons, Alignment.MIDDLE_RIGHT); layout.setExpandRatio(textArea, 3); layout.setSizeFull(); subWindow.setContent(layout); subWindow.center(); getUI().addWindow(subWindow); }
From source file:com.mycompany.controller.initUImethods.java
public void createDeleteAllButton(Grid.FooterRow footer) { Button bt = new Button("Clear cart", e -> { cart.getContainerDataSource().removeAllItems(); sum = 0;// w w w . j a v a 2s . c om footer.getCell("Mennyisg").setText(Integer.toString(sum)); cartItems.clear(); }); bt.setStyleName(ValoTheme.BUTTON_DANGER); footer.getCell("tel").setComponent(bt); }
From source file:com.terralcode.gestion.frontend.view.widgets.appointment.AppointmentComplaintsPanel.java
private Component createDeleteButton(Window window) { Button delButton = new Button("Delete"); delButton.setStyleName(ValoTheme.BUTTON_DANGER); delButton.addClickListener(new Button.ClickListener() { @Override//w w w . j av a2 s .c o m public void buttonClick(Button.ClickEvent event) { BeanItem<Complaint> beanItem = (BeanItem<Complaint>) fieldGroup.getItemDataSource(); Complaint complaint = beanItem.getBean(); appointment.getComplaints().remove(complaint); refreshBind(); window.close(); } }); return delButton; }
From source file:control.WizardController.java
License:Open Source License
/** * Initialize all possible steps in the wizard and the listeners used *//*from w ww .j a v a 2 s .com*/ public void init(final String user) { WizardController control = this; this.w = new Wizard(); w.getFinishButton().setVisible(false); w.getFinishButton().setStyleName(ValoTheme.BUTTON_DANGER); w.getCancelButton().setStyleName(ValoTheme.BUTTON_DANGER); final ProjectInformationComponent projSelection = new ProjectInformationComponent(vocabularies.getSpaces(), vocabularies.getPeople().keySet()); final ProjectContextStep contextStep = new ProjectContextStep(projSelection); final EntityStep entStep = new EntityStep(vocabularies.getTaxMap(), vocabularies.getPeople().keySet()); final ConditionInstanceStep entCondInstStep = new ConditionInstanceStep(vocabularies.getTaxMap().keySet(), "Species", "Biol. Variables"); final TailoringStep tailoringStep1 = new TailoringStep("Sample Sources", false); final ExtractionStep extrStep = new ExtractionStep(vocabularies.getTissueMap(), vocabularies.getCellLinesMap(), vocabularies.getPeople().keySet()); final ConditionInstanceStep extrCondInstStep = new ConditionInstanceStep( vocabularies.getTissueMap().keySet(), "Tissues", "Extr. Variables"); final TailoringStep tailoringStep2 = new TailoringStep("Sample Extracts", true); final TestStep techStep = new TestStep(w, vocabularies); final SummaryRegisterStep regStep = new SummaryRegisterStep(); final PoolingStep poolStep1 = new PoolingStep(Steps.Extract_Pooling); final PoolingStep poolStep2 = new PoolingStep(Steps.Test_Sample_Pooling); final FinishStep finishStep = new FinishStep(w, attachConfig); final MSAnalyteStep protFracStep = new MSAnalyteStep(vocabularies, "PROTEINS"); // final PoolingStep afterProtFracPooling = new // PoolingStep(Steps.Protein_Fractionation_Pooling); final MSAnalyteStep pepFracStep = new MSAnalyteStep(vocabularies, "PEPTIDES"); // final PoolingStep afterPepFracPooling = new PoolingStep(Steps.Peptide_Fractionation_Pooling); steps = new HashMap<Steps, WizardStep>(); steps.put(Steps.Project_Context, contextStep); steps.put(Steps.Entities, entStep); steps.put(Steps.Entity_Conditions, entCondInstStep); steps.put(Steps.Entity_Tailoring, tailoringStep1); steps.put(Steps.Extraction, extrStep); steps.put(Steps.Extract_Conditions, extrCondInstStep); steps.put(Steps.Extract_Tailoring, tailoringStep2); steps.put(Steps.Extract_Pooling, poolStep1); steps.put(Steps.Test_Samples, techStep); steps.put(Steps.Test_Sample_Pooling, poolStep2); steps.put(Steps.Protein_Fractionation, protFracStep); steps.put(Steps.Peptide_Fractionation, pepFracStep); // steps.put(Steps.Protein_Fractionation_Pooling, afterProtFracPooling); // steps.put(Steps.Peptide_Fractionation_Pooling, afterPepFracPooling); steps.put(Steps.Registration, regStep); steps.put(Steps.Finish, finishStep); this.dataAggregator = new WizardDataAggregator(steps, openbis, vocabularies.getTaxMap(), vocabularies.getTissueMap(), vocabularies.getPeople()); // w.addStep(finishStep); w.addStep(contextStep); FocusListener fListener = new FocusListener() { private static final long serialVersionUID = 8721337946386845992L; @Override public void focus(FocusEvent event) { // new project selected...keep generating codes until one is valid TextField pr = projSelection.getProjectField(); if (!pr.isValid() || pr.isEmpty()) { projSelection.tryEnableCustomProject(generateProjectCode()); contextStep.enableEmptyProjectContextOption(true); contextStep.enableNewContextOption(true); contextStep.makeContextVisible(); } } }; projSelection.getProjectField().addFocusListener(fListener); Button.ClickListener projCL = new Button.ClickListener() { /** * */ private static final long serialVersionUID = -6646294420820222646L; @Override public void buttonClick(ClickEvent event) { String existingProject = (String) projSelection.getProjectBox().getValue(); if (existingProject == null || existingProject.isEmpty()) { projSelection.tryEnableCustomProject(generateProjectCode()); contextStep.enableEmptyProjectContextOption(true); contextStep.enableNewContextOption(true); contextStep.makeContextVisible(); } } }; projSelection.getProjectReloadButton().addClickListener(projCL); Button.ClickListener peopleCL = new Button.ClickListener() { /** * */ private static final long serialVersionUID = -6646294420820222646L; @Override public void buttonClick(ClickEvent event) { vocabularies.setPeople(dbm.fetchPeople()); Set<String> people = vocabularies.getPeople().keySet(); projSelection.updatePeople(people); entStep.updatePeople(people); extrStep.updatePeople(people); techStep.updatePeople(people); } }; projSelection.getPeopleReloadButton().addClickListener(peopleCL); entStep.getPeopleReloadButton().addClickListener(peopleCL); extrStep.getPeopleReloadButton().addClickListener(peopleCL); Button.ClickListener cl = new Button.ClickListener() { /** * */ private static final long serialVersionUID = -8427457552926464653L; @Override public void buttonClick(ClickEvent event) { String src = event.getButton().getCaption(); if (src.equals("Register Project")) { String desc = contextStep.getDescription(); String altTitle = contextStep.getExpSecondaryName(); registerProjectOnly(desc, altTitle, user, regStep); w.addStep(steps.get(Steps.Finish)); } if (src.equals("Send Project to QBiC")) { String tsv = dataAggregator.getTSVContent(); String space = contextStep.getSpaceCode(); String project = contextStep.getProjectCode(); String altTitle = contextStep.getExpSecondaryName(); List<Note> notes = new ArrayList<Note>(); boolean afterMS = w.getSteps().contains(steps.get(Steps.Protein_Fractionation)); if (afterMS) { List<String> infos = new ArrayList<String>(); String protInfo = protFracStep.getAdditionalInfo(); if (protInfo != null && !protInfo.isEmpty()) { infos.add(protInfo); } String pepInfo = pepFracStep.getAdditionalInfo(); if (pepInfo != null && !pepInfo.isEmpty()) { infos.add(pepInfo); } if (!infos.isEmpty()) { Date now = new Date(); SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"); for (String comment : infos) { Note note = new Note(); note.setComment(comment); note.setUsername(user); note.setTime(ft.format(now)); notes.add(note); } } } sendInquiry(space, project, altTitle, tsv, user, notes); Styles.notification("Project inquiry sent.", "Your Project inquiry was successfully sent to QBiC. We will contact you.", NotificationType.SUCCESS); } if (src.equals("Register All Samples")) { regStep.getRegisterButton().setEnabled(false); ProjectContextStep contextStep = (ProjectContextStep) steps.get(Steps.Project_Context); String desc = contextStep.getDescription(); String altTitle = contextStep.getExpSecondaryName(); boolean afterMS = w.getSteps().contains(steps.get(Steps.Protein_Fractionation)); // Additional information set in the protein and/or peptide step(s) notes = new ArrayList<Note>(); if (afterMS) { List<String> infos = new ArrayList<String>(); String protInfo = protFracStep.getAdditionalInfo(); if (protInfo != null && !protInfo.isEmpty()) { infos.add(protInfo); } String pepInfo = pepFracStep.getAdditionalInfo(); if (pepInfo != null && !pepInfo.isEmpty()) { infos.add(pepInfo); } if (!infos.isEmpty()) { Date now = new Date(); SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"); for (String comment : infos) { Note note = new Note(); note.setComment(comment); note.setUsername(user); note.setTime(ft.format(now)); notes.add(note); } } } // TODO this needs work List<List<ISampleBean>> samples = regStep.getSamples(); String space = contextStep.getSpaceCode(); String project = contextStep.getProjectCode(); String exp = project + "_INFO"; String code = project + "000"; String sampleType = "Q_ATTACHMENT_SAMPLE"; boolean pilot = contextStep.isPilot(); ISampleBean infoSample = new TSVSampleBean(code, exp, project, space, sampleType, "", "", new HashMap<String, Object>()); samples.add(new ArrayList<ISampleBean>(Arrays.asList(infoSample))); openbisCreator.registerProjectWithExperimentsAndSamplesBatchWise(samples, desc, dataAggregator.getExperimentsWithMetadata(), regStep.getProgressBar(), regStep.getProgressLabel(), new RegisteredSamplesReadyRunnable(regStep, control), user, pilot); w.addStep(steps.get(Steps.Finish)); } } private void sendInquiry(String space, String project, String altTitle, String tsv, String user, List<Note> notes) { Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("project", project); parameters.put("space", space); parameters.put("user", user); parameters.put("project-tsv", tsv); String comments = ""; for (Note n : notes) comments += n.getComment() + "\n"; parameters.put("alt-name", altTitle); parameters.put("notes", comments);// TODO do something with this openbis.triggerIngestionService("mail-project-inquiry", parameters); } }; regStep.getRegisterButton().addClickListener(cl); /** * Space selection listener */ ValueChangeListener spaceSelectListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = -7487587994432604593L; @Override public void valueChange(ValueChangeEvent event) { contextStep.resetProjects(); String space = contextStep.getSpaceCode(); if (space != null) { List<String> projects = new ArrayList<String>(); for (Project p : openbis.getProjectsOfSpace(space)) { String code = p.getCode(); String name = dbm.getProjectName("/" + space + "/" + code); if (name != null && name.length() > 0) { if (name.length() >= 80) name = name.substring(0, 80) + "..."; code += " (" + name + ")"; } projects.add(code); } contextStep.setProjectCodes(projects); List<String> dontFilter = new ArrayList<String>(Arrays.asList("SPECIAL_METHOD")); if (space.endsWith("PCT")) { protFracStep.filterDictionariesByPrefix("PCT", dontFilter); pepFracStep.filterDictionariesByPrefix("PCT", dontFilter); } else if (space.endsWith("MPC")) { protFracStep.filterDictionariesByPrefix("MPC", dontFilter); pepFracStep.filterDictionariesByPrefix("MPC", dontFilter); } else { protFracStep.filterDictionariesByPrefix("", dontFilter); pepFracStep.filterDictionariesByPrefix("", dontFilter); } } } }; contextStep.getSpaceBox().addValueChangeListener(spaceSelectListener); /** * Project selection listener */ ValueChangeListener projectSelectListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = -443162343850159312L; @Override public void valueChange(ValueChangeEvent event) { contextStep.resetExperiments(); updateContextOptions(projSelection, contextStep); } }; contextStep.getProjectBox().addValueChangeListener(projectSelectListener); /** * Experiment selection listener */ ValueChangeListener expSelectListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = 1931780520075315462L; @Override public void valueChange(ValueChangeEvent event) { contextStep.resetSamples(); contextStep.makePilotBoxVisible(false); OptionGroup projectContext = contextStep.getProjectContext(); String context = (String) projectContext.getValue(); List<String> contextOptions = contextStep.getContextOptions(); ExperimentBean exp = contextStep.getExperiment(); if (exp != null) { if (exp.isPilot() && !contextOptions.get(4).equals(context)) { contextStep.selectPilot(); } List<NewSampleModelBean> beans = new ArrayList<NewSampleModelBean>(); for (Sample s : openbis.getSamplesofExperiment(exp.getID())) { beans.add(new NewSampleModelBean(s.getCode(), s.getProperties().get("Q_SECONDARY_NAME"), s.getSampleTypeCode())); } contextStep.setSamples(beans); } } }; contextStep.getExperimentTable().addValueChangeListener(expSelectListener); /** * Project context (radio buttons) listener */ ValueChangeListener projectContextListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = 5972535836592118817L; @Override public void valueChange(ValueChangeEvent event) { copyMode = false; if (contextStep.getProjectContext().getValue() != null) { contextStep.makePilotBoxVisible(false); resetNextSteps(); OptionGroup projectContext = contextStep.getProjectContext(); String context = (String) projectContext.getValue(); List<String> contextOptions = contextStep.getContextOptions(); List<ExperimentBean> experiments = contextStep.getExperiments(); List<ExperimentBean> beans = new ArrayList<ExperimentBean>(); // inherit from bio entities if (contextOptions.get(1).equals(context)) { for (ExperimentBean b : experiments) { if (b.getExperiment_type().equals(ExperimentType.Q_EXPERIMENTAL_DESIGN.toString())) beans.add(b); } setInheritEntities(); dataAggregator.setInheritEntities(true); dataAggregator.setInheritExtracts(false); } // inherit from sample extraction if (contextOptions.get(2).equals(context)) { for (ExperimentBean b : experiments) { if (b.getExperiment_type().equals(ExperimentType.Q_SAMPLE_EXTRACTION.toString())) beans.add(b); } setInheritExtracts(); dataAggregator.setInheritEntities(false); dataAggregator.setInheritExtracts(true); } // new context if (contextOptions.get(0).equals(context)) { contextStep.hideExperiments(); setCreateEntities(); contextStep.makePilotBoxVisible(true); dataAggregator.setInheritEntities(false); dataAggregator.setInheritExtracts(false); } regStep.setRegistrationMode(RegistrationMode.RegisterSamples); if (contextOptions.get(3).equals(context)) { setRegStep(); regStep.setRegistrationMode(RegistrationMode.RegisterEmptyProject); } // copy design context if (contextOptions.get(5).equals(context)) { for (ExperimentBean b : experiments) { if (b.getExperiment_type().equals(ExperimentType.Q_EXPERIMENTAL_DESIGN.toString())) beans.add(b); } copyMode = true; setTailoringStepsOnly(); dataAggregator.setInheritEntities(true); dataAggregator.setInheritExtracts(true); } // read only tsv creation if (contextOptions.get(4).equals(context)) { for (ExperimentBean b : experiments) { if (b.getExperiment_type().equals(ExperimentType.Q_EXPERIMENTAL_DESIGN.toString())) beans.add(b); } setRegStep(); regStep.setRegistrationMode(RegistrationMode.DownloadTSV); } if (beans.size() > 0) contextStep.showExperiments(beans); } } }; contextStep.getProjectContext().addValueChangeListener(projectContextListener); /** * Listeners for pooling samples */ ValueChangeListener poolingListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = 2393762547426343668L; @Override public void valueChange(ValueChangeEvent event) { resetNextSteps(); if (tailoringStep2.pool()) { setExtractsPooling(); } else { setTestStep(); } } }; tailoringStep2.getPoolBox().addValueChangeListener(poolingListener); ValueChangeListener testPoolListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = 2393762547426343668L; @Override public void valueChange(ValueChangeEvent event) { resetNextSteps(); if (techStep.hasPools()) { setTestsPooling(); } else { setRegStep(); } } }; ValueChangeListener proteinListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = -7329476869277381974L; @Override public void valueChange(ValueChangeEvent event) { boolean containsProteins = false; for (TestSampleInformation i : techStep.getAnalyteInformation()) { String tech = i.getTechnology(); containsProteins |= tech.equals("PROTEINS"); } if (containsProteins) { // TODO probably not needed // dataAggregator.prepareTestSamples(); // techStep.setProteinPreps(dataAggregator.getTests()); } } }; techStep.initTestStep(testPoolListener, proteinListener, peopleCL, steps); ValueChangeListener noMeasureListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = 2393762547426343668L; @Override public void valueChange(ValueChangeEvent event) { techStep.changeTechPanel(); } }; techStep.getNotMeasured().addValueChangeListener(noMeasureListener); /** * Listeners for entity and extract conditions */ ValueChangeListener entityConditionSetListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = 2393762547426343668L; @Override public void valueChange(ValueChangeEvent event) { resetNextSteps(); if (entStep.isConditionsSet().getValue() != null) { setEntityConditions(); } else { setInheritEntities(); } } }; entStep.isConditionsSet().addValueChangeListener(entityConditionSetListener); ValueChangeListener extractConditionSetListener = new ValueChangeListener() { /** * */ private static final long serialVersionUID = 4879458823482873630L; @Override public void valueChange(ValueChangeEvent event) { resetNextSteps(); if (extrStep.conditionsSet().getValue() != null) { setExtractConditions(); } else { setInheritExtracts(); } } }; extrStep.conditionsSet().addValueChangeListener(extractConditionSetListener); TextField f = contextStep.getProjectCodeField(); CompositeValidator vd = new CompositeValidator(); RegexpValidator p = new RegexpValidator("Q[A-Xa-x0-9]{4}", "Project must have length of 5, start with Q and not contain Y or Z"); vd.addValidator(p); vd.addValidator(new ProjectNameValidator(openbis)); f.addValidator(vd); f.setImmediate(true); f.setValidationVisible(true); WizardProgressListener wl = new WizardProgressListener() { @Override public void wizardCompleted(WizardCompletedEvent event) { } @Override public void wizardCancelled(WizardCancelledEvent event) { } @Override public void stepSetChanged(WizardStepSetChangedEvent event) { } /** * Reactions to step changes in the wizard */ @Override public void activeStepChanged(WizardStepActivationEvent event) { // Context Step if (event.getActivatedStep().equals(contextStep)) { // contextStep.allowNext(false); regStep.enableDownloads(false); } // Entity Setup Step if (event.getActivatedStep().equals(entStep)) { bioFactorInstancesSet = false; } // Entity Condition Instances Step if (event.getActivatedStep().equals(entCondInstStep)) { reloadConditionsPreviewTable(entCondInstStep, Integer.toString(entStep.getBioRepAmount()), new ArrayList<AOpenbisSample>()); if (!bioFactorInstancesSet) { if (entStep.speciesIsFactor()) entCondInstStep.initOptionsFactorComponent(entStep.getSpeciesAmount(), new HashSet<String>(), "N/A", "N/A", "N/A", "N/A"); entCondInstStep.initFactorFields(entStep.getFactors()); initConditionListener(entCondInstStep, Integer.toString(entStep.getBioRepAmount()), new ArrayList<AOpenbisSample>()); bioFactorInstancesSet = true; } } // Negative Selection of Entities if (event.getActivatedStep().equals(tailoringStep1)) { try { tailoringStep1.setSamples( dataAggregator.prepareEntities(entCondInstStep.getPreSelection(), copyMode), null); } catch (JAXBException e) { e.printStackTrace(); } } // Extract Setup Step if (event.getActivatedStep().equals(extrStep)) { dataAggregator.setEntities(tailoringStep1.getSamples()); extractFactorInstancesSet = false; } // Extract Factor Instances Step if (event.getActivatedStep().equals(extrCondInstStep)) { reloadConditionsPreviewTable(extrCondInstStep, Integer.toString(extrStep.getExtractRepAmount()), dataAggregator.getEntities()); if (!extractFactorInstancesSet) { if (extrStep.isTissueFactor())// TODO mapping and keywords extrCondInstStep.initOptionsFactorComponent(extrStep.getTissueAmount(), vocabularies.getCellLinesMap().keySet(), "Cell Line", "Other", "Cell Line", "Other"); extrCondInstStep.initFactorFields(extrStep.getFactors()); initConditionListener(extrCondInstStep, Integer.toString(extrStep.getExtractRepAmount()), dataAggregator.getEntities()); extractFactorInstancesSet = true; } } // Negative Selection of Extracts if (event.getActivatedStep().equals(tailoringStep2)) { extractPoolsSet = false; if (copyMode) { // set entities if some were removed or changed in the last step dataAggregator.setEntities(tailoringStep1.getSamples()); } try { tailoringStep2.setSamples( dataAggregator.prepareExtracts(extrCondInstStep.getPreSelection(), copyMode), extrStep.getLabelingMethod()); } catch (JAXBException e) { e.printStackTrace(); } } // Extract Pool Step if (event.getActivatedStep().equals(poolStep1)) { dataAggregator.resetExtracts(); if (!extractPoolsSet) { poolStep1.setSamples( new ArrayList<List<AOpenbisSample>>(Arrays.asList(tailoringStep2.getSamples())), Steps.Extract_Pooling); extractPoolsSet = true; } } // Test Setup Step if (event.getActivatedStep().equals(techStep)) { // dataAggregator.setHasFractionationExperiment(false); testPoolsSet = false;// we have to reset this in the case someone goes back from pooling List<AOpenbisSample> extracts = tailoringStep2.getSamples(); techStep.setTissueExtracts(extracts); List<AOpenbisSample> all = new ArrayList<AOpenbisSample>(); all.addAll(extracts); all.addAll(dataAggregator.createPoolingSamples(poolStep1.getPools())); dataAggregator.setExtracts(all); if (copyMode) techStep.setAnalyteInputs(dataAggregator.getBaseAnalyteInformation()); } // Test Pool Step if (event.getActivatedStep().equals(poolStep2)) { if (!testPoolsSet) {// if we come from the analyte step the pools are reset, if we come // back from the next step they are not poolStep2.setSamples(dataAggregator.prepareTestSamples(), Steps.Test_Sample_Pooling); testPoolsSet = true; } } // Protein Fractionation if (event.getActivatedStep().equals(protFracStep)) { // List<AOpenbisSample> analytes = new ArrayList<AOpenbisSample>(); if (!testPoolsSet) {// if pools aren't set at this point then there was no pooling // selected before dataAggregator.prepareTestSamples();// we reset the analyte samples in case we come from // the next step and prepare them anew } // we forward testsamples and potential pools directly to the fractionation step to sort // them out // they don't get barcodes either for now, in case we need to recreate them List<AOpenbisSample> proteins = filterForProperties(dataAggregator.getTests(), "Q_SAMPLE_TYPE", "PROTEINS"); Map<String, List<AOpenbisSample>> pools = poolStep2.getPools(); for (String pool : pools.keySet()) { List<AOpenbisSample> filtered = filterForProperties(pools.get(pool), "Q_SAMPLE_TYPE", "PROTEINS"); if (filtered.isEmpty()) pools.remove(pool); else pools.put(pool, filtered); } protFracStep.setAnalyteSamples(proteins, pools); } // Peptide Fractionation if (event.getActivatedStep().equals(pepFracStep)) { if (!protFracStep.hasRun()) { protFracStep.createPreliminaryExperiments(); } pepFracStep.setAnalyteSamplesAndExperiments(protFracStep.getResults()); } // TSV and Registration Step if (event.getActivatedStep().equals(regStep)) { regStep.enableDownloads(false); // Test samples were filled out if (w.getSteps().contains(steps.get(Steps.Test_Samples))) { boolean afterMS = w.getSteps().contains(steps.get(Steps.Protein_Fractionation)); if (!testPoolsSet && !afterMS) dataAggregator.prepareTestSamples(); if (techStep.hasMHCLigands()) dataAggregator.prepareMHCExtractSamplesAndExperiments(); List<AOpenbisSample> all = new ArrayList<AOpenbisSample>(); if (!afterMS) { all.addAll(dataAggregator.getTests()); // all.addAll( dataAggregator.createPoolingSamples(poolStep2.getPools()); dataAggregator.setTests(all); } if (containsFractionation()) { dataAggregator.setFractionationExperimentsProperties( getFractionationPropertiesFromLastStep()); dataAggregator.createFractionationSamplesAndExperiments(); } createTSV(); try { prep.processTSV(dataAggregator.getTSV(), DesignType.QBIC); } catch (IOException e) { e.printStackTrace(); } armDownloadButtons(regStep.getDownloadButton()); List<SampleSummaryBean> summaries = prep.getSummary(); Map<String, String> taxMap = new HashMap<String, String>(); for (Map.Entry<String, String> entry : vocabularies.getTaxMap().entrySet()) taxMap.put(entry.getValue(), entry.getKey()); for (SampleSummaryBean s : summaries) { List<String> translations = new ArrayList<String>(); for (String id : s.getSampleContent().split(", ")) { String translation = taxMap.get(id); if (translation != null) translations.add(translation); else translations.add(id); } s.setSampleContent(String.join(", ", translations)); } regStep.setSummary(summaries); regStep.setProcessed(prep.getProcessed()); } regStep.testRegEnabled(); // Write TSV mode if (contextStep.fetchTSVModeSet()) { try { dataAggregator.parseAll(); } catch (JAXBException e1) { e1.printStackTrace(); } createTSV(); try { prep.processTSV(dataAggregator.getTSV(), DesignType.QBIC); } catch (IOException e) { e.printStackTrace(); } armDownloadButtons(regStep.getDownloadButton()); List<SampleSummaryBean> summaries = prep.getSummary(); Map<String, String> taxMap = new HashMap<String, String>(); for (Map.Entry<String, String> entry : vocabularies.getTaxMap().entrySet()) taxMap.put(entry.getValue(), entry.getKey()); for (SampleSummaryBean s : summaries) { String translation = taxMap.get(s.getSampleContent()); if (translation != null) s.setSampleContent(translation); } regStep.setSummary(summaries); } } if (event.getActivatedStep().equals(finishStep)) { ProjectContextStep context = (ProjectContextStep) steps.get(Steps.Project_Context); String space = context.getSpaceCode(); String proj = context.getProjectCode(); int timeout = 20; while (!openbis.projectExists(space, proj) && timeout > 0) { logger.error( "Project " + proj + "(" + space + ")" + "could not be found after registration."); try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } } Project p = openbis.getProjectByIdentifier("/" + space + "/" + proj); Map<String, List<Sample>> samplesByExperiment = new HashMap<String, List<Sample>>(); for (Sample s : openbis.getSamplesOfProject(p.getIdentifier())) { String expID = s.getExperimentIdentifierOrNull(); String exp = expID.substring(expID.lastIndexOf("/") + 1); if (samplesByExperiment.containsKey(exp)) { List<Sample> lis = samplesByExperiment.get(exp); lis.add(s); samplesByExperiment.put(exp, lis); } else { List<Sample> lis = new ArrayList<Sample>(Arrays.asList(s)); samplesByExperiment.put(exp, lis); } } finishStep.setExperimentInfos(space, proj, p.getDescription(), samplesByExperiment, openbis); } } private MSExperimentModel getFractionationPropertiesFromLastStep() { WizardStep lastInput = w.getSteps().get(w.getSteps().size() - 2);// last step is // registration itself if (lastInput instanceof PoolingStep) { return ((PoolingStep) lastInput).getPreliminarySamples(); } else if (lastInput instanceof MSAnalyteStep) { MSAnalyteStep last = (MSAnalyteStep) lastInput; last.createPreliminaryExperiments(); return last.getResults(); } else { logger.error( "Tried to fetch fractionation properties from wizard but the last step was neither of type Pooling or Fractionation. Step in question is: " + lastInput.toString()); logger.error("Wizard likely stopped working before registration. User was " + user); Styles.notification("Error", "Sorry, something went wrong. Please notify a QBiC contact person.", NotificationType.ERROR); return null; } } private boolean containsFractionation() { List<Steps> relevant = new ArrayList<Steps>( Arrays.asList(Steps.Peptide_Fractionation, Steps.Peptide_Fractionation_Pooling, Steps.Protein_Fractionation, Steps.Protein_Fractionation_Pooling)); boolean res = false; for (Steps s : relevant) { res |= w.getSteps().contains(steps.get(s)); } return res; } }; w.addListener(wl); }
From source file:de.fatalix.bookery.view.admin.AdminView.java
License:Open Source License
public VerticalLayout createServerSettings() { VerticalLayout layout = new VerticalLayout(); layout.setMargin(true);//from w ww. j a v a2 s . c om Label titleLabel = new Label("General Settings"); titleLabel.addStyleName(ValoTheme.LABEL_H2); //layout.addComponent(titleLabel); layout.addComponent(serverSettingsLayout); Button resetIndex = new Button("reset Index", new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { try { presenter.resetIndex(); Notification.show("Succesfully reset Index", Notification.Type.HUMANIZED_MESSAGE); } catch (IOException | SolrServerException ex) { Notification.show(ex.getMessage(), Notification.Type.ERROR_MESSAGE); } } }); resetIndex.addStyleName(ValoTheme.BUTTON_DANGER); final TextField eMailAdress = new TextField(null, "felix.husse@medavis.de"); eMailAdress.setColumns(35); Button testMail = new Button("Test Mail", new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { try { presenter.sendEmail(eMailAdress.getValue()); Notification.show("Mail succesfully sent!", Notification.Type.HUMANIZED_MESSAGE); } catch (MessagingException ex) { Notification.show("Mail failed!" + ex.getMessage(), Notification.Type.ERROR_MESSAGE); } } }); testMail.setEnabled(true); Button resetBatchJobs = new Button("reset BatchJobs", new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { presenter.resetBatchJobs(); Notification.show("Succesfully reset Batchjobs", Notification.Type.HUMANIZED_MESSAGE); } }); resetBatchJobs.addStyleName(ValoTheme.BUTTON_DANGER); HorizontalLayout mailLayout = new HorizontalLayout(eMailAdress, testMail, resetBatchJobs); layout.addComponents(resetIndex, mailLayout); return layout; }
From source file:de.fatalix.bookery.view.common.BookDetailLayout.java
License:Open Source License
@PostConstruct private void postInit() { addStyleName("product-form-wrapper"); addStyleName("product-form"); titleLabel = new Label("Title - Author"); titleLabel.addStyleName(ValoTheme.LABEL_COLORED); titleLabel.addStyleName(ValoTheme.LABEL_BOLD); descriptionLabel = new Label("Description", ContentMode.HTML); descriptionLabel.addStyleName(ValoTheme.LABEL_LIGHT); descriptionLabel.setValue("Keine Beschreibung vorhanden"); cancelButton = new Button("close", new Button.ClickListener() { @Override/*from w w w .j av a 2 s .c om*/ public void buttonClick(Button.ClickEvent event) { setLayoutVisible(false); } }); cancelButton.setClickShortcut(ShortcutAction.KeyCode.ESCAPE); cancelButton.addStyleName(ValoTheme.BUTTON_DANGER); VerticalLayout rootLayout = new VerticalLayout(titleLabel, createImageLayout(), descriptionLabel, cancelButton); rootLayout.setSpacing(true); addComponent(rootLayout); }
From source file:de.fatalix.bookery.view.common.BookMenuLayout.java
@PostConstruct private void postInit() { addStyleName("bookery-menu-wrapper"); addStyleName("bookery-menu"); Label titleLabel = new Label("Bookery Menu"); titleLabel.addStyleName(ValoTheme.LABEL_COLORED); titleLabel.addStyleName(ValoTheme.LABEL_BOLD); Button cancelButton = new Button("close", new Button.ClickListener() { @Override//from w w w . ja v a 2s . c o m public void buttonClick(Button.ClickEvent event) { setLayoutVisible(false); } }); cancelButton.setClickShortcut(ShortcutAction.KeyCode.ESCAPE); cancelButton.addStyleName(ValoTheme.BUTTON_DANGER); VerticalLayout rootLayout = new VerticalLayout(titleLabel, cancelButton); rootLayout.setSpacing(true); addComponent(rootLayout); }
From source file:de.kaiserpfalzEdv.vaadin.ui.defaultviews.editor.impl.BaseEditorViewImpl.java
License:Apache License
private void initializeButtons() { buttonLayout = new VerticalLayout(); buttonLayout.setWidth(125f, PIXELS); buttonLayout.setSpacing(true);/*from w w w . ja va2 s . c o m*/ buttonLayout.setResponsive(true); layout.addComponent(buttonLayout); layout.setExpandRatio(buttonLayout, 10f); saveButton = initializeButton("save", buttonTabIndex); saveButton.addClickListener(event -> { try { getEditor().commit(event); presenter.setData(getEditor().getEditorData()); presenter.save(); } catch (FieldGroup.CommitException e) { LOG.error(e.getClass().getSimpleName() + " caught: " + e.getMessage(), e); presenter.error(getCommitErrorCaption(), getCommitErrorDescription(), getCommitErrorParameters()); } }); saveButton.setClickShortcut(KeyCode.ENTER); saveButton.setStyleName(ValoTheme.BUTTON_PRIMARY); buttonLayout.addComponent(saveButton); discardButton = initializeButton("discard", buttonTabIndex + 1); discardButton.addClickListener(event -> getEditor().discard(event)); buttonLayout.addComponent(discardButton); cancelButton = initializeButton("cancel", buttonTabIndex + 2); cancelButton.addClickListener(event -> presenter.cancel(event.getSource())); buttonLayout.addComponent(cancelButton); deleteButton = initializeButton("remove", buttonTabIndex + 3); deleteButton.addClickListener(event -> presenter.remove(event.getSource())); deleteButton.setStyleName(ValoTheme.BUTTON_DANGER); buttonLayout.addComponent(deleteButton); layout.addComponent(buttonLayout); LOG.debug("Added {} buttons to the editor.", buttonLayout.getComponentCount()); }