29 lines
843 B
Python
29 lines
843 B
Python
from PyQt5.QtCore import Qt
|
|
from PyQt5.QtWidgets import QTreeView, QDialog, QVBoxLayout
|
|
|
|
from rare.utils.json_formatter import QJsonModel
|
|
|
|
|
|
class DebugView(QTreeView):
|
|
def __init__(self, data, parent=None):
|
|
super(DebugView, self).__init__(parent=parent)
|
|
self.setColumnWidth(0, 300)
|
|
self.setWordWrap(True)
|
|
self.model = QJsonModel(self)
|
|
self.setModel(self.model)
|
|
self.setContextMenuPolicy(Qt.ActionsContextMenu)
|
|
try:
|
|
self.model.load(data)
|
|
except Exception as e:
|
|
pass
|
|
self.resizeColumnToContents(0)
|
|
|
|
|
|
class DebugDialog(QDialog):
|
|
def __init__(self, data, parent=None):
|
|
super().__init__(parent=parent)
|
|
self.resize(800, 600)
|
|
|
|
layout = QVBoxLayout(self)
|
|
view = DebugView(data, self)
|
|
layout.addWidget(view)
|