def __init__(self): super(VisualDebug, self).__init__() self.layout = QtWidgets.QGridLayout(self) self.setMinimumWidth(900) self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) self.treeview = WidgetTreeView() self.treemodel = QtGui.QStandardItemModel() self.treeview.setModel(self.treemodel) self.treeview.setUniformRowHeights(True) self.layout.addWidget(self.treeview) self.treemodel.setHorizontalHeaderLabels([ 'metaObject className', 'objectName', 'windowTitle', 'text', 'title', '__repr__', ]) self.treeview.header().setStretchLastSection(False) mode = QtWidgets.QHeaderView.ResizeToContents try: self.treeview.header().setResizeMode(mode) except AttributeError: # setResizeMode not supported in PyQt pass rootItem = self.treemodel.invisibleRootItem() qApp = QtWidgets.QApplication.instance() for w in qApp.topLevelWidgets(): # extra stuff self.recurseWidgets(w, rootItem)
def __init__(self): super(ObjectInspector, self).__init__() self.layout = QtWidgets.QGridLayout(self) self.setMinimumWidth(900) self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) self.treeview = QtWidgets.QTreeView() self.treemodel = QtGui.QStandardItemModel() self.treeview.setModel(self.treemodel) self.treeview.setUniformRowHeights(True) self.layout.addWidget(self.treeview) self.treemodel.setHorizontalHeaderLabels(['object name', 'object']) self.treeview.header().setStretchLastSection(False) mode = QtWidgets.QHeaderView.ResizeToContents self.treeview.header().setResizeMode(mode) self.load_globals() self.start_timer()
def __init__(self, editor, tabs=None, replace=False): super(SearchPanel, self).__init__() self.setObjectName('SearchPanel') layout = QtWidgets.QGridLayout(self) self.setLayout(layout) self.editor = editor self.find = FindPalette(editor, tabs=tabs) layout.addWidget(self.find, 0, 1) self.find_button = QtWidgets.QPushButton('Find') layout.addWidget(self.find_button, 0, 2) self.previous_button = QtWidgets.QPushButton('Previous') # layout.addWidget(self.previous_button,0,2) self.tabs = tabs if tabs is not None: self.search_across_tabs_check = QtWidgets.QToolButton( checkable=True, checked=False) icon = self.style().standardIcon( QtWidgets.QStyle.SP_FileDialogContentsView) self.search_across_tabs_check.setIcon(icon) self.search_across_tabs_check.setToolTip( 'Search across all open tabs') layout.addWidget(self.search_across_tabs_check, 0, 0) self.search_across_tabs_check.clicked.connect( self.find.toggle_search_across_tabs) self.search_across_tabs_check.clicked.connect( self.change_find_across_tabs_icon) if replace: self.replace_within_selection = False self.replace_within_selection_check = QtWidgets.QToolButton( checkable=True, checked=False) self.replace_within_selection_check.setToolTip( 'Replace only within selection') layout.addWidget(self.replace_within_selection_check, 1, 0) self.replace_within_selection_check.clicked.connect( self.toggle_replace_within_selection) self.replace = EditLine(editor) layout.addWidget(self.replace, 1, 1) self.replace_button = QtWidgets.QPushButton('Replace') layout.addWidget(self.replace_button, 1, 2) self.replace_button.clicked.connect(self.find_and_replace) self.replace.ctrl_enter_signal.connect(self.find_and_replace) self.replace.escape_signal.connect(self.remove_from_tabeditor) if PREVIOUS_REPLACEMENT is not None: self.replace.setText(PREVIOUS_REPLACEMENT) self.replace.textChanged.connect(self.remember_replacement) self.setTabOrder(self.find, self.replace) self.close_button = QtWidgets.QPushButton() icon = self.style().standardIcon( QtWidgets.QStyle.SP_TitleBarCloseButton) self.close_button.setIcon(icon) self.close_button.setFlat(True) layout.addWidget(self.close_button, 0, 3) self.insert_self_in_parent() self.find.escape_signal.connect(self.remove_from_tabeditor) self.find_button.clicked.connect(self.find.find) self.previous_button.clicked.connect(self.find.find_previous) self.close_button.clicked.connect(self.close)