Ejemplo n.º 1
0
 def paintEvent(self, event):
     # Paints the line numbers
     self._line_color_u = drift_color(self._background_brush.color(), 250)
     self._line_color_s = drift_color(self._background_brush.color(), 280)
     Panel.paintEvent(self, event)
     if self.isVisible():
         painter = QtGui.QPainter(self)
         # get style options (font, size)
         width = self.width()
         height = self.editor.fontMetrics().height()
         font = self.editor.font()
         bold_font = self.editor.font()
         bold_font.setBold(True)
         pen = QtGui.QPen(self._line_color_u)
         pen_selected = QtGui.QPen(self._line_color_s)
         painter.setFont(font)
         # get selection range
         sel_start, sel_end = TextHelper(self.editor).selection_range()
         has_sel = sel_start != sel_end
         cl = TextHelper(self.editor).current_line_nbr()
         # draw every visible blocks
         for top, line, block in self.editor.visible_blocks:
             if ((has_sel and sel_start <= line <= sel_end) or
                     (not has_sel and cl == line)):
                 painter.setPen(pen_selected)
                 painter.setFont(bold_font)
             else:
                 painter.setPen(pen)
                 painter.setFont(font)
             painter.drawText(-3, top, width, height,
                              QtCore.Qt.AlignRight, str(line + 1))
Ejemplo n.º 2
0
 def paintEvent(self, event):
     Panel.paintEvent(self, event)
     painter = QtGui.QPainter(self)
     for top, block_nbr, block in self.editor.visible_blocks:
         user_data = block.userData()
         if hasattr(user_data, "markers"):
             markers = user_data.markers
             for i, marker in enumerate(markers):
                 if (hasattr(marker, 'panel_ref') and
                         marker.panel_ref == self):
                     # only draw our markers
                     if marker in self._to_remove:
                         try:
                             user_data.markers.remove(None)
                             self._to_remove.remove(marker)
                         except ValueError:
                             pass
                         continue
                     if marker and marker.icon:
                         rect = QtCore.QRect()
                         rect.setX(0)
                         rect.setY(top)
                         rect.setWidth(self.sizeHint().width())
                         rect.setHeight(self.sizeHint().height())
                         if isinstance(marker.icon, tuple):
                             key = marker.icon[0]
                         else:
                             key = marker.icon
                         if key not in self._icons:
                             key, val = self.make_marker_icon(marker.icon)
                             if key and val:
                                 self._icons[key] = val
                             else:
                                 continue
                         self._icons[key].paint(painter, rect)
Ejemplo n.º 3
0
 def paintEvent(self, event):
     # Paints the line numbers
     self._line_color_u = drift_color(self._background_brush.color(), 250)
     self._line_color_s = drift_color(self._background_brush.color(), 280)
     Panel.paintEvent(self, event)
     if self.isVisible():
         painter = QtGui.QPainter(self)
         # get style options (font, size)
         width = self.width()
         height = self.editor.fontMetrics().height()
         font = self.editor.font()
         bold_font = self.editor.font()
         bold_font.setBold(True)
         pen = QtGui.QPen(self._line_color_u)
         pen_selected = QtGui.QPen(self._line_color_s)
         painter.setFont(font)
         # get selection range
         sel_start, sel_end = TextHelper(self.editor).selection_range()
         has_sel = sel_start != sel_end
         cl = TextHelper(self.editor).current_line_nbr()
         # draw every visible blocks
         for top, line, block in self.editor.visible_blocks:
             if ((has_sel and sel_start <= line <= sel_end)
                     or (not has_sel and cl == line)):
                 painter.setPen(pen_selected)
                 painter.setFont(bold_font)
             else:
                 painter.setPen(pen)
                 painter.setFont(font)
             painter.drawText(-3, top, width, height, QtCore.Qt.AlignRight,
                              str(line + 1))
Ejemplo n.º 4
0
 def paintEvent(self, event):
     Panel.paintEvent(self, event)
     painter = QtGui.QPainter(self)
     for top, block_nbr, block in self.editor.visible_blocks:
         for marker in self._markers:
             if marker.block == block and marker.icon:
                 rect = QtCore.QRect()
                 rect.setX(0)
                 rect.setY(top)
                 rect.setWidth(self.sizeHint().width())
                 rect.setHeight(self.sizeHint().height())
                 marker.icon.paint(painter, rect)