Example #1
0
 def Draw(self, grid, dc, rect, col):
     dc.SetBrush(wx.Brush(self._bgcolor))
     dc.SetPen(wx.TRANSPARENT_PEN)
     dc.DrawRectangle(rect)
     hAlign, vAlign = grid.GetColLabelAlignment()
     text = grid.GetColLabelValue(col)
     self.DrawBorder(grid, dc, rect)
     self.DrawText(grid, dc, rect, text, hAlign, vAlign)
Example #2
0
 def Draw(self, grid, dc, rect, col):
     dc.SetBrush(wx.Brush(self._bgcolor))
     dc.SetPen(wx.TRANSPARENT_PEN)
     dc.DrawRectangleRect(rect)
     hAlign, vAlign = grid.GetColLabelAlignment()
     text = grid.GetColLabelValue(col)
     self.DrawBorder(grid, dc, rect)
     dc.Font.Weight = wx.BOLD
     # dc.Font.PointSize = 18
     self.DrawText(grid, dc, rect, text, hAlign, vAlign)
Example #3
0
    def Draw(self, grid, dc, rect, col):
        rect.x -= 1
        if col == grid.actions.cursor[1]:
            color = get_color(config["selection_color"])

        else:
            color = get_color(config["label_color"])

        dc.SetPen(wx.TRANSPARENT_PEN)
        dc.SetBrush(wx.Brush(color))
        dc.DrawRectangleRect(rect)
        hAlign, vAlign = grid.GetColLabelAlignment()
        text = grid.GetColLabelValue(col)
        if col != grid.actions.cursor[1]:
            self.DrawBorder(grid, dc, rect)
        self.DrawText(grid, dc, rect, text, hAlign, vAlign)
Example #4
0
    def Draw(self, grid, dc, rect, col):
        if col == grid.actions.cursor[1]:
            rect.x += 1
            rect.width -= 1
            pen_color = get_color(wx.SYS_COLOUR_MENUHILIGHT)
            pen = wx.Pen(pen_color, 2, wx.SOLID)
            dc.SetPen(pen)
        else:
            dc.SetPen(wx.TRANSPARENT_PEN)

        color = get_color(wx.SYS_COLOUR_BACKGROUND)
        dc.SetBrush(wx.Brush(color))
        dc.DrawRectangleRect(rect)
        hAlign, vAlign = grid.GetColLabelAlignment()
        text = grid.GetColLabelValue(col)
        self.DrawBorder(grid, dc, rect)
        self.DrawText(grid, dc, rect, text, hAlign, vAlign)
Example #5
0
    def do_draw(self, grid, dc, rect, label, sorting=False):
        hAlign, vAlign = grid.GetColLabelAlignment()
        rect.left -= 1 #alignment prettify
        self.DrawBorder(grid,dc,rect)
        
        self.DrawText(grid, dc, rect, label, hAlign, vAlign)
        if sorting:
            tri_width = 8
            tri_height = 5
            left = rect.left + abs(rect.left-rect.right)/2-tri_width/2
            top = rect.bottom - 2 - tri_height

            dc.SetBrush(wx.Brush(wx.BLACK))
            if grid.sort_dir is not None:
                if grid.sort_dir:
                    dc.DrawPolygon([(left,top), (left + tri_width,top), 
                                    (left + tri_width/2, top + tri_height)])
                else:
                    dc.DrawPolygon([(left + tri_width/2, top), 
                                    (left + tri_width, top + tri_height), 
                                    (left, top + tri_height)])
Example #6
0
    def Draw(self, grid, dc, rect, col):
        graphicUtils.DrawLineGradient(dc, rect.GetX(), rect.GetY(),
                                      rect.GetX() + rect.GetWidth() - 2,
                                      rect.GetY() + rect.GetHeight(),
                                      self._start_color, self._end_color)
        r = wx.Rect(rect.GetX(), rect.GetY(), rect.GetWidth(),
                    rect.GetHeight())
        hAlign, vAlign = grid.GetColLabelAlignment()
        text = grid.GetColLabelValue(col)

        dc.SetPen(wx.TRANSPARENT_PEN)
        self.DrawText(grid, dc, rect, text, hAlign, vAlign)

        # Top Line
        dc.SetPen(self._top_pen)
        dc.DrawLine(r.GetX(), r.GetY(), r.GetX() + r.GetWidth(), r.GetY())
        dc.DrawLine(r.GetX(),
                    r.GetY() + 1,
                    r.GetX() + r.GetWidth(),
                    r.GetY() + 1)
        # Right Line
        dc.SetPen(self._right_pen)
        dc.DrawLine(r.GetX() + r.GetWidth() - 2, r.GetY(),
                    r.GetX() + r.GetWidth() - 2,
                    r.GetY() + r.GetHeight())
        # Left Line
        dc.SetPen(self._left_pen)
        dc.DrawLine(r.GetX(), r.GetY(), r.GetX(), r.GetY() + r.GetHeight())
        dc.DrawLine(r.GetX() + r.GetWidth() - 1, r.GetY(),
                    r.GetX() + r.GetWidth() - 1,
                    r.GetY() + r.GetHeight())
        # Bottom
        dc.SetPen(self._bot_pen)
        dc.DrawLine(r.GetX(),
                    r.GetY() + r.GetHeight() - 1,
                    r.GetX() + r.GetWidth(),
                    r.GetY() + r.GetHeight() - 1)

        #   Рисуем признак сортируемой ячейки
        if self.CanSort() and r.GetWidth() > 5:
            penBound = wx.Pen(SORT_BORDER_CLR)
            dc.SetPen(penBound)
            clr = BOT_LAB_CLR
            stx = r.GetX()
            st = 0
            # Колока не сортирована
            if self.sortDirection == 0:
                brush = wx.Brush(SORT_UP_CLR, wx.SOLID)
                dc.SetBrush(brush)
                dc.DrawPolygon(SortMarkPointsDark, mark_shith_x + stx,
                               mark_shith_y + st)
            # Колонка отсортирована по убыванию
            elif self.sortDirection < 0:
                brush = wx.Brush(SORT_P_CLR, wx.SOLID)
                dc.SetBrush(brush)
                dc.DrawPolygon(SortMarkPointsDark, mark_shith_x + stx,
                               mark_shith_y + st)
            # Колонка отсортирована по возрастанию
            else:
                brush = wx.Brush(SORT_P_CLR, wx.SOLID)
                dc.SetBrush(brush)
                dc.DrawPolygon(SortMarkPointsDarkUp, mark_shith_x + stx,
                               mark_shith_y + st)