def add_error(self, errmsg): vbox = QtHelp.VBox() tw = QtGui.QTextEdit() tw.setReadOnly(True) tw.setCurrentFont(self.msgFont) tw.setText(errmsg) vbox.addWidget(tw, stretch=1) hbox = QtHelp.HBox() btn = QtGui.QPushButton("Remove") btn.clicked.connect(lambda: self.remove_error(vbox)) hbox.addWidget(btn, stretch=0) # Add the time the error occurred ts = time.strftime("%m/%d %H:%M:%S", time.localtime()) lbl = QtGui.QLabel(ts) hbox.addWidget(lbl, stretch=0) vbox.addWidget(hbox, stretch=0) layout = self.msgList.layout() layout.addWidget(vbox, layout.rowCount(), 0, alignment=QtCore.Qt.AlignTop) self.widgetList.append(vbox)
def build_gui(self, container): rvbox = container self.msgFont = QtGui.QFont("Fixed", 14) tw = QtGui.QTextEdit() #tw.setLineWrapMode(??) ## tw.set_left_margin(4) ## tw.set_right_margin(4) tw.setReadOnly(True) ## tw.set_left_margin(4) ## tw.set_right_margin(4) tw.setCurrentFont(self.msgFont) self.tw = tw self.history = [] self.histmax = 10 sw = QtGui.QScrollArea() sw.setWidgetResizable(True) #sw.set_border_width(2) sw.setWidget(self.tw) rvbox.addWidget(sw, stretch=1) sw.show() self.entry = QtGui.QLineEdit() rvbox.addWidget(self.entry, stretch=0) self.entry.returnPressed.connect(self.command_cb)
pInfo.obj.start() except Exception, e: errmsg = "Failed to load global plugin '%s': %s" % (pluginName, str(e)) try: (type, value, tb) = sys.exc_info() tb_str = "\n".join(traceback.format_tb(tb)) except Exception, e: tb_str = "Traceback information unavailable." self.logger.error(errmsg) self.logger.error("Traceback:\n%s" % (tb_str)) if vbox: textw = QtGui.QTextEdit() textw.append(str(e) + '\n') textw.append(tb_str) textw.setReadOnly(True) vbox.addWidget(textw, stretch=1) if vbox: self.ds.add_tab(ws, widget, 2, tabName) pInfo.widget = widget def stop_global_plugin(self, pluginName): self.logger.debug("Attempting to stop plugin '%s'" % (pluginName)) try: pluginObj = self.gpmon.getPlugin(pluginName) pluginObj.stop() except Exception, e: