Search in sources :

Example 1 with MultiSelectionModelImpl

use of com.vaadin.ui.components.grid.MultiSelectionModelImpl in project SORMAS-Project by hzi-braunschweig.

the class ContactVisitsView method createTopBar.

public HorizontalLayout createTopBar() {
    HorizontalLayout topLayout = new HorizontalLayout();
    topLayout.setSpacing(true);
    topLayout.setWidth(100, Unit.PERCENTAGE);
    topLayout.addStyleName(CssStyles.VSPACE_3);
    if (UserProvider.getCurrent().hasUserRight(UserRight.PERFORM_BULK_OPERATIONS)) {
        topLayout.setWidth(100, Unit.PERCENTAGE);
        MenuBar bulkOperationsDropdown = MenuBarHelper.createDropDown(Captions.bulkActions, new MenuBarHelper.MenuBarItem(I18nProperties.getCaption(Captions.bulkDelete), VaadinIcons.TRASH, selectedItem -> {
            ControllerProvider.getVisitController().deleteAllSelectedItems(grid.asMultiSelect().getSelectedItems(), new Runnable() {

                public void run() {
                    navigateTo(criteria);
                }
            });
        }));
        topLayout.addComponent(bulkOperationsDropdown);
        topLayout.setComponentAlignment(bulkOperationsDropdown, Alignment.MIDDLE_RIGHT);
        topLayout.setExpandRatio(bulkOperationsDropdown, 1);
    }
    if (UserProvider.getCurrent().hasUserRight(UserRight.VISIT_EXPORT)) {
        Button exportButton = ButtonHelper.createIconButton(Captions.export, VaadinIcons.DOWNLOAD, null, ValoTheme.BUTTON_PRIMARY);
        {
            topLayout.addComponent(exportButton);
            topLayout.setComponentAlignment(exportButton, Alignment.MIDDLE_RIGHT);
            if (topLayout.getComponentCount() == 1) {
                topLayout.setExpandRatio(exportButton, 1);
            }
        }
        StreamResource exportStreamResource = DownloadUtil.createCsvExportStreamResource(VisitExportDto.class, VisitExportType.CONTACT_VISITS, (Integer start, Integer max) -> FacadeProvider.getVisitFacade().getVisitsExportList(grid.getCriteria(), grid.getSelectionModel() instanceof MultiSelectionModelImpl ? grid.asMultiSelect().getSelectedItems().stream().map(VisitIndexDto::getUuid).collect(Collectors.toSet()) : null, VisitExportType.CONTACT_VISITS, start, max, null), (propertyId, type) -> {
            String caption = findPrefixCaption(propertyId, VisitExportDto.I18N_PREFIX, VisitDto.I18N_PREFIX, PersonDto.I18N_PREFIX, SymptomsDto.I18N_PREFIX);
            if (Date.class.isAssignableFrom(type)) {
                caption += " (" + DateFormatHelper.getDateFormatPattern() + ")";
            }
            return caption;
        }, ExportEntityName.CONTACT_VISITS, null);
        new FileDownloader(exportStreamResource).extend(exportButton);
    }
    if (UserProvider.getCurrent().hasUserRight(UserRight.VISIT_CREATE)) {
        newButton = ButtonHelper.createIconButton(Captions.visitNewVisit, VaadinIcons.PLUS_CIRCLE, e -> ControllerProvider.getVisitController().createVisit(this.getContactRef(), r -> navigateTo(criteria)), ValoTheme.BUTTON_PRIMARY);
        topLayout.addComponent(newButton);
        topLayout.setComponentAlignment(newButton, Alignment.MIDDLE_RIGHT);
        final ContactDto contactDto = FacadeProvider.getContactFacade().getByUuid(this.getContactRef().getUuid());
        if (contactDto.getResultingCase() != null) {
            newButton.setEnabled(false);
            final Label label = new Label(VaadinIcons.INFO_CIRCLE.getHtml(), ContentMode.HTML);
            label.setDescription(I18nProperties.getString(Strings.infoContactAlreadyConvertedToCase));
            topLayout.addComponent(label);
            topLayout.setComponentAlignment(label, Alignment.MIDDLE_RIGHT);
        }
    }
    return topLayout;
}
Also used : StreamResource(com.vaadin.server.StreamResource) VisitGrid(de.symeda.sormas.ui.visit.VisitGrid) Date(java.util.Date) FacadeProvider(de.symeda.sormas.api.FacadeProvider) I18nProperties(de.symeda.sormas.api.i18n.I18nProperties) DateFormatHelper(de.symeda.sormas.ui.utils.DateFormatHelper) Alignment(com.vaadin.ui.Alignment) VisitExportDto(de.symeda.sormas.api.visit.VisitExportDto) PersonDto(de.symeda.sormas.api.person.PersonDto) DetailSubComponentWrapper(de.symeda.sormas.ui.utils.DetailSubComponentWrapper) ControllerProvider(de.symeda.sormas.ui.ControllerProvider) ExportEntityName(de.symeda.sormas.ui.utils.ExportEntityName) ViewModelProviders(de.symeda.sormas.ui.ViewModelProviders) CssStyles(de.symeda.sormas.ui.utils.CssStyles) MenuBarHelper(de.symeda.sormas.ui.utils.MenuBarHelper) Label(com.vaadin.ui.Label) VaadinIcons(com.vaadin.icons.VaadinIcons) SymptomsDto(de.symeda.sormas.api.symptoms.SymptomsDto) UserProvider(de.symeda.sormas.ui.UserProvider) ButtonHelper(de.symeda.sormas.ui.utils.ButtonHelper) ValoTheme(com.vaadin.ui.themes.ValoTheme) ContentMode(com.vaadin.shared.ui.ContentMode) DownloadUtil(de.symeda.sormas.ui.utils.DownloadUtil) VisitExportType(de.symeda.sormas.api.visit.VisitExportType) MenuBar(com.vaadin.ui.MenuBar) ContactStatus(de.symeda.sormas.api.contact.ContactStatus) VisitCriteria(de.symeda.sormas.api.visit.VisitCriteria) Collectors(java.util.stream.Collectors) Captions(de.symeda.sormas.api.i18n.Captions) UserRight(de.symeda.sormas.api.user.UserRight) Button(com.vaadin.ui.Button) VisitDto(de.symeda.sormas.api.visit.VisitDto) MultiSelectionModelImpl(com.vaadin.ui.components.grid.MultiSelectionModelImpl) HorizontalLayout(com.vaadin.ui.HorizontalLayout) ContactDto(de.symeda.sormas.api.contact.ContactDto) FileDownloader(com.vaadin.server.FileDownloader) VisitIndexDto(de.symeda.sormas.api.visit.VisitIndexDto) Strings(de.symeda.sormas.api.i18n.Strings) Label(com.vaadin.ui.Label) MenuBar(com.vaadin.ui.MenuBar) HorizontalLayout(com.vaadin.ui.HorizontalLayout) MenuBarHelper(de.symeda.sormas.ui.utils.MenuBarHelper) StreamResource(com.vaadin.server.StreamResource) Button(com.vaadin.ui.Button) VisitIndexDto(de.symeda.sormas.api.visit.VisitIndexDto) MultiSelectionModelImpl(com.vaadin.ui.components.grid.MultiSelectionModelImpl) ContactDto(de.symeda.sormas.api.contact.ContactDto) FileDownloader(com.vaadin.server.FileDownloader)

