|
19 | 19 | from .treedlg import TreeDlg |
20 | 20 |
|
21 | 21 | # Sync with version in setup.py |
22 | | -version = (4, 48) |
| 22 | +version = (4, 49) |
23 | 23 | the_app = None |
24 | 24 |
|
25 | 25 | # TODO: |
@@ -397,28 +397,29 @@ def on_switchslice(self): |
397 | 397 |
|
398 | 398 | # Index is a tree index - the DIE is the data object within |
399 | 399 | def display_die(self, index): |
400 | | - die = index.internalPointer() |
401 | | - die_table = self.die_table |
402 | | - if not self.die_model: |
403 | | - self.die_model = DIETableModel(die, self.prefix, self.lowlevel, self.hex, self.dwarfregnames) |
404 | | - die_table.setModel(self.die_model) |
405 | | - die_table.selectionModel().currentChanged.connect(self.on_attribute_selection) |
406 | | - else: |
407 | | - self.die_model.display_DIE(die) |
408 | | - self.die_table.resizeColumnsToContents() |
409 | | - self.details_table.setModel(None) |
410 | | - self.followref_menuitem.setEnabled(False) |
411 | | - self.followref_tbitem.setEnabled(False) |
412 | | - self.cuproperties_menuitem.setEnabled(True) |
413 | | - self.die_table.setCurrentIndex(QModelIndex()) # Will cause on_attribute_selection |
414 | | - |
415 | | - #TODO: resize the attribute table vertically dynamically |
416 | | - #attr_count = self.die_model.rowCount(None) |
417 | | - #die_table.resize(die_table.size().width(), |
418 | | - # die_table.rowViewportPosition(attr_count-1) + |
419 | | - # die_table.rowHeight(attr_count-1) + |
420 | | - # die_table.horizontalHeader().size().height() + 1 + attr_count) |
421 | | - #self.rpane_layout.update() |
| 400 | + if self.details_table and self.die_table: # Short out for #1753 |
| 401 | + die = index.internalPointer() |
| 402 | + die_table = self.die_table |
| 403 | + if not self.die_model: |
| 404 | + self.die_model = DIETableModel(die, self.prefix, self.lowlevel, self.hex, self.dwarfregnames) |
| 405 | + die_table.setModel(self.die_model) |
| 406 | + die_table.selectionModel().currentChanged.connect(self.on_attribute_selection) |
| 407 | + else: |
| 408 | + self.die_model.display_DIE(die) |
| 409 | + self.die_table.resizeColumnsToContents() |
| 410 | + self.details_table.setModel(None) |
| 411 | + self.followref_menuitem.setEnabled(False) |
| 412 | + self.followref_tbitem.setEnabled(False) |
| 413 | + self.cuproperties_menuitem.setEnabled(True) |
| 414 | + self.die_table.setCurrentIndex(QModelIndex()) # Will cause on_attribute_selection |
| 415 | + |
| 416 | + #TODO: resize the attribute table vertically dynamically |
| 417 | + #attr_count = self.die_model.rowCount(None) |
| 418 | + #die_table.resize(die_table.size().width(), |
| 419 | + # die_table.rowViewportPosition(attr_count-1) + |
| 420 | + # die_table.rowHeight(attr_count-1) + |
| 421 | + # die_table.horizontalHeader().size().height() + 1 + attr_count) |
| 422 | + #self.rpane_layout.update() |
422 | 423 |
|
423 | 424 | # Invoked for tree clicks and keyboard navigation, ref follow, back-forward |
424 | 425 | def on_tree_selection(self, index, prev = None): |
|
0 commit comments