Beispiel #1
0
    def __init__(self, log_dialog, parent=None):
        super(LogStatusWidget, self).__init__(parent)

        main_layout = QHBoxLayout()
        main_layout.setContentsMargins(0, 0, 0, 0)
        self.setLayout(main_layout)

        self.app = QApplication.instance()

        self.last_message_level = logging.INFO
        self.handler = log_dialog.handler

        self.label = ClickableLabel()

        self.okay_pixmap = QPixmap(":/freeseer/state_okay.png").scaledToHeight(
            19)
        self.warning_pixmap = QPixmap(
            ":/freeseer/state_warning.png").scaledToHeight(19)
        self.error_pixmap = QPixmap(
            ":/freeseer/state_error.png").scaledToHeight(19)
        self.icon = ClickableLabel()
        self.icon.setPixmap(self.okay_pixmap)
        self.icon.setToolTip("Okay")

        main_layout.addWidget(self.icon)
        main_layout.addWidget(self.label, Qt.AlignLeft)

        self.connect(self.label, SIGNAL('double_clicked()'), log_dialog.show)
        self.connect(self.icon, SIGNAL('double_clicked()'), log_dialog.show)

        self.message_timer = QTimer()
        self.connect(self.message_timer, SIGNAL("timeout()"),
                     functools.partial(self.label.setText, ""))

        self.handler.add_listener(self)