Search in sources :

Example 1 with TreeGrid

use of com.vaadin.ui.TreeGrid in project catma by forTEXT.

the class TagSelectionPanel method initComponents.

private void initComponents() {
    setSizeFull();
    tagsetGrid = TreeGridFactory.createDefaultTreeGrid();
    tagsetGrid.setSizeFull();
    tagsetGrid.addStyleNames("flat-undecorated-icon-buttonrenderer");
    tagsetGrid.setSizeFull();
    tagsetGrid.setSelectionMode(SelectionMode.SINGLE);
    tagsetGrid.addStyleName(MaterialTheme.GRID_BORDERLESS);
    Label tagsetsLabel = new Label("Tagsets");
    tagsetGridComponent = new ActionGridComponent<TreeGrid<TagsetTreeItem>>(tagsetsLabel, tagsetGrid);
    tagsetGridComponent.setSizeFull();
    addComponent(tagsetGridComponent);
}
Also used : TreeGrid(com.vaadin.ui.TreeGrid) Label(com.vaadin.ui.Label)

Example 2 with TreeGrid

use of com.vaadin.ui.TreeGrid in project catma by forTEXT.

the class TagsView method initComponents.

private void initComponents() {
    getHugeCardBar().setMoreOptionsButtonVisible(false);
    HorizontalLayout content = new HorizontalLayout();
    content.setSizeFull();
    tagsetGrid = TreeGridFactory.createDefaultTreeGrid();
    tagsetGrid.addStyleNames("flat-undecorated-icon-buttonrenderer");
    tagsetGrid.setSizeFull();
    tagsetGrid.setSelectionMode(SelectionMode.SINGLE);
    tagsetGrid.addStyleName(MaterialTheme.GRID_BORDERLESS);
    Label tagsetsLabel = new Label("Tagsets");
    tagsetGridComponent = new ActionGridComponent<TreeGrid<TagsetTreeItem>>(tagsetsLabel, tagsetGrid);
    resourcePanel = new TagResourcePanel(project, eventBus);
    drawer = new SliderPanelBuilder(resourcePanel).mode(SliderMode.LEFT).expanded(false).build();
    addComponent(content);
    setExpandRatio(content, 1f);
    content.addComponent(drawer);
    content.addComponent(tagsetGridComponent);
    content.setExpandRatio(tagsetGridComponent, 1f);
}
Also used : SliderPanelBuilder(org.vaadin.sliderpanel.SliderPanelBuilder) TreeGrid(com.vaadin.ui.TreeGrid) Label(com.vaadin.ui.Label) HorizontalLayout(com.vaadin.ui.HorizontalLayout)

Example 3 with TreeGrid

use of com.vaadin.ui.TreeGrid in project catma by forTEXT.

the class ResourcePermissionView method initComponents.

private void initComponents() {
    HorizontalLayout content = new HorizontalLayout();
    content.setSizeFull();
    content.setMargin(new MarginInfo(true, false, true, true));
    content.setSpacing(false);
    setCaption("Resource permissions");
    setWidth("85%");
    setHeight("90%");
    setModal(true);
    permissionGrid = TreeGridFactory.createDefaultTreeGrid();
    permissionGrid.setSizeFull();
    permissionGrid.setRowHeight(45);
    permissionGrid.setHeaderVisible(true);
    permissionGrid.getEditor().setEnabled(true);
    permissionGrid.getEditor().setBuffered(false);
    permissionGridComponent = new ActionGridComponent<TreeGrid<Resource>>(new Label("Resource specific permissions"), permissionGrid);
    permissionGridComponent.setSizeFull();
    permissionGridComponent.setSelectionModeFixed(SelectionMode.SINGLE);
    permissionGridComponent.getActionGridBar().setMargin(new MarginInfo(false, false, false, true));
    permissionGridComponent.getActionGridBar().setMoreOptionsBtnVisible(false);
    content.addComponent(permissionGridComponent);
    content.setExpandRatio(permissionGridComponent, 1f);
    HelpWindow helpWindow = new HelpWindow("Resource permissions", "<p>The resource permission matrix gives you an overview of the resource specific permissions for each team member.</p>" + "<p>By default it shows team members with changeable resource roles only. But you can add columns for all team members by using the show/hide columns menu in the upper right corner of the table</p>" + "<p>You can change resource specific roles only. Double click on a resource row to set a new resource specific role for a team member. To change Project roles go to the team section of the Project view.</p>" + "<p>Note that higher roles on the Project level cannot be overwritten by lower roles on the resource level. In fact it is not even possible to set lower roles in such cases.</p>");
    Button btHelp = helpWindow.createHelpWindowButton();
    content.addComponent(btHelp);
    content.setComponentAlignment(btHelp, Alignment.TOP_RIGHT);
    setContent(content);
}
Also used : HelpWindow(de.catma.ui.dialog.HelpWindow) Button(com.vaadin.ui.Button) MarginInfo(com.vaadin.shared.ui.MarginInfo) TreeGrid(com.vaadin.ui.TreeGrid) Label(com.vaadin.ui.Label) HorizontalLayout(com.vaadin.ui.HorizontalLayout)

