def paintEvent(self, event): contents_y = self.edit.verticalScrollBar().value() page_bottom = contents_y + self.edit.viewport().height() font_metrics = self.fontMetrics() current_block = self.edit.document().findBlock(self.edit.textCursor().position()) painter = QPainter(self) line_count = 0 block = self.edit.document().begin() while block.isValid(): line_count += 1 position = self.edit.document().documentLayout().blockBoundingRect(block).topLeft() if position.y() > page_bottom: break bold = False if block == current_block: bold = True font = painter.font() font.setBold(True) painter.setFont(font) self.current = line_count painter.drawText( self.width() - font_metrics.width(str(line_count)) - 10, round(position.y()) - contents_y + font_metrics.ascent(), str(line_count), ) if bold: font = painter.font() font.setBold(False) painter.setFont(font) block = block.next() self.highest_line = line_count painter.end() QWidget.paintEvent(self, event)
def paintEvent(self, event): contents_y = self.edit.verticalScrollBar().value() page_bottom = contents_y + self.edit.viewport().height() font_metrics = self.fontMetrics() current_block = self.edit.document().findBlock( self.edit.textCursor().position()) painter = QPainter(self) line_count = 0 block = self.edit.document().begin() while block.isValid(): line_count += 1 position = self.edit.document().documentLayout().blockBoundingRect( block).topLeft() if position.y() > page_bottom: break bold = False if block == current_block: bold = True font = painter.font() font.setBold(True) painter.setFont(font) self.current = line_count painter.drawText( self.width() - font_metrics.width(str(line_count)) - 10, round(position.y()) - contents_y + font_metrics.ascent(), str(line_count)) if bold: font = painter.font() font.setBold(False) painter.setFont(font) block = block.next() self.highest_line = line_count painter.end() QWidget.paintEvent(self, event)
def paintEvent(self, event): if self._image is None: return QWidget.paintEvent(self, event) with paint(self) as painter: painter.setRenderHint(QPainter.Antialiasing) painter.setRenderHint(QPainter.HighQualityAntialiasing) pixmap = QPixmap.fromImage(self.image, Qt.AutoColor) scale_factor = 1.0 if self._scale: scale_factor = min(self.width() / pixmap.width(), self.height() / pixmap.height()) translated = (self.size() - (pixmap.size() * scale_factor)) / 2 painter.translate(translated.width(), translated.height()) painter.scale(scale_factor, scale_factor) painter.drawPixmap(0, 0, pixmap)
def paintEvent(self, event): '''Handle paint event.''' self._numberbar_paint(self, event) QWidget.paintEvent(self, event) return
def paintEvent(self, event): self.edit.numberbarPaint(self, event) QWidget.paintEvent(self, event)
def paintEvent(self, event): #Empty paint event method # XXX: should be using super here, but somehow PyQt4 # complains about paintEvent not present in super QWidget.paintEvent(self, event) self.paint_event_called = True