Example 2 with MultiSelectionModelImpl

use of com.vaadin.ui.components.grid.MultiSelectionModelImpl in project SORMAS-Project by hzi-braunschweig.

the class CaseVisitsView method createTopBar.

public HorizontalLayout createTopBar() {
    HorizontalLayout topLayout = new HorizontalLayout();
    topLayout.setSpacing(true);
    topLayout.setWidth(100, Unit.PERCENTAGE);
    topLayout.addStyleName(CssStyles.VSPACE_3);
    if (UserProvider.getCurrent().hasUserRight(UserRight.PERFORM_BULK_OPERATIONS)) {
        topLayout.setWidth(100, Unit.PERCENTAGE);
        MenuBar bulkOperationsDropdown = MenuBarHelper.createDropDown(Captions.bulkActions, new MenuBarHelper.MenuBarItem(I18nProperties.getCaption(Captions.bulkDelete), VaadinIcons.TRASH, selectedItem -> {
            ControllerProvider.getVisitController().deleteAllSelectedItems(grid.asMultiSelect().getSelectedItems(), () -> navigateTo(criteria));
        }));
        topLayout.addComponent(bulkOperationsDropdown);
        topLayout.setComponentAlignment(bulkOperationsDropdown, Alignment.MIDDLE_RIGHT);
        topLayout.setExpandRatio(bulkOperationsDropdown, 1);
    }
    if (UserProvider.getCurrent().hasUserRight(UserRight.VISIT_EXPORT)) {
        Button exportButton = ButtonHelper.createIconButton(Captions.export, VaadinIcons.DOWNLOAD, null, ValoTheme.BUTTON_PRIMARY);
        {
            topLayout.addComponent(exportButton);
            topLayout.setComponentAlignment(exportButton, Alignment.MIDDLE_RIGHT);
            if (topLayout.getComponentCount() == 1) {
                topLayout.setExpandRatio(exportButton, 1);
            }
        }
        StreamResource exportStreamResource = DownloadUtil.createCsvExportStreamResource(VisitExportDto.class, VisitExportType.CONTACT_VISITS, (Integer start, Integer max) -> FacadeProvider.getVisitFacade().getVisitsExportList(grid.getCriteria(), grid.getSelectionModel() instanceof MultiSelectionModelImpl ? grid.asMultiSelect().getSelectedItems().stream().map(VisitIndexDto::getUuid).collect(Collectors.toSet()) : null, VisitExportType.CONTACT_VISITS, start, max, null), (propertyId, type) -> {
            String caption = findPrefixCaption(propertyId, VisitExportDto.I18N_PREFIX, VisitDto.I18N_PREFIX, PersonDto.I18N_PREFIX, SymptomsDto.I18N_PREFIX);
            if (Date.class.isAssignableFrom(type)) {
                caption += " (" + DateFormatHelper.getDateFormatPattern() + ")";
            }
            return caption;
        }, ExportEntityName.CASE_VISITS, null);
        new FileDownloader(exportStreamResource).extend(exportButton);
    }
    if (UserProvider.getCurrent().hasUserRight(UserRight.VISIT_CREATE)) {
        newButton = ButtonHelper.createIconButton(Captions.visitNewVisit, VaadinIcons.PLUS_CIRCLE, e -> {
            ControllerProvider.getVisitController().createVisit(this.getCaseRef(), r -> navigateTo(criteria));
        }, ValoTheme.BUTTON_PRIMARY);
        topLayout.addComponent(newButton);
        topLayout.setComponentAlignment(newButton, Alignment.MIDDLE_RIGHT);
    }
    return topLayout;
}
Also used : StreamResource(com.vaadin.server.StreamResource) VisitGrid(de.symeda.sormas.ui.visit.VisitGrid) Date(java.util.Date) FacadeProvider(de.symeda.sormas.api.FacadeProvider) I18nProperties(de.symeda.sormas.api.i18n.I18nProperties) DateFormatHelper(de.symeda.sormas.ui.utils.DateFormatHelper) Alignment(com.vaadin.ui.Alignment) VisitExportDto(de.symeda.sormas.api.visit.VisitExportDto) PersonDto(de.symeda.sormas.api.person.PersonDto) DetailSubComponentWrapper(de.symeda.sormas.ui.utils.DetailSubComponentWrapper) ControllerProvider(de.symeda.sormas.ui.ControllerProvider) ExportEntityName(de.symeda.sormas.ui.utils.ExportEntityName) ViewModelProviders(de.symeda.sormas.ui.ViewModelProviders) CssStyles(de.symeda.sormas.ui.utils.CssStyles) MenuBarHelper(de.symeda.sormas.ui.utils.MenuBarHelper) VaadinIcons(com.vaadin.icons.VaadinIcons) SymptomsDto(de.symeda.sormas.api.symptoms.SymptomsDto) UserProvider(de.symeda.sormas.ui.UserProvider) ButtonHelper(de.symeda.sormas.ui.utils.ButtonHelper) ValoTheme(com.vaadin.ui.themes.ValoTheme) DownloadUtil(de.symeda.sormas.ui.utils.DownloadUtil) VisitExportType(de.symeda.sormas.api.visit.VisitExportType) MenuBar(com.vaadin.ui.MenuBar) VisitCriteria(de.symeda.sormas.api.visit.VisitCriteria) Collectors(java.util.stream.Collectors) Captions(de.symeda.sormas.api.i18n.Captions) UserRight(de.symeda.sormas.api.user.UserRight) Button(com.vaadin.ui.Button) VisitDto(de.symeda.sormas.api.visit.VisitDto) MultiSelectionModelImpl(com.vaadin.ui.components.grid.MultiSelectionModelImpl) HorizontalLayout(com.vaadin.ui.HorizontalLayout) FileDownloader(com.vaadin.server.FileDownloader) VisitIndexDto(de.symeda.sormas.api.visit.VisitIndexDto) MenuBarHelper(de.symeda.sormas.ui.utils.MenuBarHelper) StreamResource(com.vaadin.server.StreamResource) Button(com.vaadin.ui.Button) VisitIndexDto(de.symeda.sormas.api.visit.VisitIndexDto) MultiSelectionModelImpl(com.vaadin.ui.components.grid.MultiSelectionModelImpl) MenuBar(com.vaadin.ui.MenuBar) FileDownloader(com.vaadin.server.FileDownloader) HorizontalLayout(com.vaadin.ui.HorizontalLayout)

