List of usage examples for com.vaadin.ui HorizontalLayout setWidthUndefined
@Override public void setWidthUndefined()
From source file:fi.semantum.strategia.widget.Meter.java
License:Open Source License
public static void manageMeters(final Main main, final Base base) { String currentTime = main.getUIState().time; boolean showYears = currentTime.equals(Property.AIKAVALI_KAIKKI); final Database database = main.getDatabase(); VerticalLayout content = new VerticalLayout(); content.setSizeFull();/* w ww. j a v a2 s . c o m*/ content.setSpacing(true); final Table table = new Table(); table.setSelectable(true); table.setMultiSelect(true); table.addStyleName(ValoTheme.TABLE_SMALL); table.addStyleName(ValoTheme.TABLE_COMPACT); table.addContainerProperty("Mittari", Label.class, null); if (showYears) table.addContainerProperty("Vuosi", String.class, null); table.setWidth("100%"); table.setHeight("100%"); table.setNullSelectionAllowed(true); table.setEditable(false); table.setColumnExpandRatio("Mittari", 2.0f); if (showYears) table.setColumnExpandRatio("Vuosi", 0.0f); makeMeterTable(main, base, table); content.addComponent(table); content.setExpandRatio(table, 1.0f); abstract class MeterButtonListener implements Button.ClickListener { private static final long serialVersionUID = -6640950006518632633L; protected Meter getPossibleSelection() { Object selection = table.getValue(); Collection<?> selected = (Collection<?>) selection; if (selected.size() != 1) return null; return (Meter) selected.iterator().next(); } @SuppressWarnings("unchecked") protected Collection<Meter> getSelection() { return (Collection<Meter>) table.getValue(); } protected Map<Base, List<Meter>> getSelectionByParent(Database database) { return metersByParent(database, getSelection()); } } final Button removeMeters = new Button("Poista", new MeterButtonListener() { private static final long serialVersionUID = 2957964892664902859L; public void buttonClick(ClickEvent event) { for (Meter r : getSelection()) { Base owner = r.getOwner(database); if (owner != null) owner.removeMeter(r); } makeMeterTable(main, base, table); Updates.update(main, true); } }); removeMeters.addStyleName(ValoTheme.BUTTON_TINY); final Button moveUp = new Button("Siirr ylemms", new MeterButtonListener() { private static final long serialVersionUID = 8434251773337788784L; public void buttonClick(ClickEvent event) { Map<Base, List<Meter>> sel = getSelectionByParent(database); if (sel == null) return; for (Map.Entry<Base, List<Meter>> entry : sel.entrySet()) { entry.getKey().moveMetersUp(entry.getValue()); } makeMeterTable(main, base, table); Updates.update(main, true); } }); moveUp.addStyleName(ValoTheme.BUTTON_TINY); final Button moveDown = new Button("Siirr alemmas", new MeterButtonListener() { private static final long serialVersionUID = -5382367112305541842L; public void buttonClick(ClickEvent event) { for (Map.Entry<Base, List<Meter>> entry : getSelectionByParent(database).entrySet()) { entry.getKey().moveMetersDown(entry.getValue()); } makeMeterTable(main, base, table); Updates.update(main, true); } }); moveDown.addStyleName(ValoTheme.BUTTON_TINY); final Button modify = new Button("Mrit"); modify.addClickListener(new MeterButtonListener() { private static final long serialVersionUID = -7109999546516429095L; public void buttonClick(ClickEvent event) { Meter meter = getPossibleSelection(); if (meter == null) return; editMeter(main, base, meter); } }); modify.addStyleName(ValoTheme.BUTTON_TINY); final ComboBox indicatorSelect = new ComboBox(); indicatorSelect.setWidth("100%"); indicatorSelect.setNullSelectionAllowed(false); indicatorSelect.addStyleName(ValoTheme.COMBOBOX_TINY); indicatorSelect.setCaption("Mrittj"); final Strategiakartta map = database.getMap(base); // Indikaattorit for (Indicator i : map.getIndicators(database)) { MeterSpec spec = new MeterSpec(database, i); indicatorSelect.addItem(spec); indicatorSelect.select(spec); } // Enumeraatiot for (Datatype enu : Datatype.enumerate(database)) { if (enu instanceof EnumerationDatatype) { MeterSpec spec = new MeterSpec(database, enu); indicatorSelect.addItem(spec); indicatorSelect.select(spec); } } // Sisnrakennetut { MeterSpec spec = new MeterSpec(database, MeterSpec.IMPLEMENTATION); indicatorSelect.addItem(spec); indicatorSelect.select(spec); } indicatorSelect.setTextInputAllowed(false); final Button addMeter = new Button("Lis ptasolle", new Button.ClickListener() { private static final long serialVersionUID = -5178621686299637238L; public void buttonClick(ClickEvent event) { MeterSpec spec = (MeterSpec) indicatorSelect.getValue(); Object source = spec.getSource(); if (source instanceof Indicator) { Indicator ind = (Indicator) source; Meter.addIndicatorMeter(main, base, ind, Property.AIKAVALI_KAIKKI); } else if (source instanceof EnumerationDatatype) { EnumerationDatatype dt = (EnumerationDatatype) source; Indicator ind = Indicator.create(database, "Uusi " + dt.getId(database), dt); ind.update(main, base, dt.getDefaultValue(), false, "", "Alkuarvo"); ind.update(main, base, dt.getDefaultForecast(), true, "", "Alkuarvo"); Meter.addIndicatorMeter(main, base, ind, Property.AIKAVALI_KAIKKI); } makeMeterTable(main, base, table); Updates.update(main, true); } }); addMeter.addStyleName(ValoTheme.BUTTON_TINY); final Button addSubmeter = new Button("Lis valitun alle", new MeterButtonListener() { private static final long serialVersionUID = -1250285092312682737L; public void buttonClick(ClickEvent event) { Meter meter = getPossibleSelection(); if (meter == null) return; MeterSpec spec = (MeterSpec) indicatorSelect.getValue(); Object source = spec.getSource(); if (source instanceof Indicator) { Indicator ind = (Indicator) source; Meter.addIndicatorMeter(main, meter, ind, Property.AIKAVALI_KAIKKI); } else if (source instanceof EnumerationDatatype) { EnumerationDatatype dt = (EnumerationDatatype) source; Indicator ind = Indicator.create(database, "Uusi " + dt.getId(database), dt); ind.update(main, base, dt.getDefaultValue(), false, "", "Alkuarvo"); ind.update(main, base, dt.getDefaultForecast(), true, "", "Alkuarvo"); Meter.addIndicatorMeter(main, meter, ind, Property.AIKAVALI_KAIKKI); } makeMeterTable(main, base, table); Updates.update(main, true); } }); addSubmeter.addStyleName(ValoTheme.BUTTON_TINY); final Runnable setStates = new Runnable() { @Override public void run() { Object selection = table.getValue(); Collection<?> selected = (Collection<?>) selection; if (!selected.isEmpty()) { removeMeters.setEnabled(true); moveUp.setEnabled(true); moveDown.setEnabled(true); if (selected.size() == 1) { modify.setEnabled(true); addSubmeter.setEnabled(true); } else { addSubmeter.setEnabled(false); modify.setEnabled(false); } } else { moveUp.setEnabled(false); moveDown.setEnabled(false); removeMeters.setEnabled(false); addSubmeter.setEnabled(false); modify.setEnabled(false); } } }; table.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 6439090862804667322L; @Override public void valueChange(ValueChangeEvent event) { setStates.run(); } }); setStates.run(); HorizontalLayout hl2 = new HorizontalLayout(); hl2.setSpacing(true); hl2.setWidthUndefined(); hl2.addComponent(modify); hl2.setComponentAlignment(modify, Alignment.TOP_LEFT); hl2.setExpandRatio(modify, 0.0f); hl2.addComponent(removeMeters); hl2.setComponentAlignment(removeMeters, Alignment.TOP_LEFT); hl2.setExpandRatio(removeMeters, 0.0f); hl2.addComponent(moveUp); hl2.setComponentAlignment(moveUp, Alignment.TOP_LEFT); hl2.setExpandRatio(moveUp, 0.0f); hl2.addComponent(moveDown); hl2.setComponentAlignment(moveDown, Alignment.TOP_LEFT); hl2.setExpandRatio(moveDown, 0.0f); HorizontalLayout hl3 = new HorizontalLayout(); hl3.setSpacing(true); hl3.setWidth("100%"); hl3.addComponent(addMeter); hl3.setComponentAlignment(addMeter, Alignment.BOTTOM_LEFT); hl3.setExpandRatio(addMeter, 0.0f); hl3.addComponent(addSubmeter); hl3.setComponentAlignment(addSubmeter, Alignment.BOTTOM_LEFT); hl3.setExpandRatio(addSubmeter, 0.0f); hl3.addComponent(indicatorSelect); hl3.setComponentAlignment(indicatorSelect, Alignment.BOTTOM_LEFT); hl3.setExpandRatio(indicatorSelect, 1.0f); content.addComponent(hl2); content.setComponentAlignment(hl2, Alignment.MIDDLE_CENTER); content.setExpandRatio(hl2, 0.0f); content.addComponent(hl3); content.setComponentAlignment(hl3, Alignment.BOTTOM_LEFT); content.setExpandRatio(hl3, 0.0f); HorizontalLayout buttons = new HorizontalLayout(); buttons.setSpacing(true); buttons.setMargin(false); final Window dialog = Dialogs.makeDialog(main, "450px", "600px", "Hallitse mittareita", "Sulje", content, buttons); }
From source file:no.uib.probe.csf.pr.touch.view.core.SearchingField.java
/** * Default constructor to initialize the main attributes. *///from ww w.ja v a 2s . c o m public SearchingField() { this.setSpacing(true); this.setHeightUndefined(); HorizontalLayout searchFieldContainerLayout = new HorizontalLayout(); searchFieldContainerLayout.setWidthUndefined(); searchFieldContainerLayout.setHeight(100, Unit.PERCENTAGE); searchFieldContainerLayout.setSpacing(true); TextField searchField = new TextField(); searchField.setDescription("Search proteins by name or accession"); searchField.setImmediate(true); searchField.setWidth(100, Unit.PIXELS); searchField.setHeight(18, Unit.PIXELS); searchField.setInputPrompt("Search..."); searchFieldContainerLayout.addComponent(searchField); searchField.setTextChangeTimeout(1500); searchField.setStyleName(ValoTheme.TEXTFIELD_SMALL); searchField.addStyleName(ValoTheme.TEXTFIELD_TINY); final Button b = new Button(); searchField.setTextChangeEventMode(AbstractTextField.TextChangeEventMode.LAZY); searchField.addShortcutListener(new Button.ClickShortcut(b, ShortcutListener.KeyCode.ENTER)); VerticalLayout searchingBtn = new VerticalLayout(); searchingBtn.setWidth(22, Unit.PIXELS); searchingBtn.setHeight(18, Unit.PIXELS); searchingBtn.setStyleName("tablesearchingbtn"); searchFieldContainerLayout.addComponent(searchingBtn); searchFieldContainerLayout.setComponentAlignment(searchingBtn, Alignment.TOP_CENTER); this.addComponent(searchFieldContainerLayout); this.setComponentAlignment(searchFieldContainerLayout, Alignment.TOP_CENTER); searchingCommentLabel = new Label(); searchingCommentLabel.setWidth(100, Unit.PERCENTAGE); searchingCommentLabel.setHeight(23, Unit.PIXELS); searchingCommentLabel.addStyleName(ValoTheme.LABEL_BOLD); searchingCommentLabel.addStyleName(ValoTheme.LABEL_SMALL); searchingCommentLabel.addStyleName(ValoTheme.LABEL_TINY); this.addComponent(searchingCommentLabel); this.setComponentAlignment(searchingCommentLabel, Alignment.TOP_CENTER); searchingBtn.addLayoutClickListener((LayoutEvents.LayoutClickEvent event) -> { b.click(); }); searchField.addTextChangeListener((FieldEvents.TextChangeEvent event) -> { SearchingField.this.textChanged(event.getText()); }); b.addClickListener((Button.ClickEvent event) -> { SearchingField.this.textChanged(searchField.getValue()); }); }
From source file:no.uib.probe.mnpc_2017.view.ApplicationLayout.java
public ApplicationLayout() { this.setWidth("100%"); this.setHeightUndefined(); // this.setStyleName(Reindeer.LAYOUT_WHITE); this.setMargin(false); this.setSpacing(true); VerticalLayout headerLayout = new VerticalLayout(); headerLayout.setWidth("100%"); headerLayout.setHeight("77px"); this.addComponent(headerLayout); Panel mainBodyPanel = new Panel(); // headerLayout.setStyleName(Reindeer.LAYOUT_BLUE); HorizontalLayout topLayoutContainer = new HorizontalLayout(); headerLayout.addComponent(topLayoutContainer); headerLayout.setComponentAlignment(topLayoutContainer, Alignment.MIDDLE_CENTER); topLayoutContainer.setWidthUndefined(); topLayoutContainer.setHeight("100%"); VerticalLayout logoLayout = new VerticalLayout(); logoLayout.setWidth("200px"); logoLayout.setHeight("100%"); logoLayout.setStyleName("starlogo"); logoLayout.setMargin(new MarginInfo(false, true, false, false)); Label title = new Label("NPC 2017"); logoLayout.addComponent(title);// w w w . j a v a 2 s . co m topLayoutContainer.addComponent(logoLayout); topLayoutContainer.setComponentAlignment(logoLayout, Alignment.MIDDLE_RIGHT); HorizontalLayout mainMenuContainer = new HorizontalLayout(); mainMenuContainer.setWidth("780px"); topLayoutContainer.addComponent(mainMenuContainer); topLayoutContainer.setComponentAlignment(mainMenuContainer, Alignment.MIDDLE_RIGHT); VerticalLayout layoutI = new VerticalLayout(); mainMenuContainer.addComponent(generateMenuBtn("Home", layoutI)); VerticalLayout layoutII = new VerticalLayout(); mainMenuContainer.addComponent(generateMenuBtn("Programme", layoutII)); VerticalLayout layoutIII = new VerticalLayout(); mainMenuContainer.addComponent(generateMenuBtn("Practical Information", layoutIII)); VerticalLayout layoutIV = new VerticalLayout(); mainMenuContainer.addComponent(generateMenuBtn("Exhibition & Sponsorship", layoutIV)); VerticalLayout layoutV = new VerticalLayout(); mainMenuContainer.addComponent(generateMenuBtn("Registration", layoutV)); VerticalLayout layoutVI = new VerticalLayout(); mainMenuContainer.addComponent(generateMenuBtn("Contact", layoutVI)); }
From source file:probe.com.view.body.QuantCompareDataLayout.java
public QuantCompareDataLayout(CSFPRHandler CSFPR_Handler) { this.setWidth("100%"); this.setHeightUndefined(); this.setStyleName(Reindeer.LAYOUT_WHITE); this.setSpacing(true); topLabelMarker = new VerticalLayout(); this.addComponent(topLabelMarker); this.setExpandRatio(topLabelMarker, 0.01f); topLabelMarker.setHeight("10px"); topLabelMarker.setWidth("20px"); topLabelMarker.setStyleName(Reindeer.LAYOUT_WHITE); this.CSFPR_Handler = CSFPR_Handler; Map<String, QuantDatasetInitialInformationObject> quantDatasetInitialInformationObjectMap = CSFPR_Handler .getQuantDatasetInitialInformationObject(); diseaseGroupNames = new TreeSet<String>(); for (String diseaseCategory : quantDatasetInitialInformationObjectMap.keySet()) { QuantDatasetInitialInformationObject quantDatasetInitialInformationObject = quantDatasetInitialInformationObjectMap .get(diseaseCategory);//from w ww. j a v a 2 s . c om for (QuantDatasetObject qdsObject : quantDatasetInitialInformationObject.getQuantDatasetsList() .values()) { diseaseGroupNames.add(qdsObject.getPatientsSubGroup1().split("\n")[0].trim()); diseaseGroupNames.add(qdsObject.getPatientsSubGroup2().split("\n")[0].trim()); } } int width = 400; if (Page.getCurrent().getBrowserWindowWidth() < 800) { width = Page.getCurrent().getBrowserWindowWidth() / 2; } HorizontalLayout userDataLayout = new HorizontalLayout(); userDataLayout.setSpacing(true); HorizontalLayout miniSelectDiseaseGroupsLayout = new HorizontalLayout(); miniSelectDiseaseGroupsLayout.setStyleName("diseasegroupselectionresult"); miniSelectDiseaseGroupsLayout.setSpacing(true); miniSelectDiseaseGroupsLayout.setWidthUndefined(); miniselectionResultsLabel = new Label(); // miniselectionResultsLabel.setWidth("300px"); miniSelectDiseaseGroupsLayout.addComponent(miniselectionResultsLabel); selectionResultsOverview = new Label(); // selectionResultsOverview.setWidth("300px"); miniSelectDiseaseGroupsLayout.addComponent(selectionResultsOverview); selectionResultsOverview.setContentMode(ContentMode.HTML); userDataLayoutContainer = new HideOnClickLayout("User Data", userDataLayout, miniSelectDiseaseGroupsLayout, Alignment.TOP_LEFT, "info data", null); userDataLayoutContainer.setMargin(new MarginInfo(false, false, false, true)); userDataLayoutContainer.setVisability(true); this.addComponent(userDataLayoutContainer); VerticalLayout leftUserDataLayout = new VerticalLayout(); userDataLayout.addComponent(leftUserDataLayout); //select or enter new disease groups layout selectionResultsLabel = new Label("Selection:"); selectDiseaseGroupsContainer = initSelectEnterDatasetDiseaseGroups(width); // selectDiseaseGroupsContainer.setVisability(true); selectDiseaseGroupsContainer.setReadOnly(true); leftUserDataLayout.addComponent(selectDiseaseGroupsContainer); proteinsDataCaptureLayout = initProteinsDataCapture(width); leftUserDataLayout.addComponent(proteinsDataCaptureLayout); ResultsOverviewLayout.setStyleName("compareresults"); ResultsOverviewLayout.setWidth("350px"); ResultsOverviewLayout.setHeightUndefined(); ResultsOverviewLayout.setSpacing(true); ResultsOverviewLayout.setMargin(new MarginInfo(false, false, false, true)); Label resultsTitleLabel = new Label("Results Overview"); resultsTitleLabel.setContentMode(ContentMode.HTML); resultsTitleLabel.setStyleName("normalheader"); resultsTitleLabel.setHeight("20px"); ResultsOverviewLayout.addComponent(resultsTitleLabel); ResultsOverviewLayout.setComponentAlignment(resultsTitleLabel, Alignment.TOP_LEFT); resultContainer = new GridLayout(3, 5); resultContainer.setSpacing(true); resultContainer.setMargin(true); resultContainer.setHideEmptyRowsAndColumns(true); ResultsOverviewLayout.addComponent(resultContainer); ResultsOverviewLayout.setComponentAlignment(resultContainer, Alignment.TOP_LEFT); resultContainer.setWidth("100%"); foundPublicationLabel = new Label(); // resultContainer.addComponent(foundPublicationLabel, 0, 0); foundStudiesLabel = new Label(); // resultContainer.addComponent(foundStudiesLabel, 1, 0); foundProteinsLabel = new Label(); resultContainer.addComponent(foundProteinsLabel, 0, 0); newProteinsDownloadBtn = new Button(); newProteinsDownloadBtn.setCaptionAsHtml(true); newProteinsDownloadBtn.setStyleName(Reindeer.BUTTON_LINK); // ResultsOverviewLayout.addComponent(newProteinsDownloadBtn); newProteinsDownloadBtn.setDescription("Download new proteins (not found in CSF-PR) records"); // ResultsOverviewLayout.addComponent(newProteinsTextArea); newProteinsTextArea.setWidth("302px"); newProteinsTextArea.setHeight("200px"); newProteinsTextArea.setReadOnly(true); newProteinsDownloadBtn.addClickListener(QuantCompareDataLayout.this); newProteinsDownloadBtn.setId("notfounderrorbtn"); userDataLayout.addComponent(ResultsOverviewLayout); this.addComponent(resultsLayout); }
From source file:probe.com.view.body.quantdatasetsoverview.diseasegroupsfilters.ComparisonsSelectionOverviewBubbleChart.java
public ComparisonsSelectionOverviewBubbleChart(final QuantCentralManager Quant_Central_Manager, final CSFPRHandler CSFPR_Handler, int chartWidth, int chartHeight, Set<QuantDiseaseGroupsComparison> selectedComparisonList, List<QuantProtein> searchQuantificationProtList) { userDataCounter = 0;/*from w w w .ja va 2s.c o m*/ this.searchQuantificationProtList = searchQuantificationProtList; Map<String, String> diseaseHashedColorMap = Quant_Central_Manager.getDiseaseHashedColorMap(); for (String str : diseaseHashedColorMap.keySet()) { diseaseColorMap.put(str, Color.decode(diseaseHashedColorMap.get(str))); } this.width = chartWidth; this.height = 600; this.CSFPR_Handler = CSFPR_Handler; this.setWidth(width + "px"); this.setHeightUndefined(); this.Quant_Central_Manager = Quant_Central_Manager; this.Quant_Central_Manager.registerStudySelectionListener(ComparisonsSelectionOverviewBubbleChart.this); this.setSpacing(true); //init toplayout topLayout.setHeight(30 + "px"); topLayout.setSpacing(true); topLayout.setMargin(new MarginInfo(false, false, true, false)); this.addComponent(topLayout); Label overviewLabel = new Label("<font style='margin-left :50px;'>Overview</font> "); overviewLabel.setContentMode(ContentMode.HTML); topLayout.addComponent(overviewLabel); overviewLabel.setStyleName("subtitle"); overviewLabel.setWidth("120px"); InfoPopupBtn info = new InfoPopupBtn( "The bubble chart give an overview for the proteins existed in the selected comparisons.<br/>The diameter of the bubble represents the number of the proteins in the selected comparison and the color represents the trend<br/>"); info.setWidth("16px"); info.setHeight("16px"); topLayout.addComponent(info); this.topLayout.setVisible(false); //end of toplayout //init chartlayout this.chartLayoutContainer.setVisible(false); this.addComponent(chartLayoutContainer); chartLayoutContainer.setWidth(width + "px"); chartLayoutContainer.setHeight(height + "px"); chartLayoutContainer.addComponent(chartImage, "left: " + 0 + "px; top: " + 0 + "px;"); chartLayoutContainer.addComponent(chartLayout, "left: " + 0 + "px; top: " + 0 + "px;"); chartLayout.setWidth(width + "px"); chartLayout.setHeight(height + "px"); chartLayout.addLayoutClickListener(ComparisonsSelectionOverviewBubbleChart.this); //end of chartlayout //init bottomlayout bottomLayout.setWidth("100%"); this.addComponent(bottomLayout); this.setComponentAlignment(bottomLayout, Alignment.BOTTOM_RIGHT); bottomLayout.setVisible(false); HorizontalLayout btnContainerLayout = new HorizontalLayout(); btnContainerLayout.setSpacing(true); // btnContainerLayout.setMargin(new MarginInfo(false, false, false, false)); btnContainerLayout.setWidthUndefined(); btnContainerLayout.setHeightUndefined(); // btnContainerLayout.addStyleName("leftspacer"); bottomLayout.addComponent(btnContainerLayout); bottomLayout.setComponentAlignment(btnContainerLayout, Alignment.TOP_RIGHT); TrendLegend legendLayout = new TrendLegend("bubblechart"); legendLayout.setWidthUndefined(); legendLayout.setHeight("24px"); btnContainerLayout.addComponent(legendLayout); btnContainerLayout.setComponentAlignment(legendLayout, Alignment.TOP_RIGHT); // btnContainerLayout.setExpandRatio(legendLayout, 600); // btnContainerLayout.setExpandRatio(btnContainerLayout, 210); // VerticalLayout stableBtnWrapper = new VerticalLayout(); //// stableBtnWrapper.setWidth("64px"); // HorizontalLayout stableBtn = new HorizontalLayout(); // stableBtnWrapper.addComponent(stableBtn); // stableBtnWrapper.setComponentAlignment(stableBtn, Alignment.TOP_LEFT); // btnContainerLayout.addComponent(stableBtnWrapper); groupSwichBtn = new GroupSwichBtn(Quant_Central_Manager, searchQuantificationProtList); btnContainerLayout.addComponent(groupSwichBtn); final VerticalLayout appliedIcon = new VerticalLayout(); appliedIcon.setStyleName("appliedicon"); appliedIcon.setWidth("24px"); appliedIcon.setHeight("24px"); appliedIcon.setDescription("Hide stable proteins"); btnContainerLayout.addComponent(appliedIcon); // stableBtn.setStyleName("stablebtn"); // stableBtn.setHeight("24px"); // Label stableLabel = new Label("Equal"); // stableLabel.setWidth("44px"); // stableBtn.addComponent(stableLabel); appliedIcon.addLayoutClickListener(new LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { if (appliedIcon.getStyleName().equalsIgnoreCase("appliedicon")) { appliedIcon.setStyleName("unappliedicon"); Quant_Central_Manager.updateSignificantOnlySelection(true); appliedIcon.setDescription("Show stable proteins"); } else { appliedIcon.setStyleName("appliedicon"); Quant_Central_Manager.updateSignificantOnlySelection(false); appliedIcon.setDescription("Hide stable proteins"); } } }); exportPdfBtn = new Button(""); exportPdfBtn.setWidth("24px"); exportPdfBtn.setHeight("24px"); exportPdfBtn.setPrimaryStyleName("exportpdfbtn"); exportPdfBtn.setDescription("Export chart image"); StreamResource myResource = createResource(); FileDownloader fileDownloader = new FileDownloader(myResource); fileDownloader.extend(exportPdfBtn); btnContainerLayout.addComponent(exportPdfBtn); VerticalLayout unselectAllBtn = new VerticalLayout(); unselectAllBtn.setStyleName("unselectallbtn"); btnContainerLayout.addComponent(unselectAllBtn); btnContainerLayout.setComponentAlignment(unselectAllBtn, Alignment.TOP_LEFT); unselectAllBtn.setDescription("Clear selection"); unselectAllBtn.addLayoutClickListener(new LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { Quant_Central_Manager.setBubbleChartQuantProteinsSelection(new HashSet<String>(), ""); resetChart(); } }); final VerticalLayout selectMultiBtn = new VerticalLayout(); selectMultiBtn.setStyleName("selectmultiselectedbtn"); btnContainerLayout.addComponent(selectMultiBtn); btnContainerLayout.setComponentAlignment(selectMultiBtn, Alignment.TOP_LEFT); selectMultiBtn.setDescription("Multiple selection"); activeMultiSelect = true; selectMultiBtn.addLayoutClickListener(new LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { if (selectMultiBtn.getStyleName().equalsIgnoreCase("selectmultiselectedbtn")) { selectMultiBtn.setStyleName("selectmultibtn"); activeMultiSelect = false; } else { selectMultiBtn.setStyleName("selectmultiselectedbtn"); activeMultiSelect = true; } } }); //end of btns layout //init empty layout emptySelectionLayout = new VerticalLayout(); this.addComponent(emptySelectionLayout); emptySelectionLayout.setWidth(100 + "%"); emptySelectionLayout.setHeightUndefined(); VerticalLayout spacer = new VerticalLayout(); spacer.setHeight("100px"); spacer.setWidth("10px"); spacer.setStyleName(Reindeer.LAYOUT_WHITE); emptySelectionLayout.addComponent(spacer); emptySelectionLayout.setComponentAlignment(spacer, Alignment.BOTTOM_RIGHT); Label startLabel = new Label( "<center><h2 style='color:gray;'><b>Select comparison from the table</b></h2></center>"); startLabel.setContentMode(ContentMode.HTML); emptySelectionLayout.addComponent(startLabel); emptySelectionLayout.setComponentAlignment(startLabel, Alignment.MIDDLE_CENTER); Image handleft = new Image(); handleft.setSource(new ThemeResource("img/handleft.png")); emptySelectionLayout.addComponent(handleft); emptySelectionLayout.setComponentAlignment(handleft, Alignment.MIDDLE_CENTER); //init bubble chart }
From source file:probe.com.view.body.quantdatasetsoverview.diseasegroupsfilters.ComparisonsSelectionOverviewBubbleChart.java
public ComparisonsSelectionOverviewBubbleChart(final QuantCentralManager Quant_Central_Manager, final CSFPRHandler CSFPR_Handler, int chartWidth, int chartHeight, Set<QuantDiseaseGroupsComparison> selectedComparisonList, List<QuantProtein> searchQuantificationProtList, QuantDiseaseGroupsComparison userCustomizedComparison) { this.userCustomizedComparison = userCustomizedComparison; userDataCounter = 1;//from ww w.j a v a 2 s. co m this.searchQuantificationProtList = searchQuantificationProtList; Map<String, String> diseaseHashedColorMap = Quant_Central_Manager.getDiseaseHashedColorMap(); for (String str : diseaseHashedColorMap.keySet()) { diseaseColorMap.put(str, Color.decode(diseaseHashedColorMap.get(str))); } this.width = chartWidth; this.height = 600; this.CSFPR_Handler = CSFPR_Handler; this.setWidth(width + "px"); this.setHeightUndefined(); this.Quant_Central_Manager = Quant_Central_Manager; this.Quant_Central_Manager.registerStudySelectionListener(ComparisonsSelectionOverviewBubbleChart.this); this.setSpacing(true); //init toplayout topLayout.setHeight(30 + "px"); topLayout.setSpacing(true); topLayout.setMargin(new MarginInfo(false, false, true, false)); this.addComponent(topLayout); Label overviewLabel = new Label("<font style='margin-left :50px;'>Overview</font> "); overviewLabel.setContentMode(ContentMode.HTML); topLayout.addComponent(overviewLabel); overviewLabel.setStyleName("subtitle"); overviewLabel.setWidth("120px"); InfoPopupBtn info = new InfoPopupBtn( "The bubble chart give an overview for the proteins existed in the selected comparisons.<br/>The diameter of the bubble represents the number of the proteins in the selected comparison and the color represents the trend<br/>"); info.setWidth("16px"); info.setHeight("16px"); topLayout.addComponent(info); //end of toplayout //init chartlayout this.chartLayoutContainer.setVisible(false); this.addComponent(chartLayoutContainer); this.addComponent(chartLayoutContainer); chartLayoutContainer.setWidth(width + "px"); chartLayoutContainer.setHeight(height + "px"); chartLayoutContainer.addComponent(chartImage, "left: " + 0 + "px; top: " + 0 + "px;"); chartLayoutContainer.addComponent(chartLayout, "left: " + 0 + "px; top: " + 0 + "px;"); chartLayout.setWidth(width + "px"); chartLayout.setHeight(height + "px"); chartLayout.addLayoutClickListener(ComparisonsSelectionOverviewBubbleChart.this); //end of chartlayout //init bottomlayout bottomLayout.setWidth("100%"); this.addComponent(bottomLayout); this.setComponentAlignment(bottomLayout, Alignment.BOTTOM_RIGHT); bottomLayout.setVisible(false); HorizontalLayout btnContainerLayout = new HorizontalLayout(); btnContainerLayout.setSpacing(true); // btnContainerLayout.setMargin(new MarginInfo(false, false, false, false)); btnContainerLayout.setWidthUndefined(); btnContainerLayout.setHeightUndefined(); // btnContainerLayout.addStyleName("leftspacer"); bottomLayout.addComponent(btnContainerLayout); bottomLayout.setComponentAlignment(btnContainerLayout, Alignment.TOP_RIGHT); TrendLegend legendLayout = new TrendLegend("bubblechart"); legendLayout.setWidthUndefined(); legendLayout.setHeight("24px"); btnContainerLayout.addComponent(legendLayout); btnContainerLayout.setComponentAlignment(legendLayout, Alignment.TOP_RIGHT); Quant_Central_Manager.insertNoftfication("Quantitative Datasets", "Remeber you can flip the disease group comparisons using (Swich disease groups button)<img src='VAADIN/themes/dario-theme/img/flip-v-updated.png' height='25px' width='25' alt='Reorder and select' Align='center'/> ", width, width, "flipnotification"); // btnContainerLayout.setExpandRatio(legendLayout, 600); // btnContainerLayout.setExpandRatio(btnContainerLayout, 210); // VerticalLayout stableBtnWrapper = new VerticalLayout(); //// stableBtnWrapper.setWidth("64px"); // HorizontalLayout stableBtn = new HorizontalLayout(); // stableBtnWrapper.addComponent(stableBtn); // stableBtnWrapper.setComponentAlignment(stableBtn, Alignment.TOP_LEFT); // btnContainerLayout.addComponent(stableBtnWrapper); groupSwichBtn = new GroupSwichBtn(Quant_Central_Manager, searchQuantificationProtList); btnContainerLayout.addComponent(groupSwichBtn); final VerticalLayout appliedIcon = new VerticalLayout(); appliedIcon.setStyleName("appliedicon"); appliedIcon.setWidth("24px"); appliedIcon.setHeight("24px"); appliedIcon.setDescription("Hide stable proteins"); btnContainerLayout.addComponent(appliedIcon); // stableBtn.setStyleName("stablebtn"); // stableBtn.setHeight("24px"); // Label stableLabel = new Label("Equal"); // stableLabel.setWidth("44px"); // stableBtn.addComponent(stableLabel); appliedIcon.addLayoutClickListener(new LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { if (appliedIcon.getStyleName().equalsIgnoreCase("appliedicon")) { appliedIcon.setStyleName("unappliedicon"); Quant_Central_Manager.updateSignificantOnlySelection(true); appliedIcon.setDescription("Show stable proteins"); } else { appliedIcon.setStyleName("appliedicon"); Quant_Central_Manager.updateSignificantOnlySelection(false); appliedIcon.setDescription("Hide stable proteins"); } } }); exportPdfBtn = new Button(""); exportPdfBtn.setWidth("24px"); exportPdfBtn.setHeight("24px"); exportPdfBtn.setPrimaryStyleName("exportpdfbtn"); exportPdfBtn.setDescription("Export chart image"); StreamResource myResource = createResource(); FileDownloader fileDownloader = new FileDownloader(myResource); fileDownloader.extend(exportPdfBtn); btnContainerLayout.addComponent(exportPdfBtn); VerticalLayout unselectAllBtn = new VerticalLayout(); unselectAllBtn.setStyleName("unselectallbtn"); btnContainerLayout.addComponent(unselectAllBtn); btnContainerLayout.setComponentAlignment(unselectAllBtn, Alignment.TOP_LEFT); unselectAllBtn.setDescription("Clear selection"); unselectAllBtn.addLayoutClickListener(new LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { Quant_Central_Manager.setBubbleChartQuantProteinsSelection(new HashSet<String>(), ""); resetChart(); } }); final VerticalLayout selectMultiBtn = new VerticalLayout(); selectMultiBtn.setStyleName("selectmultiselectedbtn"); btnContainerLayout.addComponent(selectMultiBtn); btnContainerLayout.setComponentAlignment(selectMultiBtn, Alignment.TOP_LEFT); selectMultiBtn.setDescription("Multiple selection"); activeMultiSelect = true; selectMultiBtn.addLayoutClickListener(new LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { if (selectMultiBtn.getStyleName().equalsIgnoreCase("selectmultiselectedbtn")) { selectMultiBtn.setStyleName("selectmultibtn"); activeMultiSelect = false; } else { selectMultiBtn.setStyleName("selectmultiselectedbtn"); activeMultiSelect = true; } } }); //end of btns layout //init empty layout emptySelectionLayout = new VerticalLayout(); this.addComponent(emptySelectionLayout); emptySelectionLayout.setWidth(width + "px"); emptySelectionLayout.setHeightUndefined(); VerticalLayout spacer = new VerticalLayout(); spacer.setHeight("100px"); spacer.setWidth("10px"); spacer.setStyleName(Reindeer.LAYOUT_WHITE); emptySelectionLayout.addComponent(spacer); emptySelectionLayout.setComponentAlignment(spacer, Alignment.BOTTOM_RIGHT); Label startLabel = new Label( "<center><h2 style='color:gray;'><b>Select comparison from the table</b></h2></center>"); startLabel.setContentMode(ContentMode.HTML); emptySelectionLayout.addComponent(startLabel); emptySelectionLayout.setComponentAlignment(startLabel, Alignment.MIDDLE_CENTER); Image handleft = new Image(); handleft.setSource(new ThemeResource("img/handleft.png")); emptySelectionLayout.addComponent(handleft); emptySelectionLayout.setComponentAlignment(handleft, Alignment.MIDDLE_CENTER); }
From source file:probe.com.view.body.quantdatasetsoverview.diseasegroupsfilters.interactivepiechartfilters.StudiesPieChartFiltersContainerLayout.java
/** * * @param Quant_Central_Manager/*from w ww . j av a 2 s. co m*/ * @param handler */ public StudiesPieChartFiltersContainerLayout(QuantCentralManager Quant_Central_Manager, final CSFPRHandler handler) { int layoutHeight = Page.getCurrent().getBrowserWindowHeight() - 200; int layoutWidth = Page.getCurrent().getBrowserWindowWidth() - 200; this.setWidth(layoutWidth + "px"); this.setHeight(layoutHeight + "px"); int filterWidth = layoutWidth / 3; this.setSpacing(true); boolean[] activeFilters = Quant_Central_Manager.getActiveFilters(); Map<Integer, QuantDatasetObject> quantDatasetArr = Quant_Central_Manager.getFilteredDatasetsList(); internalSelectionManager = new PieChartsSelectionManager(Quant_Central_Manager); if (quantDatasetArr == null) { return; } this.setRows(4); this.setColumns(4); int colCounter = 0; int rowCounter = 0; this.chartSet.clear(); for (int x = 0; x < activeFilters.length; x++) { String filterId = ""; if (activeFilters[x]) { Map<String, List<Integer>> dsIndexesMap = new HashMap<String, List<Integer>>(); // List<Object> valueSet = new ArrayList<Object>(); switch (x) { case 0: // filterId = "identifiedProteinsNumber"; // for (QuantDatasetObject pb : quantDatasetArr) { // if (pb == null) { // continue; // } // int value = pb.getIdentifiedProteinsNumber(); // valueSet.add(value); // } break; case 1: // filterId = "quantifiedProteinsNumber"; // for (QuantDatasetObject pb : quantDatasetArr) { // if (pb == null) { // continue; // } // int value = pb.getQuantifiedProteinsNumber(); // valueSet.add(value); // // } break; case 2: // filterId = "analyticalMethod"; // for (QuantDatasetObject pb : quantDatasetArr.values()) { // if (pb == null) { // continue; // } // String value = pb.getAnalyticalMethod(); // valueSet.add(value); // // } break; case 3: // filterId = "rawDataUrl"; // for (QuantDatasetObject pb : quantDatasetArr.values()) { // // if (pb == null) { // continue; // } // if (!dsIndexesMap.containsKey(pb.getRawDataUrl())) { // List<Integer> list = new ArrayList<Integer>(); // dsIndexesMap.put(pb.getRawDataUrl(), list); // // } // List<Integer> list = dsIndexesMap.get(pb.getRawDataUrl()); // list.add(pb.getUniqId()); // dsIndexesMap.put(pb.getRawDataUrl(), list); // valueSet.add(pb.getRawDataUrl()); // // } break; case 4: filterId = "year"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } if (!dsIndexesMap.containsKey(pb.getYear() + "")) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(pb.getYear() + "", list); } List<Integer> list = dsIndexesMap.get(pb.getYear() + ""); list.add(pb.getDsKey()); dsIndexesMap.put(pb.getYear() + "", list); int value = pb.getYear(); // valueSet.add(value); } break; case 5: filterId = "typeOfStudy"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } if (!dsIndexesMap.containsKey(pb.getTypeOfStudy())) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(pb.getTypeOfStudy(), list); } if (pb.getTypeOfStudy().trim().equalsIgnoreCase("")) { pb.setTypeOfStudy("Not Available"); } List<Integer> list = dsIndexesMap.get(pb.getTypeOfStudy()); list.add(pb.getDsKey()); dsIndexesMap.put(pb.getTypeOfStudy(), list); String value = pb.getTypeOfStudy(); // valueSet.add(value); } break; case 6: filterId = "sampleType"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } if (pb.getSampleType().trim().equalsIgnoreCase("")) { pb.setSampleType("Not Available"); } if (!dsIndexesMap.containsKey(pb.getSampleType())) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(pb.getSampleType(), list); } List<Integer> list = dsIndexesMap.get(pb.getSampleType()); list.add(pb.getDsKey()); dsIndexesMap.put(pb.getSampleType(), list); String value = pb.getSampleType(); // valueSet.add(value); } break; case 7: filterId = "sampleMatching"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } if (pb.getSampleMatching().trim().equalsIgnoreCase("")) { pb.setSampleMatching("Not Available"); } if (!dsIndexesMap.containsKey(pb.getSampleMatching())) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(pb.getSampleMatching(), list); } List<Integer> list = dsIndexesMap.get(pb.getSampleMatching()); list.add(pb.getDsKey()); dsIndexesMap.put(pb.getSampleMatching(), list); String value = pb.getSampleMatching(); // valueSet.add(value); } break; case 8: filterId = "technology"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } String value = pb.getTechnology(); if (value == null || value.equalsIgnoreCase("")) { value = "Not Available"; } if (!dsIndexesMap.containsKey(value)) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(value, list); } List<Integer> list = dsIndexesMap.get(value); list.add(pb.getDsKey()); dsIndexesMap.put(value, list); // valueSet.add(value); } break; case 9: filterId = "analyticalApproach"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } String value = pb.getAnalyticalApproach(); if (value == null || value.trim().equalsIgnoreCase("")) { pb.setAnalyticalApproach("Not Available"); value = "Not Available"; } if (!dsIndexesMap.containsKey(value)) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(value, list); } List<Integer> list = dsIndexesMap.get(pb.getAnalyticalApproach()); list.add(pb.getDsKey()); dsIndexesMap.put(value, list); // valueSet.add(value); } break; case 10: filterId = "enzyme"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } String value = pb.getEnzyme(); if (value == null || value.trim().equalsIgnoreCase("")) { value = "Not Available"; pb.setEnzyme(value); } if (!dsIndexesMap.containsKey(value)) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(value, list); } List<Integer> list = dsIndexesMap.get(value); list.add(pb.getDsKey()); dsIndexesMap.put(value, list); // valueSet.add(value); } break; case 11: filterId = "shotgunTargeted"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } String value = pb.getShotgunTargeted(); if (value == null || value.trim().equalsIgnoreCase("")) { value = "Not Available"; pb.setShotgunTargeted(value); } if (!dsIndexesMap.containsKey(value)) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(value, list); } List<Integer> list = dsIndexesMap.get(value); list.add(pb.getDsKey()); dsIndexesMap.put(value, list); // valueSet.add(value); } break; case 12: // filterId = "quantificationBasis"; // for (QuantDatasetObject pb : quantDatasetArr.values()) { // if (pb == null) { // continue; // } // String value = pb.getQuantificationBasis(); // if (value == null || value.trim().equalsIgnoreCase("")) { // value = "Not Available"; // pb.setQuantificationBasis(value); // } // if (!dsIndexesMap.containsKey(value)) { // List<Integer> list = new ArrayList<Integer>(); // dsIndexesMap.put(value, list); // // } // List<Integer> list = dsIndexesMap.get(value); // list.add(pb.getDsKey()); // dsIndexesMap.put(value, list); // valueSet.add(value); // } break; case 13: filterId = "quantBasisComment"; for (QuantDatasetObject pb : quantDatasetArr.values()) { if (pb == null) { continue; } String value = pb.getQuantBasisComment(); if (value == null || value.trim().equalsIgnoreCase("")) { value = "Not Available"; pb.setQuantBasisComment(value); } if (!dsIndexesMap.containsKey(value)) { List<Integer> list = new ArrayList<Integer>(); dsIndexesMap.put(value, list); } List<Integer> list = dsIndexesMap.get(value); list.add(pb.getDsKey()); dsIndexesMap.put(value, list); // valueSet.add(value); } break; case 14: // for (QuantDatasetObject pb : QuantDatasetListObject) { // int value = pb.getQuantifiedProteinsNumber(); // valueSet.add(value); // } break; case 15: // for (QuantDatasetObject pb : QuantDatasetListObject) { // int value = pb.getPatientsGroup1Number(); // valueSet.add(value); // } break; case 16: // for (QuantDatasetObject pb : QuantDatasetListObject) { // int value = pb.getPatientsGroup2Number(); // valueSet.add(value); // } break; case 17: // for (QuantDatasetObject pb : QuantDatasetListObject) { // String value = pb.getNormalizationStrategy(); // valueSet.add(value); // } break; } // if (!valueSet.isEmpty()) { //do we need valueSet;; JfreeDivaPieChartFilter iFilter = new JfreeDivaPieChartFilter(filterId, x, internalSelectionManager, dsIndexesMap, filterWidth); chartSet.add(iFilter.getChart()); // fullFilterList.put(filterId, valueSet); this.addComponent(iFilter, colCounter++, rowCounter); this.setComponentAlignment(iFilter, Alignment.MIDDLE_CENTER); if (colCounter == 3) { colCounter = 0; rowCounter++; } } // } } Quant_Central_Manager.setStudiesOverviewPieChart(chartSet); HorizontalLayout btnLayout = new HorizontalLayout(); btnLayout.setHeight("23px"); btnLayout.setWidthUndefined(); btnLayout.setSpacing(true); btnLayout.setStyleName(Reindeer.LAYOUT_WHITE); if (colCounter == 3) { this.addComponent(btnLayout, 2, ++rowCounter); } else { this.addComponent(btnLayout, 2, rowCounter); } this.setComponentAlignment(btnLayout, Alignment.MIDDLE_CENTER); Button applyFilters = new Button("Apply"); applyFilters.setDescription("Apply the selected filters"); applyFilters.setPrimaryStyleName("resetbtn"); applyFilters.setWidth("50px"); applyFilters.setHeight("24px"); btnLayout.addComponent(applyFilters); applyFilters.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { pieChartFiltersBtn.closePupupWindow(); } }); // Button unselectAllBtn = new Button("Unselect All"); // unselectAllBtn.setStyleName(Reindeer.BUTTON_SMALL); // btnLayout.addComponent(unselectAllBtn); // unselectAllBtn.addClickListener(new Button.ClickListener() { // // @Override // public void buttonClick(Button.ClickEvent event) { // // internalSelectionManager.unselectAll(); // // } // }); // Button unselectAllBtn = new Button("Clear"); unselectAllBtn.setPrimaryStyleName("resetbtn"); unselectAllBtn.setWidth("50px"); unselectAllBtn.setHeight("24px"); btnLayout.addComponent(unselectAllBtn); btnLayout.setComponentAlignment(unselectAllBtn, Alignment.TOP_LEFT); unselectAllBtn.setDescription("Clear All Selections"); unselectAllBtn.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { internalSelectionManager.unselectAll(); } }); Button resetFiltersBtn = new Button("Reset"); resetFiltersBtn.setPrimaryStyleName("resetbtn"); resetFiltersBtn.setWidth("50px"); resetFiltersBtn.setHeight("24px"); btnLayout.addComponent(resetFiltersBtn); resetFiltersBtn.setDescription("Reset all applied filters"); resetFiltersBtn.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { internalSelectionManager.resetToInitState(); internalSelectionManager.resetCentralSelectionManager(); } }); Button exportChartsBtn = new Button(""); exportChartsBtn.setWidth("24px"); exportChartsBtn.setHeight("24px"); exportChartsBtn.setPrimaryStyleName("exportpdfbtn"); btnLayout.addComponent(exportChartsBtn); exportChartsBtn.setDescription("Export all charts filters as pdf file"); // exportChartsBtn.addClickListener(new Button.ClickListener() { // @Override // public void buttonClick(Button.ClickEvent event) { // String url = handler.exportImgAsPdf(chartSet, "piechart_filters.pdf"); // FileResource res = new FileResource(new File(url)); // Page.getCurrent().open(res, "_blank", true); // } // }); StreamResource myResource = createResource(handler); FileDownloader fileDownloader = new FileDownloader(myResource); fileDownloader.extend(exportChartsBtn); pieChartFiltersBtn = new PopupInteractiveDSFiltersLayout(this); }
From source file:probe.com.view.body.quantdatasetsoverview.diseasegroupsfilters.PopupRecombineDiseaseGroups.java
private void initPopupLayout() { int h = 0;//(default_DiseaseCat_DiseaseGroupMap.size() * 33) + 300; for (Map<String, String> m : default_DiseaseCat_DiseaseGroupMap.values()) { if (h < m.size()) { h = m.size();// w ww . j av a 2 s . c o m } } h = (h * 26) + 200; int w = 700; if (Page.getCurrent().getBrowserWindowHeight() - 280 < h) { h = Page.getCurrent().getBrowserWindowHeight() - 280; } if (Page.getCurrent().getBrowserWindowWidth() < w) { w = Page.getCurrent().getBrowserWindowWidth(); } popupWindow.setWidth(w + "px"); popupWindow.setHeight(h + "px"); popupBodyLayout.setWidth((w - 50) + "px"); Set<String> diseaseSet = Quant_Central_Manager.getDiseaseCategorySet(); diseaseTypeSelectionList.setDescription("Select disease category"); for (String disease : diseaseSet) { diseaseTypeSelectionList.addItem(disease); diseaseTypeSelectionList.setItemCaption(disease, (disease)); } HorizontalLayout diseaseCategorySelectLayout = new HorizontalLayout(); diseaseCategorySelectLayout.setWidthUndefined(); diseaseCategorySelectLayout.setHeight("50px"); diseaseCategorySelectLayout.setSpacing(true); diseaseCategorySelectLayout.setMargin(true); popupBodyLayout.addComponent(diseaseCategorySelectLayout); popupBodyLayout.setComponentAlignment(diseaseCategorySelectLayout, Alignment.TOP_LEFT); Label title = new Label("Disease Category"); title.setStyleName(Reindeer.LABEL_SMALL); diseaseCategorySelectLayout.addComponent(title); diseaseCategorySelectLayout.setComponentAlignment(title, Alignment.BOTTOM_CENTER); diseaseTypeSelectionList.setWidth("200px"); diseaseTypeSelectionList.setNullSelectionAllowed(false); diseaseTypeSelectionList.setValue("All"); diseaseTypeSelectionList.setImmediate(true); diseaseCategorySelectLayout.addComponent(diseaseTypeSelectionList); diseaseCategorySelectLayout.setComponentAlignment(diseaseTypeSelectionList, Alignment.TOP_LEFT); diseaseTypeSelectionList.setStyleName("diseaseselectionlist"); diseaseTypeSelectionList.addValueChangeListener(new Property.ValueChangeListener() { @Override public void valueChange(Property.ValueChangeEvent event) { boolean showAll = false; String value = event.getProperty().getValue().toString(); if (value.equalsIgnoreCase("All")) { showAll = true; } for (String dName : diseaseGroupsGridLayoutMap.keySet()) { if (dName.equalsIgnoreCase(value) || showAll) { diseaseGroupsGridLayoutMap.get(dName).setVisible(true); } else { diseaseGroupsGridLayoutMap.get(dName).setVisible(false); } } } }); VerticalLayout diseaseGroupsNamesContainer = new VerticalLayout(); diseaseGroupsNamesContainer.setWidth("100%"); diseaseGroupsNamesContainer.setHeightUndefined(); popupBodyLayout.addComponent(diseaseGroupsNamesContainer); diseaseGroupsNamesContainer.setStyleName(Reindeer.LAYOUT_WHITE); GridLayout diseaseNamesHeader = new GridLayout(2, 1); diseaseNamesHeader.setWidth("100%"); diseaseNamesHeader.setHeightUndefined(); diseaseNamesHeader.setSpacing(true); diseaseNamesHeader.setMargin(new MarginInfo(true, false, true, false)); diseaseGroupsNamesContainer.addComponent(diseaseNamesHeader); Label col1Label = new Label("Group Name"); diseaseNamesHeader.addComponent(col1Label, 0, 0); col1Label.setStyleName(Reindeer.LABEL_SMALL); Label col2Label = new Label("Suggested Name"); diseaseNamesHeader.addComponent(col2Label, 1, 0); col2Label.setStyleName(Reindeer.LABEL_SMALL); Panel diseaseGroupsNamesFrame = new Panel(); diseaseGroupsNamesFrame.setWidth("100%"); diseaseGroupsNamesFrame.setHeight((h - 200) + "px"); diseaseGroupsNamesContainer.addComponent(diseaseGroupsNamesFrame); diseaseGroupsNamesFrame.setStyleName(Reindeer.PANEL_LIGHT); VerticalLayout diseaseNamesUpdateContainerLayout = new VerticalLayout(); for (String diseaseCategory : diseaseSet) { if (diseaseCategory.equalsIgnoreCase("All")) { continue; } HorizontalLayout diseaseNamesUpdateContainer = initDiseaseNamesUpdateContainer(diseaseCategory); diseaseNamesUpdateContainerLayout.addComponent(diseaseNamesUpdateContainer); diseaseGroupsGridLayoutMap.put(diseaseCategory, diseaseNamesUpdateContainer); } diseaseGroupsNamesFrame.setContent(diseaseNamesUpdateContainerLayout); HorizontalLayout btnLayout = new HorizontalLayout(); btnLayout.setMargin(true); btnLayout.setSpacing(true); Button resetFiltersBtn = new Button("Reset"); resetFiltersBtn.setPrimaryStyleName("resetbtn"); btnLayout.addComponent(resetFiltersBtn); resetFiltersBtn.setWidth("50px"); resetFiltersBtn.setHeight("24px"); resetFiltersBtn.setDescription("Reset group names to default"); resetFiltersBtn.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { resetToDefault(); } }); Button resetToOriginalBtn = new Button("Publications Names"); resetToOriginalBtn.setPrimaryStyleName("resetbtn"); btnLayout.addComponent(resetToOriginalBtn); resetToOriginalBtn.setWidth("150px"); resetToOriginalBtn.setHeight("24px"); resetToOriginalBtn.setDescription("Reset group names to original publication names"); resetToOriginalBtn.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { resetToPublicationsNames(); } }); Button applyFilters = new Button("Update"); applyFilters.setDescription("Update disease groups with the selected names"); applyFilters.setPrimaryStyleName("resetbtn"); applyFilters.setWidth("50px"); applyFilters.setHeight("24px"); btnLayout.addComponent(applyFilters); applyFilters.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { updateGroups(); } }); popupBodyLayout.addComponent(btnLayout); popupBodyLayout.setComponentAlignment(btnLayout, Alignment.MIDDLE_RIGHT); resetToDefault(); }
From source file:probe.com.view.body.quantdatasetsoverview.diseasegroupsfilters.PopupReorderGroupsLayout.java
private void initPopupBody(int w) { HorizontalLayout mainContainer = new HorizontalLayout(); mainContainer.setStyleName(Reindeer.LAYOUT_WHITE); mainContainer.setSpacing(true);//from ww w .ja va2s. c o m mainContainer.setWidth(w + "px"); mainContainer.setHeightUndefined(); mainContainer.setMargin(new MarginInfo(true, false, false, false)); mainContainer.addComponent(sortableDiseaseGroupI); mainContainer.setComponentAlignment(sortableDiseaseGroupI, Alignment.TOP_LEFT); mainContainer.addComponent(sortableDiseaseGroupII); mainContainer.setComponentAlignment(sortableDiseaseGroupII, Alignment.TOP_RIGHT); Property.ValueChangeListener selectionChangeListenet = new Property.ValueChangeListener() { @Override public void valueChange(Property.ValueChangeEvent event) { if (sortableDiseaseGroupI.isSingleSelected()) { sortableDiseaseGroupII.setEnableSelection(true); } else { sortableDiseaseGroupII.selectAndHideUnselected(null, false); // sortableDiseaseGroupII.setEnableSelection(false); return; } Set<String> updatedGroupIISet = filterPatGroup2List(sortableDiseaseGroupI.getSelectionSet()); sortableDiseaseGroupII.selectAndHideUnselected(updatedGroupIISet, false); } }; sortableDiseaseGroupI.addSelectionValueChangeListener(selectionChangeListenet); popupBodyLayout.addComponent(mainContainer); popupBodyLayout.setComponentAlignment(mainContainer, Alignment.TOP_LEFT); HorizontalLayout bottomLayout = new HorizontalLayout(); bottomLayout.setWidth("100%"); bottomLayout.setMargin(new MarginInfo(true, false, false, false)); popupBodyLayout.addComponent(bottomLayout); int width = w - 200; ToggleBtn sortSelectToggleBtn = new ToggleBtn("Sort Groups ", "Select Groups ", "Sort drag & drop", "*Select to filter datasets", width); bottomLayout.addComponent(sortSelectToggleBtn);//commentLabel bottomLayout.setComponentAlignment(sortSelectToggleBtn, Alignment.MIDDLE_LEFT);//commentLabel bottomLayout.setExpandRatio(sortSelectToggleBtn, w); HorizontalLayout btnLayout = new HorizontalLayout(); btnLayout.setSpacing(true); LayoutEvents.LayoutClickListener toggleListener = new LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { if (event.getComponent().getStyleName().equalsIgnoreCase("toggleleft")) { sortableDiseaseGroupI.setLayoutMode("sort"); sortableDiseaseGroupII.setEnabled(true); sortableDiseaseGroupII.setLayoutMode("sort"); } else { sortableDiseaseGroupI.setLayoutMode("select"); sortableDiseaseGroupII.setEnableSelection(false); sortableDiseaseGroupII.setLayoutMode("select"); if (sortableDiseaseGroupI.isSingleSelected()) { sortableDiseaseGroupII.setEnableSelection(true); } } } }; sortSelectToggleBtn.addLayoutClickListener(toggleListener); btnLayout.setWidthUndefined(); bottomLayout.addComponent(btnLayout); bottomLayout.setComponentAlignment(btnLayout, Alignment.TOP_RIGHT); bottomLayout.setExpandRatio(btnLayout, 250); Button applyFilters = new Button("Apply"); applyFilters.setDescription("Apply the updates"); applyFilters.setPrimaryStyleName("resetbtn"); applyFilters.setWidth("50px"); applyFilters.setHeight("24px"); btnLayout.addComponent(applyFilters); applyFilters.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { rowHeaders = sortableDiseaseGroupI.getSortedSet(); colHeaders = sortableDiseaseGroupII.getSortedSet(); updateSelectionManager(studiesIndexes); popupWindow.close(); } }); Button cancelFiltersBtn = new Button("Cancel"); cancelFiltersBtn.setPrimaryStyleName("resetbtn"); btnLayout.addComponent(cancelFiltersBtn); cancelFiltersBtn.setWidth("50px"); cancelFiltersBtn.setHeight("24px"); cancelFiltersBtn.setDescription("Reset all applied filters"); cancelFiltersBtn.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { popupWindow.close(); } }); Button resetFiltersBtn = new Button("Reset"); resetFiltersBtn.setPrimaryStyleName("resetbtn"); btnLayout.addComponent(resetFiltersBtn); resetFiltersBtn.setWidth("50px"); resetFiltersBtn.setHeight("24px"); resetFiltersBtn.setDescription("Reset all groups"); resetFiltersBtn.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { Quant_Central_Manager.resetFiltersListener(); rowHeaders = Quant_Central_Manager.getSelectedHeatMapRows(); colHeaders = Quant_Central_Manager.getSelectedHeatMapColumns(); sortableDiseaseGroupI.initLists(rowHeaders); sortableDiseaseGroupII.initLists(colHeaders); } }); }
From source file:probe.com.view.core.HideOnClickLayout.java
/** * * @param title//ww w. j ava2 s . co m * @param fullBodyLayout * @param miniBodyLayout * @param infoText */ public HideOnClickLayout(String title, Layout fullBodyLayout, AbstractOrderedLayout miniBodyLayout, String infoText, VerticalLayout tipsIcon) { this.setMargin(new MarginInfo(false, false, false, false)); this.setWidth("100%"); this.fullBodyLayout = fullBodyLayout; this.fullBodyLayout.setVisible(false); this.miniBodyLayout = miniBodyLayout; titleLayout = new HorizontalLayout(); titleLayout.setHeight("30px"); titleLayout.setWidth("100%"); titleLayout.setSpacing(true); HorizontalLayout titleHeaderLayout = new HorizontalLayout(); titleHeaderLayout.setWidthUndefined(); titleHeaderLayout.setSpacing(true); show = new ShowLabel(); show.setHeight("20px"); titleHeaderLayout.addComponent(show); titleHeaderLayout.setComponentAlignment(show, Alignment.BOTTOM_LEFT); titleLabel = new Label(title); titleLabel.setContentMode(ContentMode.HTML); titleLabel.setHeight("20px"); titleHeaderLayout.addComponent(titleLabel); titleHeaderLayout.setComponentAlignment(titleLabel, Alignment.TOP_LEFT); titleHeaderLayout.addLayoutClickListener(HideOnClickLayout.this); VerticalLayout titleHeaderContainer = new VerticalLayout(titleHeaderLayout); titleHeaderContainer.setWidthUndefined(); titleLayout.addComponent(titleHeaderContainer); info = new InfoPopupBtn(infoText); if (infoText != null && !infoText.trim().equalsIgnoreCase("")) { titleHeaderLayout.addComponent(info); titleLabel.setStyleName("filterShowLabel"); } else { titleLabel.setStyleName("normalheader"); } this.addComponent(titleLayout); this.addComponent(this.fullBodyLayout); this.setComponentAlignment(this.fullBodyLayout, Alignment.MIDDLE_CENTER); if (miniBodyLayout != null) { titleLayout.addComponent(this.miniBodyLayout); titleLayout.setComponentAlignment(this.miniBodyLayout, Alignment.BOTTOM_LEFT); titleLayout.setExpandRatio(this.miniBodyLayout, 5); titleLayout.setExpandRatio(titleHeaderContainer, 1); miniBodyLayout.addLayoutClickListener(HideOnClickLayout.this); } if (tipsIcon != null) { titleHeaderLayout.addComponent(tipsIcon); } }