Example 4 with TreeGrid

use of com.vaadin.ui.TreeGrid in project catma by forTEXT.

the class ProjectView method initResourceContent.

/**
 * initialize the resource part
 * @return
 */
private Component initResourceContent() {
    HorizontalFlexLayout resourceContent = new HorizontalFlexLayout();
    documentGrid = TreeGridFactory.createDefaultTreeGrid();
    documentGrid.addStyleNames(// $NON-NLS-1$
    "flat-undecorated-icon-buttonrenderer");
    documentGrid.setHeaderVisible(false);
    documentGrid.setRowHeight(45);
    documentGrid.addColumn(resource -> resource.getIcon(), new HtmlRenderer()).setWidth(100);
    Function<Resource, String> buildNameFunction = (resource) -> {
        StringBuilder sb = new StringBuilder().append(// $NON-NLS-1$
        "<div class='documentsgrid__doc'> ").append(// $NON-NLS-1$
        "<div class='documentsgrid__doc__title'> ").append(resource.getName()).append(// $NON-NLS-1$
        "</div>");
        if (resource.hasDetail()) {
            sb.append(// $NON-NLS-1$
            "<span class='documentsgrid__doc__author'> ").append(resource.getDetail()).append(// $NON-NLS-1$
            "</span>");
        }
        // $NON-NLS-1$
        sb.append("</div>");
        return sb.toString();
    };
    documentGrid.addColumn(resource -> buildNameFunction.apply(resource), new HtmlRenderer()).setCaption("Name").setId(DocumentGridColumn.NAME.name()).setWidth(300);
    documentGrid.addColumn(res -> res.getPermissionIcon(), new HtmlRenderer()).setCaption("Permission").setExpandRatio(1);
    Label documentsAnnotations = new Label("Documents & Annotations");
    documentGridComponent = new ActionGridComponent<TreeGrid<Resource>>(documentsAnnotations, documentGrid);
    // $NON-NLS-1$
    documentGridComponent.addStyleName("project-view-action-grid");
    resourceContent.addComponent(documentGridComponent);
    tagsetGrid = new Grid<>();
    tagsetGrid.setHeaderVisible(false);
    // $NON-NLS-1$
    tagsetGrid.setWidth("400px");
    tagsetGrid.addColumn(tagset -> VaadinIcons.TAGS.getHtml(), new HtmlRenderer()).setWidth(100);
    tagsetGrid.addColumn(tagset -> tagset.getName()).setId(TagsetGridColumn.NAME.name()).setCaption("Name").setWidth(300);
    Label tagsetsAnnotations = new Label("Tagsets");
    tagsetGridComponent = new ActionGridComponent<Grid<TagsetDefinition>>(tagsetsAnnotations, tagsetGrid);
    // $NON-NLS-1$
    tagsetGridComponent.addStyleName("project-view-action-grid");
    resourceContent.addComponent(tagsetGridComponent);
    return resourceContent;
}
Also used : ArrayListMultimap(com.google.common.collect.ArrayListMultimap) BackgroundServiceProvider(de.catma.backgroundservice.BackgroundServiceProvider) HTMLNotification(de.catma.ui.component.HTMLNotification) Alignment(com.vaadin.ui.Alignment) IndexedProject(de.catma.indexer.IndexedProject) MembersChangedEvent(de.catma.ui.events.MembersChangedEvent) HeaderContextChangeEvent(de.catma.ui.events.HeaderContextChangeEvent) RouteToTagsEvent(de.catma.ui.events.routing.RouteToTagsEvent) TreeDataProvider(com.vaadin.data.provider.TreeDataProvider) TagsetImport(de.catma.ui.module.project.documentwizard.TagsetImport) DocumentChangeEvent(de.catma.project.event.DocumentChangeEvent) CorpusImporter(de.catma.ui.module.project.corpusimport.CorpusImporter) CommitInfo(de.catma.project.CommitInfo) ExecutionListener(de.catma.backgroundservice.ExecutionListener) MenuBar(com.vaadin.ui.MenuBar) VerticalFlexLayout(de.catma.ui.layout.VerticalFlexLayout) Set(java.util.Set) RBACConstraint(de.catma.rbac.RBACConstraint) TagInstance(de.catma.tag.TagInstance) CorpusImportDocumentMetadata(de.catma.ui.module.project.corpusimport.CorpusImportDocumentMetadata) ItemClick(com.vaadin.ui.Grid.ItemClick) Stream(java.util.stream.Stream) Type(com.vaadin.ui.Notification.Type) PropertyChangeListener(java.beans.PropertyChangeListener) SingleTextInputDialog(de.catma.ui.dialog.SingleTextInputDialog) CollectionChangeEvent(de.catma.project.event.CollectionChangeEvent) CanReloadAll(de.catma.ui.module.main.CanReloadAll) SelectionMode(com.vaadin.ui.Grid.SelectionMode) DocumentWizard(de.catma.ui.module.project.documentwizard.DocumentWizard) HugeCard(de.catma.ui.component.hugecard.HugeCard) ProjectChangedEvent(de.catma.ui.events.ProjectChangedEvent) DefaultProgressCallable(de.catma.backgroundservice.DefaultProgressCallable) TagManager(de.catma.tag.TagManager) com.vaadin.server(com.vaadin.server) LocalDateTime(java.time.LocalDateTime) WizardContext(de.catma.ui.dialog.wizard.WizardContext) ActionGridComponent(de.catma.ui.component.actiongrid.ActionGridComponent) ArrayList(java.util.ArrayList) Member(de.catma.user.Member) Pair(de.catma.util.Pair) TreeGridFactory(de.catma.ui.component.TreeGridFactory) SaveCancelListener(de.catma.ui.dialog.SaveCancelListener) Collator(java.text.Collator) ProgressListener(de.catma.backgroundservice.ProgressListener) XML2ContentHandler(de.catma.document.source.contenthandler.XML2ContentHandler) Property(de.catma.tag.Property) TreeData(com.vaadin.data.TreeData) IOException(java.io.IOException) SourceDocument(de.catma.document.source.SourceDocument) ProjectReadyEvent(de.catma.project.event.ProjectReadyEvent) AnnotationCollection(de.catma.document.annotation.AnnotationCollection) File(java.io.File) TagManagerEvent(de.catma.tag.TagManager.TagManagerEvent) Button(com.vaadin.ui.Button) ChangeType(de.catma.project.event.ChangeType) CRC32(java.util.zip.CRC32) HtmlRenderer(com.vaadin.ui.renderers.HtmlRenderer) Grid(com.vaadin.ui.Grid) MenuItem(com.vaadin.ui.MenuBar.MenuItem) GenericUploadDialog(de.catma.ui.dialog.GenericUploadDialog) URISyntaxException(java.net.URISyntaxException) UI(com.vaadin.ui.UI) FlexWrap(de.catma.ui.layout.FlexLayout.FlexWrap) ConfirmDialog(org.vaadin.dialogs.ConfirmDialog) SearchFilterProvider(de.catma.ui.component.actiongrid.SearchFilterProvider) RouteToAnalyzeEvent(de.catma.ui.events.routing.RouteToAnalyzeEvent) TikaContentHandler(de.catma.document.source.contenthandler.TikaContentHandler) ByteArrayInputStream(java.io.ByteArrayInputStream) HorizontalFlexLayout(de.catma.ui.layout.HorizontalFlexLayout) ErrorHandler(de.catma.ui.module.main.ErrorHandler) Locale(java.util.Locale) CatmaApplication(de.catma.ui.CatmaApplication) VaadinIcons(com.vaadin.icons.VaadinIcons) Version(de.catma.tag.Version) RouteToConflictedProjectEvent(de.catma.ui.events.routing.RouteToConflictedProjectEvent) ProgressBar(com.vaadin.ui.ProgressBar) IconButton(de.catma.ui.component.IconButton) CATMAPropertyKey(de.catma.properties.CATMAPropertyKey) Collection(java.util.Collection) TreeGrid(com.vaadin.ui.TreeGrid) Logger(java.util.logging.Logger) Collectors(java.util.stream.Collectors) SourceDocumentInfo(de.catma.document.source.SourceDocumentInfo) ProjectReference(de.catma.project.ProjectReference) TagReference(de.catma.document.annotation.TagReference) List(java.util.List) CloseSafe(de.catma.util.CloseSafe) Corpus(de.catma.document.corpus.Corpus) TagDefinition(de.catma.tag.TagDefinition) RBACConstraintEnforcer(de.catma.rbac.RBACConstraintEnforcer) RouteToAnnotateEvent(de.catma.ui.events.routing.RouteToAnnotateEvent) Optional(java.util.Optional) FileType(de.catma.document.source.FileType) RBACPermission(de.catma.rbac.RBACPermission) CorpusImportDialog(de.catma.ui.module.project.corpusimport.CorpusImportDialog) ProjectManager(de.catma.project.ProjectManager) PropertyDefinition(de.catma.tag.PropertyDefinition) UploadFile(de.catma.ui.module.project.documentwizard.UploadFile) RBACRole(de.catma.rbac.RBACRole) Multimap(com.google.common.collect.Multimap) Function(java.util.function.Function) User(de.catma.user.User) Level(java.util.logging.Level) HashSet(java.util.HashSet) EventBus(com.google.common.eventbus.EventBus) Charset(java.nio.charset.Charset) Notification(com.vaadin.ui.Notification) Label(com.vaadin.ui.Label) TagsetDefinition(de.catma.tag.TagsetDefinition) IDGenerator(de.catma.util.IDGenerator) Subscribe(com.google.common.eventbus.Subscribe) TagLibrary(de.catma.tag.TagLibrary) PropertyChangeEvent(java.beans.PropertyChangeEvent) OpenProjectListener(de.catma.project.OpenProjectListener) ListDataProvider(com.vaadin.data.provider.ListDataProvider) FileOSType(de.catma.document.source.FileOSType) ClickEvent(com.vaadin.ui.Button.ClickEvent) AnnotationCollectionReference(de.catma.document.annotation.AnnotationCollectionReference) Project(de.catma.project.Project) RepositoryChangeEvent(de.catma.project.Project.RepositoryChangeEvent) ConflictedProject(de.catma.project.conflict.ConflictedProject) TagsetDefinitionImportStatus(de.catma.serialization.TagsetDefinitionImportStatus) ContextMenu(com.vaadin.contextmenu.ContextMenu) SourceContentHandler(de.catma.document.source.contenthandler.SourceContentHandler) TagsetImportState(de.catma.ui.module.project.documentwizard.TagsetImportState) BOMFilterInputStream(de.catma.document.source.contenthandler.BOMFilterInputStream) DateTimeFormatter(java.time.format.DateTimeFormatter) HierarchicalQuery(com.vaadin.data.provider.HierarchicalQuery) Parameter(de.catma.ui.Parameter) Comparator(java.util.Comparator) Collections(java.util.Collections) BackgroundService(de.catma.backgroundservice.BackgroundService) InputStream(java.io.InputStream) Component(com.vaadin.ui.Component) Grid(com.vaadin.ui.Grid) TreeGrid(com.vaadin.ui.TreeGrid) Label(com.vaadin.ui.Label) TreeGrid(com.vaadin.ui.TreeGrid) HtmlRenderer(com.vaadin.ui.renderers.HtmlRenderer) HorizontalFlexLayout(de.catma.ui.layout.HorizontalFlexLayout)