Example 3 with MultiSelectionModelImpl

use of com.vaadin.ui.components.grid.MultiSelectionModelImpl in project SORMAS-Project by hzi-braunschweig.

the class EventParticipantsView method createTopBar.

public HorizontalLayout createTopBar() {
    HorizontalLayout topLayout = new HorizontalLayout();
    topLayout.setSpacing(true);
    topLayout.setWidth("100%");
    VerticalLayout exportLayout = new VerticalLayout();
    {
        exportLayout.setSpacing(true);
        exportLayout.setMargin(true);
        exportLayout.addStyleName(CssStyles.LAYOUT_MINIMAL);
        exportLayout.setWidth(250, Unit.PIXELS);
    }
    // import
    if (UserProvider.getCurrent().hasUserRight(UserRight.EVENTPARTICIPANT_IMPORT)) {
        Button importButton = ButtonHelper.createIconButton(Captions.actionImport, VaadinIcons.UPLOAD, e -> {
            Window popupWindow = VaadinUiUtil.showPopupWindow(new EventParticipantImportLayout(getEventRef()));
            popupWindow.setCaption(I18nProperties.getString(Strings.headingImportEventParticipant));
            popupWindow.addCloseListener(c -> this.grid.reload());
        }, ValoTheme.BUTTON_PRIMARY);
        addHeaderComponent(importButton);
    }
    // export
    PopupButton exportPopupButton = ButtonHelper.createIconPopupButton(Captions.export, VaadinIcons.DOWNLOAD, exportLayout);
    addHeaderComponent(exportPopupButton);
    {
        StreamResource streamResource = GridExportStreamResource.createStreamResourceWithSelectedItems(grid, () -> this.grid.getSelectionModel() instanceof MultiSelectionModelImpl ? this.grid.asMultiSelect().getSelectedItems() : null, ExportEntityName.EVENT_PARTICIPANTS);
        addExportButton(streamResource, exportPopupButton, exportLayout, VaadinIcons.TABLE, Captions.exportBasic, Strings.infoBasicExport);
    }
    {
        StreamResource extendedExportStreamResource = EventParticipantDownloadUtil.createExtendedEventParticipantExportResource(grid.getCriteria(), this::getSelectedRows, null);
        addExportButton(extendedExportStreamResource, exportPopupButton, exportLayout, VaadinIcons.FILE_TEXT, Captions.exportDetailed, Descriptions.descDetailedExportButton);
    }
    {
        Button btnCustomExport = ButtonHelper.createIconButton(Captions.exportCustom, VaadinIcons.FILE_TEXT, e -> {
            Window customExportWindow = VaadinUiUtil.createPopupWindow();
            ExportConfigurationsLayout customExportsLayout = new ExportConfigurationsLayout(ExportType.EVENT_PARTICIPANTS, ImportExportUtils.getEventParticipantExportProperties(EventParticipantDownloadUtil::getPropertyCaption, FacadeProvider.getConfigFacade().getCountryLocale()), customExportWindow::close);
            customExportsLayout.setExportCallback((exportConfig) -> Page.getCurrent().open(EventParticipantDownloadUtil.createExtendedEventParticipantExportResource(grid.getCriteria(), this::getSelectedRows, exportConfig), null, true));
            customExportWindow.setWidth(1024, Unit.PIXELS);
            customExportWindow.setCaption(I18nProperties.getCaption(Captions.exportCustom));
            customExportWindow.setContent(customExportsLayout);
            UI.getCurrent().addWindow(customExportWindow);
            exportPopupButton.setPopupVisible(false);
        }, ValoTheme.BUTTON_PRIMARY);
        btnCustomExport.setDescription(I18nProperties.getString(Strings.infoCustomExport));
        btnCustomExport.setWidth(100, Unit.PERCENTAGE);
        exportLayout.addComponent(btnCustomExport);
    }
    filterForm = new EventParticipantsFilterForm();
    filterForm.addValueChangeListener(e -> {
        if (!filterForm.hasFilter()) {
            navigateTo(null);
        }
    });
    filterForm.addResetHandler(e -> {
        ViewModelProviders.of(EventParticipantsView.class).remove(EventParticipantCriteria.class);
        navigateTo(null);
    });
    filterForm.addApplyHandler(e -> navigateTo(criteria));
    topLayout.addComponent(filterForm);
    // Bulk operation dropdown
    if (UserProvider.getCurrent().hasUserRight(UserRight.PERFORM_BULK_OPERATIONS_EVENTPARTICIPANT)) {
        topLayout.setWidth(100, Unit.PERCENTAGE);
        List<MenuBarHelper.MenuBarItem> bulkActions = new ArrayList<>();
        bulkActions.add(new MenuBarHelper.MenuBarItem(I18nProperties.getCaption(Captions.bulkEventParticipantsToContacts), VaadinIcons.HAND, mi -> {
            grid.bulkActionHandler(items -> {
                EventDto eventDto = FacadeProvider.getEventFacade().getEventByUuid(getEventRef().getUuid(), false);
                ControllerProvider.getContactController().openLineListingWindow(eventDto, items);
            }, true);
        }));
        if (UserProvider.getCurrent().hasUserRight(UserRight.EVENTPARTICIPANT_DELETE)) {
            bulkActions.add(new MenuBarHelper.MenuBarItem(I18nProperties.getCaption(Captions.bulkDelete), VaadinIcons.TRASH, mi -> {
                grid.bulkActionHandler(items -> {
                    ControllerProvider.getEventParticipantController().deleteAllSelectedItems(items, () -> navigateTo(criteria));
                }, true);
            }));
        }
        if (isDocGenerationAllowed()) {
            bulkActions.add(new MenuBarHelper.MenuBarItem(I18nProperties.getCaption(Captions.bulkActionCreatDocuments), VaadinIcons.FILE_TEXT, mi -> {
                grid.bulkActionHandler(items -> {
                    List<EventParticipantReferenceDto> references = grid.asMultiSelect().getSelectedItems().stream().map(EventParticipantIndexDto::toReference).collect(Collectors.toList());
                    if (references.size() == 0) {
                        new Notification(I18nProperties.getString(Strings.headingNoEventParticipantsSelected), I18nProperties.getString(Strings.messageNoEventParticipantsSelected), Notification.Type.WARNING_MESSAGE, false).show(Page.getCurrent());
                        return;
                    }
                    EventDto eventDto = FacadeProvider.getEventFacade().getEventByUuid(getEventRef().getUuid(), false);
                    ControllerProvider.getDocGenerationController().showBulkEventParticipantQuarantineOrderDocumentDialog(references, eventDto.getDisease());
                });
            }));
        }
        MenuBar bulkOperationsDropdown = MenuBarHelper.createDropDown(Captions.bulkActions, bulkActions);
        topLayout.addComponent(bulkOperationsDropdown);
        topLayout.setComponentAlignment(bulkOperationsDropdown, Alignment.TOP_RIGHT);
    }
    topLayout.addStyleName(CssStyles.VSPACE_3);
    return topLayout;
}
Also used : Window(com.vaadin.ui.Window) FeatureType(de.symeda.sormas.api.feature.FeatureType) I18nProperties(de.symeda.sormas.api.i18n.I18nProperties) Alignment(com.vaadin.ui.Alignment) UI(com.vaadin.ui.UI) Window(com.vaadin.ui.Window) DetailSubComponentWrapper(de.symeda.sormas.ui.utils.DetailSubComponentWrapper) ControllerProvider(de.symeda.sormas.ui.ControllerProvider) ExportEntityName(de.symeda.sormas.ui.utils.ExportEntityName) ViewModelProviders(de.symeda.sormas.ui.ViewModelProviders) CssStyles(de.symeda.sormas.ui.utils.CssStyles) MenuBarHelper(de.symeda.sormas.ui.utils.MenuBarHelper) Page(com.vaadin.server.Page) VaadinIcons(com.vaadin.icons.VaadinIcons) ComboBoxHelper(de.symeda.sormas.ui.utils.ComboBoxHelper) EventParticipantReferenceDto(de.symeda.sormas.api.event.EventParticipantReferenceDto) UserProvider(de.symeda.sormas.ui.UserProvider) ValoTheme(com.vaadin.ui.themes.ValoTheme) MenuBar(com.vaadin.ui.MenuBar) ComboBox(com.vaadin.v7.ui.ComboBox) ExportType(de.symeda.sormas.api.importexport.ExportType) Set(java.util.Set) EventDto(de.symeda.sormas.api.event.EventDto) Collectors(java.util.stream.Collectors) Objects(java.util.Objects) List(java.util.List) MultiSelectionModelImpl(com.vaadin.ui.components.grid.MultiSelectionModelImpl) CoreEntityType(de.symeda.sormas.api.common.CoreEntityType) Descriptions(de.symeda.sormas.api.i18n.Descriptions) ExportConfigurationsLayout(de.symeda.sormas.ui.customexport.ExportConfigurationsLayout) StreamResource(com.vaadin.server.StreamResource) VaadinUiUtil(de.symeda.sormas.ui.utils.VaadinUiUtil) FacadeProvider(de.symeda.sormas.api.FacadeProvider) VerticalLayout(com.vaadin.ui.VerticalLayout) EventParticipantCriteria(de.symeda.sormas.api.event.EventParticipantCriteria) GridExportStreamResource(de.symeda.sormas.ui.utils.GridExportStreamResource) PopupButton(org.vaadin.hene.popupbutton.PopupButton) EntityRelevanceStatus(de.symeda.sormas.api.EntityRelevanceStatus) ArrayList(java.util.ArrayList) EventParticipantImportLayout(de.symeda.sormas.ui.events.eventparticipantimporter.EventParticipantImportLayout) Notification(com.vaadin.ui.Notification) Label(com.vaadin.ui.Label) EventParticipantIndexDto(de.symeda.sormas.api.event.EventParticipantIndexDto) ButtonHelper(de.symeda.sormas.ui.utils.ButtonHelper) ContentMode(com.vaadin.shared.ui.ContentMode) Captions(de.symeda.sormas.api.i18n.Captions) UserRight(de.symeda.sormas.api.user.UserRight) Button(com.vaadin.ui.Button) LayoutUtil(de.symeda.sormas.ui.utils.LayoutUtil) ImportExportUtils(de.symeda.sormas.api.importexport.ImportExportUtils) HorizontalLayout(com.vaadin.ui.HorizontalLayout) EventParticipantDownloadUtil(de.symeda.sormas.ui.utils.EventParticipantDownloadUtil) FeatureTypeProperty(de.symeda.sormas.api.feature.FeatureTypeProperty) Strings(de.symeda.sormas.api.i18n.Strings) DocGenerationHelper.isDocGenerationAllowed(de.symeda.sormas.ui.docgeneration.DocGenerationHelper.isDocGenerationAllowed) Collections(java.util.Collections) ExportConfigurationsLayout(de.symeda.sormas.ui.customexport.ExportConfigurationsLayout) EventParticipantImportLayout(de.symeda.sormas.ui.events.eventparticipantimporter.EventParticipantImportLayout) EventParticipantDownloadUtil(de.symeda.sormas.ui.utils.EventParticipantDownloadUtil) ArrayList(java.util.ArrayList) EventDto(de.symeda.sormas.api.event.EventDto) MenuBar(com.vaadin.ui.MenuBar) Notification(com.vaadin.ui.Notification) HorizontalLayout(com.vaadin.ui.HorizontalLayout) MenuBarHelper(de.symeda.sormas.ui.utils.MenuBarHelper) PopupButton(org.vaadin.hene.popupbutton.PopupButton) StreamResource(com.vaadin.server.StreamResource) GridExportStreamResource(de.symeda.sormas.ui.utils.GridExportStreamResource) PopupButton(org.vaadin.hene.popupbutton.PopupButton) Button(com.vaadin.ui.Button) MultiSelectionModelImpl(com.vaadin.ui.components.grid.MultiSelectionModelImpl) VerticalLayout(com.vaadin.ui.VerticalLayout) List(java.util.List) ArrayList(java.util.ArrayList) EventParticipantIndexDto(de.symeda.sormas.api.event.EventParticipantIndexDto)

