[central view] use own NixTreeView class
This commit is contained in:
parent
a2a4baf5e1
commit
be118dbee0
@ -1,13 +1,13 @@
|
|||||||
import os
|
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.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 file_handler import FileHandler, ItemDescriptor
|
||||||
from plot_screen import PlotScreen
|
from plot_screen import PlotScreen
|
||||||
import communicator as comm
|
import communicator as comm
|
||||||
import constants as cnst
|
import constants as cnst
|
||||||
from tree_model import NixTreeItem, TagTreeItem, TreeModel, TreeType
|
from tree_model import NixTreeView, TreeModel, TreeType
|
||||||
|
|
||||||
class CentralWidget(QWidget):
|
class CentralWidget(QWidget):
|
||||||
|
|
||||||
@ -42,7 +42,6 @@ class CentralWidget(QWidget):
|
|||||||
|
|
||||||
|
|
||||||
class FileView(QWidget):
|
class FileView(QWidget):
|
||||||
icon_size = QSize(30, 30)
|
|
||||||
def __init__(self, parent=None) -> None:
|
def __init__(self, parent=None) -> None:
|
||||||
super().__init__(parent=parent)
|
super().__init__(parent=parent)
|
||||||
self._file_handler = FileHandler()
|
self._file_handler = FileHandler()
|
||||||
@ -56,20 +55,7 @@ class FileView(QWidget):
|
|||||||
self._info = EntityInfo(self)
|
self._info = EntityInfo(self)
|
||||||
main_splitter.addWidget(self._info)
|
main_splitter.addWidget(self._info)
|
||||||
|
|
||||||
self._data_tree = QTreeView(self)
|
self._data_tree = NixTreeView(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._tree_type_combo = QComboBox()
|
self._tree_type_combo = QComboBox()
|
||||||
self._tree_type_combo.adjustSize()
|
self._tree_type_combo.adjustSize()
|
||||||
@ -92,12 +78,6 @@ class FileView(QWidget):
|
|||||||
main_splitter.setSizes([200, 600])
|
main_splitter.setSizes([200, 600])
|
||||||
vbox.addWidget(main_splitter)
|
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):
|
def dataTreeSelection(self, current_index, last_index):
|
||||||
if not current_index.isValid():
|
if not current_index.isValid():
|
||||||
return
|
return
|
||||||
@ -128,25 +108,13 @@ class FileView(QWidget):
|
|||||||
|
|
||||||
|
|
||||||
class EntityInfo(QWidget):
|
class EntityInfo(QWidget):
|
||||||
icon_size = QSize(30, 30)
|
|
||||||
|
|
||||||
def __init__(self, parent):
|
def __init__(self, parent):
|
||||||
super().__init__(parent=parent)
|
super().__init__(parent=parent)
|
||||||
self._file_handler = FileHandler()
|
self._file_handler = FileHandler()
|
||||||
self.setLayout(QHBoxLayout())
|
self.setLayout(QHBoxLayout())
|
||||||
|
|
||||||
self._metadata_tree = QTreeView()
|
self._metadata_tree = NixTreeView()
|
||||||
# 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)
|
|
||||||
|
|
||||||
mdata_grp = QGroupBox("Metadata")
|
mdata_grp = QGroupBox("Metadata")
|
||||||
mdata_grp.setLayout(QVBoxLayout())
|
mdata_grp.setLayout(QVBoxLayout())
|
||||||
|
Loading…
Reference in New Issue
Block a user