diff --git a/central_widget.py b/central_widget.py index 0ded8eb..0a855ca 100644 --- a/central_widget.py +++ b/central_widget.py @@ -1,13 +1,13 @@ import os -from PyQt5.QtWidgets import QComboBox, QFrame, QGroupBox, QHBoxLayout, QLabel, QListWidget, QListWidgetItem, QSpacerItem, QSplitter, QStackedLayout, QAbstractItemView, QTextEdit, QVBoxLayout, QWidget, QGridLayout, QTreeView, QHeaderView +from PyQt5.QtWidgets import QComboBox, QFrame, QGroupBox, QHBoxLayout, QLabel, QListWidget, QListWidgetItem, QSplitter, QStackedLayout, QAbstractItemView, QTextEdit, QVBoxLayout, QWidget, QGridLayout from PyQt5.QtGui import QPixmap -from PyQt5.QtCore import QItemSelectionModel, Qt, QSettings, QSize, pyqtSignal +from PyQt5.QtCore import QItemSelectionModel, Qt, QSettings, pyqtSignal from file_handler import FileHandler, ItemDescriptor from plot_screen import PlotScreen import communicator as comm import constants as cnst -from tree_model import NixTreeItem, TagTreeItem, TreeModel, TreeType +from tree_model import NixTreeView, TreeModel, TreeType class CentralWidget(QWidget): @@ -42,7 +42,6 @@ class CentralWidget(QWidget): class FileView(QWidget): - icon_size = QSize(30, 30) def __init__(self, parent=None) -> None: super().__init__(parent=parent) self._file_handler = FileHandler() @@ -56,21 +55,8 @@ class FileView(QWidget): self._info = EntityInfo(self) main_splitter.addWidget(self._info) - self._data_tree = QTreeView(self) - self._data_tree.expanded.connect(self.dataTreeResize) - self._data_tree.collapsed.connect(self.dataTreeResize) - self._data_tree.setAlternatingRowColors(True) - self._data_tree.setUniformRowHeights(True) # Allows for scrolling optimizations. - self._data_tree.setWindowTitle("Data Tree") - self._data_tree.setIconSize(self.icon_size) - self._data_tree.setSelectionBehavior(QAbstractItemView.SelectItems) - self._data_tree.setSelectionMode(QAbstractItemView.SingleSelection) - header = self._data_tree.header() - header.setStretchLastSection(False) - header.setSectionResizeMode(1, QHeaderView.ResizeToContents) - header.setSectionResizeMode(2, QHeaderView.ResizeToContents) - header.setSectionResizeMode(0, QHeaderView.Stretch) - + self._data_tree = NixTreeView(self) + self._tree_type_combo = QComboBox() self._tree_type_combo.adjustSize() self._tree_type_combo.addItems([TreeType.Data.value, TreeType.Full.value, TreeType.Metadata.value]) @@ -92,12 +78,6 @@ class FileView(QWidget): main_splitter.setSizes([200, 600]) vbox.addWidget(main_splitter) - def metadataTreeResize(self, index): - self._mdata_tree.resizeColumnToContents(index.column()) - - def dataTreeResize(self, index): - self._data_tree.resizeColumnToContents(index.column()) - def dataTreeSelection(self, current_index, last_index): if not current_index.isValid(): return @@ -128,26 +108,14 @@ class FileView(QWidget): class EntityInfo(QWidget): - icon_size = QSize(30, 30) def __init__(self, parent): super().__init__(parent=parent) self._file_handler = FileHandler() self.setLayout(QHBoxLayout()) - self._metadata_tree = QTreeView() - # self._metadata_tree.expanded.connect(self.metadataTreeResize) - # self._metadata_tree.collapsed.connect(self.metadataTreeResize) - self._metadata_tree.setAlternatingRowColors(True) - self._metadata_tree.setUniformRowHeights(True) # Allows for scrolling optimizations. - self._metadata_tree.setWindowTitle("Metadata Tree") - self._metadata_tree.setIconSize(self.icon_size) - mheader = self._metadata_tree.header() - mheader.setStretchLastSection(False) - mheader.setSectionResizeMode(1, QHeaderView.ResizeToContents) - mheader.setSectionResizeMode(2, QHeaderView.ResizeToContents) - mheader.setSectionResizeMode(0, QHeaderView.Stretch) - + self._metadata_tree = NixTreeView() + mdata_grp = QGroupBox("Metadata") mdata_grp.setLayout(QVBoxLayout()) mdata_grp.layout().setContentsMargins(1, 10, 1, 1)