diff --git a/central_widget.py b/central_widget.py index 8e2dd8f..1ca751b 100644 --- a/central_widget.py +++ b/central_widget.py @@ -122,6 +122,72 @@ class FileView(QWidget): pass +class EntityInfo(QWidget): + icon_size = QSize(30, 30) + def __init__(self, parent): + super().__init__(parent=parent) + 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) + + mdata_grp = QGroupBox("Metadata") + mdata_grp.setLayout(QVBoxLayout()) + mdata_grp.layout().setContentsMargins(1, 10, 1, 1) + mdata_grp.layout().addWidget(self._metadata_tree) + + file_info_grp = QGroupBox("File info") + file_info_grp.setLayout(QVBoxLayout()) + file_info_grp.layout().setContentsMargins(1, 10, 1, 1) + self._file_info = QTextEdit("File infomation") + self._file_info.setEnabled(True) + self._file_info.setTextInteractionFlags(Qt.TextSelectableByKeyboard | Qt.TextSelectableByMouse) + self._file_info.setFrameShape(QFrame.NoFrame) + self._file_info.setLineWrapMode(QTextEdit.WidgetWidth) + file_info_grp.layout().addWidget(self._file_info) + + entity_info_grp = QGroupBox("Entity info") + entity_info_grp.setLayout(QVBoxLayout()) + entity_info_grp.layout().setContentsMargins(1, 10, 1, 1) + self._entity_info = QTextEdit("