summaryrefslogtreecommitdiff
path: root/python/examples
diff options
context:
space:
mode:
authorAndrew Lamoureux <andrew@vector35.com>2019-03-22 02:14:47 -0400
committerAndrew Lamoureux <andrew@vector35.com>2019-03-22 02:14:47 -0400
commit6ad81b0eb051ed881072a1ba5e439e63ef8b1e62 (patch)
tree3de077718b873cd7c9e9561367f5a24b2b79d66a /python/examples
parentc5912d01b4c7c2776337740221068f37c1dfe877 (diff)
kaitai: select first row, re-scroll after treewidget resize
Diffstat (limited to 'python/examples')
-rw-r--r--python/examples/kaitai/view.py22
1 files changed, 16 insertions, 6 deletions
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):