From 6ad81b0eb051ed881072a1ba5e439e63ef8b1e62 Mon Sep 17 00:00:00 2001 From: Andrew Lamoureux Date: Fri, 22 Mar 2019 02:14:47 -0400 Subject: kaitai: select first row, re-scroll after treewidget resize --- python/examples/kaitai/view.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'python') diff --git a/python/examples/kaitai/view.py b/python/examples/kaitai/view.py index 8a7cf51c..ec4b3c0e 100644 --- a/python/examples/kaitai/view.py +++ b/python/examples/kaitai/view.py @@ -31,14 +31,15 @@ class MyQTreeWidget(QTreeWidget): self.oldWidth = 0 self.oldHeight = 0 - self.queueInitialExpansion = False + self.queueInitialPresentation = False def resizeEvent(self, event): QTreeWidget.resizeEvent(self, event) - if self.queueInitialExpansion: - self.expandNicely() - self.queueInitialExpansion = False + if self.queueInitialPresentation: + self.initialPresentation() + + self.scrollTo(self.currentIndex()) newWidth = self.width() newHeight = self.height() @@ -53,6 +54,14 @@ class MyQTreeWidget(QTreeWidget): self.setColumnWidthsNicely() + def initialPresentation(self): + self.expandNicely() + + if self.topLevelItemCount(): + self.topLevelItem(0).setSelected(True) + + self.queueInitialPresentation = False + def setColumnWidthsNicely(self): width = self.width() self.setColumnWidth(0, .6*width) @@ -177,9 +186,10 @@ class KaitaiView(QScrollArea, View): # TODO: select first item, maybe expand a few things self.rootSelectionStart = 0 self.rootSelectionEnd = 1 - self.hexWidget.setSelectionRange(0,1) + self.treeWidget.setUniformRowHeights(True) - self.treeWidget.queueInitialExpansion = True + self.treeWidget.queueInitialPresentation = True + # binja callbacks def getData(self): -- cgit v1.3.1