001package conexp.fx.gui.dataset; 002 003/* 004 * #%L 005 * Concept Explorer FX 006 * %% 007 * Copyright (C) 2010 - 2023 Francesco Kriegel 008 * %% 009 * This program is free software: you can redistribute it and/or modify 010 * it under the terms of the GNU General Public License as 011 * published by the Free Software Foundation, either version 3 of the 012 * License, or (at your option) any later version. 013 * 014 * This program is distributed in the hope that it will be useful, 015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 017 * GNU General Public License for more details. 018 * 019 * You should have received a copy of the GNU General Public 020 * License along with this program. If not, see 021 * <http://www.gnu.org/licenses/gpl-3.0.html>. 022 * #L% 023 */ 024 025import javafx.scene.Node; 026import javafx.scene.control.Control; 027import javafx.scene.control.Label; 028import javafx.scene.control.TreeItem; 029 030public class DatasetView<T> { 031 032 private final String id; 033 private final Node contentNode; 034 private final T data; 035 private final DatasetViewTreeItem treeItem; 036 037 public DatasetView(final String id, final Node contentNode, final T data) { 038 super(); 039 this.id = id; 040 this.contentNode = contentNode; 041 this.data = data; 042 this.treeItem = new DatasetViewTreeItem(); 043 } 044 045 public String getId() { 046 return id; 047 } 048 049 public Node getContentNode() { 050 return contentNode; 051 } 052 053 public T getData() { 054 return data; 055 } 056 057 public DatasetViewTreeItem getTreeItem() { 058 return treeItem; 059 } 060 061 public final class DatasetViewTreeItem extends TreeItem<Control> { 062 063 public DatasetViewTreeItem() { 064 super(new Label(id)); 065 } 066 067 public final DatasetView<T> getDatasetView() { 068 return DatasetView.this; 069 } 070 } 071 072}