def __init__(self, tab_widget, log_box, clear_log_button, copy_log_button):
        self.tab_widget = tab_widget
        self.log = log_box
        self.log_tab = self.tab_widget.findChild(QWidget, 'log_tab')
        self.log_tab_idx = self.tab_widget.indexOf(self.log_tab)
        self.color = {
            'base': self.tab_widget.tabBar().tabTextColor(self.log_tab_idx),
            'gold': QtGui.QColor(255, 191, 0)
        }
        self.current_color = self.color['base']
        self.blink_status = False
        self.log.setTabStopWidth(
            QtGui.QFontMetricsF(self.log.font()).width(' ') * 6)

        # self.tab_widget.tabBar().setStyleSheet('background-color: yellow')

        # Connect Log Functions
        self.tab_widget.currentChanged.connect(self._tab_widget_change)
        clear_log_button.clicked.connect(self.clear)
        copy_log_button.clicked.connect(self.copy)
Example #2
0
    def _draw_limits(self, painter, upper_k, lower_k):
        painter.save()
        painter.setPen(self.BASE_PEN)
        w, h = self.width(), self.height()
        font_metric = QtGui.QFontMetricsF(painter.font())
        font_h = font_metric.height()
        start_h = (h - font_h) / 2.0

        upper_str = "{:.3f}".format(upper_k)
        lower_str = "{:.3f}".format(lower_k)

        lower_str_w = font_metric.horizontalAdvance(lower_str)
        lower_rect = QtCore.QRectF(1, start_h, lower_str_w, font_h)
        painter.drawText(lower_rect, lower_str)

        upper_str_w = font_metric.horizontalAdvance(upper_str)
        upper_rect = QtCore.QRectF(w - lower_str_w - 1, start_h, upper_str_w,
                                   font_h)
        painter.drawText(upper_rect, upper_str)
        painter.restore()