Aggregations

VaadinIcons (com.vaadin.icons.VaadinIcons)3 StreamResource (com.vaadin.server.StreamResource)3 Alignment (com.vaadin.ui.Alignment)3 Button (com.vaadin.ui.Button)3 HorizontalLayout (com.vaadin.ui.HorizontalLayout)3 MenuBar (com.vaadin.ui.MenuBar)3 MultiSelectionModelImpl (com.vaadin.ui.components.grid.MultiSelectionModelImpl)3 ValoTheme (com.vaadin.ui.themes.ValoTheme)3 FacadeProvider (de.symeda.sormas.api.FacadeProvider)3 Captions (de.symeda.sormas.api.i18n.Captions)3 I18nProperties (de.symeda.sormas.api.i18n.I18nProperties)3 UserRight (de.symeda.sormas.api.user.UserRight)3 ControllerProvider (de.symeda.sormas.ui.ControllerProvider)3 UserProvider (de.symeda.sormas.ui.UserProvider)3 ViewModelProviders (de.symeda.sormas.ui.ViewModelProviders)3 ButtonHelper (de.symeda.sormas.ui.utils.ButtonHelper)3 CssStyles (de.symeda.sormas.ui.utils.CssStyles)3 DetailSubComponentWrapper (de.symeda.sormas.ui.utils.DetailSubComponentWrapper)3 ExportEntityName (de.symeda.sormas.ui.utils.ExportEntityName)3 MenuBarHelper (de.symeda.sormas.ui.utils.MenuBarHelper)3