Example 5 with TreeGrid

use of com.vaadin.ui.TreeGrid in project catma by forTEXT.

the class AnnotateResourcePanel method initComponents.

private void initComponents() {
    addStyleName("annotate-resource-panel");
    Label documentTreeLabel = new Label("Documents & Annotations");
    documentTree = TreeGridFactory.createDefaultTreeGrid();
    documentTree.addStyleNames("resource-grid", "flat-undecorated-icon-buttonrenderer");
    ButtonRenderer<DocumentTreeItem> documentSelectionRenderer = new ButtonRenderer<DocumentTreeItem>(documentSelectionClick -> handleVisibilityClickEvent(documentSelectionClick));
    documentSelectionRenderer.setHtmlContentAllowed(true);
    Column<DocumentTreeItem, String> selectionColumn = documentTree.addColumn(documentTreeItem -> documentTreeItem.getSelectionIcon(), documentSelectionRenderer).setWidth(100);
    documentTree.setHierarchyColumn(selectionColumn);
    documentTree.addColumn(documentTreeItem -> documentTreeItem.getName()).setCaption("Name").setWidth(150);
    documentTree.setHeight("250px");
    documentTree.addColumn(documentTreeItem -> documentTreeItem.getPermissionIcon(), new HtmlRenderer()).setWidth(50);
    documentTree.addColumn(documentTreeItem -> documentTreeItem.getIcon(), new HtmlRenderer()).setExpandRatio(1);
    documentActionGridComponent = new ActionGridComponent<TreeGrid<DocumentTreeItem>>(documentTreeLabel, documentTree);
    documentActionGridComponent.getActionGridBar().setMoreOptionsBtnVisible(false);
    addComponent(documentActionGridComponent);
    Label tagsetLabel = new Label("Tagsets");
    tagsetGrid = new Grid<>();
    tagsetGrid.addStyleNames("resource-grid", "flat-undecorated-icon-buttonrenderer", "no-focused-before-border");
    tagsetGrid.setHeight("250px");
    tagsetGrid.addColumn(tagset -> tagset.getName()).setCaption("Name").setWidth(150);
    tagsetGrid.addColumn(tagset -> project.hasPermission(project.getRoleForTagset(tagset.getUuid()), RBACPermission.TAGSET_WRITE) ? VaadinIcons.UNLOCK.getHtml() : VaadinIcons.LOCK.getHtml(), new HtmlRenderer()).setWidth(50);
    tagsetGrid.addColumn(tagset -> VaadinIcons.TAGS.getHtml(), new HtmlRenderer()).setExpandRatio(1);
    tagsetActionGridComponent = new ActionGridComponent<Grid<TagsetDefinition>>(tagsetLabel, tagsetGrid);
    tagsetActionGridComponent.setSelectionModeFixed(SelectionMode.MULTI);
    tagsetActionGridComponent.getActionGridBar().setMoreOptionsBtnVisible(false);
    tagsetActionGridComponent.getActionGridBar().setMargin(new MarginInfo(false, false, false, true));
    addComponent(tagsetActionGridComponent);
}
Also used : SelectionEvent(com.vaadin.event.selection.SelectionEvent) UI(com.vaadin.ui.UI) SearchFilterProvider(de.catma.ui.component.actiongrid.SearchFilterProvider) ErrorHandler(de.catma.ui.module.main.ErrorHandler) TreeDataProvider(com.vaadin.data.provider.TreeDataProvider) VaadinIcons(com.vaadin.icons.VaadinIcons) DocumentChangeEvent(de.catma.project.event.DocumentChangeEvent) Version(de.catma.tag.Version) Collection(java.util.Collection) Set(java.util.Set) TreeGrid(com.vaadin.ui.TreeGrid) Collectors(java.util.stream.Collectors) MarginInfo(com.vaadin.shared.ui.MarginInfo) List(java.util.List) Type(com.vaadin.ui.Notification.Type) RendererClickEvent(com.vaadin.ui.renderers.ClickableRenderer.RendererClickEvent) PropertyChangeListener(java.beans.PropertyChangeListener) Optional(java.util.Optional) SingleTextInputDialog(de.catma.ui.dialog.SingleTextInputDialog) CollectionChangeEvent(de.catma.project.event.CollectionChangeEvent) SelectionMode(com.vaadin.ui.Grid.SelectionMode) RBACPermission(de.catma.rbac.RBACPermission) Column(com.vaadin.ui.Grid.Column) VerticalLayout(com.vaadin.ui.VerticalLayout) ActionGridComponent(de.catma.ui.component.actiongrid.ActionGridComponent) HashSet(java.util.HashSet) EventBus(com.google.common.eventbus.EventBus) Notification(com.vaadin.ui.Notification) Label(com.vaadin.ui.Label) TagsetDefinition(de.catma.tag.TagsetDefinition) TreeGridFactory(de.catma.ui.component.TreeGridFactory) IDGenerator(de.catma.util.IDGenerator) Subscribe(com.google.common.eventbus.Subscribe) ButtonRenderer(com.vaadin.ui.renderers.ButtonRenderer) SaveCancelListener(de.catma.ui.dialog.SaveCancelListener) PropertyChangeEvent(java.beans.PropertyChangeEvent) ListDataProvider(com.vaadin.data.provider.ListDataProvider) TreeData(com.vaadin.data.TreeData) AnnotationCollectionReference(de.catma.document.annotation.AnnotationCollectionReference) Project(de.catma.project.Project) RepositoryChangeEvent(de.catma.project.Project.RepositoryChangeEvent) SourceDocument(de.catma.document.source.SourceDocument) ProjectReadyEvent(de.catma.project.event.ProjectReadyEvent) TagManagerEvent(de.catma.tag.TagManager.TagManagerEvent) ChangeType(de.catma.project.event.ChangeType) SerializablePredicate(com.vaadin.server.SerializablePredicate) HtmlRenderer(com.vaadin.ui.renderers.HtmlRenderer) Collections(java.util.Collections) Grid(com.vaadin.ui.Grid) TreeGrid(com.vaadin.ui.TreeGrid) Grid(com.vaadin.ui.Grid) Label(com.vaadin.ui.Label) MarginInfo(com.vaadin.shared.ui.MarginInfo) TreeGrid(com.vaadin.ui.TreeGrid) HtmlRenderer(com.vaadin.ui.renderers.HtmlRenderer) ButtonRenderer(com.vaadin.ui.renderers.ButtonRenderer)

Aggregations

TreeGrid (com.vaadin.ui.TreeGrid)10 Label (com.vaadin.ui.Label)9 TreeData (com.vaadin.data.TreeData)7 TreeDataProvider (com.vaadin.data.provider.TreeDataProvider)7 Notification (com.vaadin.ui.Notification)6 Type (com.vaadin.ui.Notification.Type)6 UI (com.vaadin.ui.UI)6 VerticalLayout (com.vaadin.ui.VerticalLayout)6 HtmlRenderer (com.vaadin.ui.renderers.HtmlRenderer)6 SourceDocument (de.catma.document.source.SourceDocument)6 Project (de.catma.project.Project)6 RBACPermission (de.catma.rbac.RBACPermission)6 TreeGridFactory (de.catma.ui.component.TreeGridFactory)6 ActionGridComponent (de.catma.ui.component.actiongrid.ActionGridComponent)6 ErrorHandler (de.catma.ui.module.main.ErrorHandler)6 List (java.util.List)6 Set (java.util.Set)6 Collectors (java.util.stream.Collectors)6 SaveCancelListener (de.catma.ui.dialog.SaveCancelListener)5 Collection (java.util.Collection)5