def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND: return r = wx.Rect(*rect) icon_size = (0, 0) if self.font_icon: icon_size = self.font_icon.GetSize() icon_x = r.x + 2 label_y = r.y + 4 label_x = icon_x + 4 + icon_size[0] icon_y = self.control_height / 2 - icon_size[1] / 2 + label_y sample_y = label_y + self.control_height + 2 if flags & wx.combo.ODCB_PAINTING_SELECTED: if self.font_icon: icon = bmp_to_white(self.font_icon) dc.DrawBitmap(icon, icon_x, icon_y, True) bmp = bmp_to_white(self.bitmaps[item]) dc.DrawBitmap(bmp, label_x, label_y, True) bmp = bmp_to_white(self.sample_bitmaps[item]) dc.DrawBitmap(bmp, label_x, sample_y, True) elif flags & wx.combo.ODCB_PAINTING_CONTROL: if self.font_icon: dc.DrawBitmap(self.font_icon, icon_x, icon_y, True) dc.DrawBitmap(self.bitmaps[item], label_x, label_y, True) else: if self.font_icon: dc.DrawBitmap(self.font_icon, icon_x, icon_y, True) dc.DrawBitmap(self.bitmaps[item], label_x, label_y, True) dc.DrawBitmap(self.sample_bitmaps[item], label_x, sample_y, True) dc.SetPen(wx.Pen(wx.Colour(240, 240, 240), 1)) val = sample_y + self.sample_bitmaps[item].GetSize()[1] dc.DrawLine(0, val, r.width, val)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND: return r = wx.Rect(*rect) icon_size = (0, 0) if self.font_icon: icon_size = self.font_icon.GetSize() icon_x = r.x + 2 label_y = r.y + 4 label_x = icon_x + 4 + icon_size[0] icon_y = self.control_height / 2 - icon_size[1] / 2 + label_y sample_y = label_y + self.control_height + 2 if flags & wx.combo.ODCB_PAINTING_SELECTED and not \ flags & wx.combo.ODCB_PAINTING_CONTROL: if const.IS_MSW: pdc = wx.PaintDC(self) pdc.SetPen(wx.TRANSPARENT_PEN) pdc.SetBrush( wx.Brush(wx.Colour(*const.UI_COLORS['selected_text_bg']))) pdc.DrawRectangle(*r.Get()) else: render = wx.RendererNative.Get() render.DrawItemSelectionRect(self, dc, r, wx.CONTROL_SELECTED) if self.font_icon: icon = bmp_to_white(self.font_icon) dc.DrawBitmap(icon, icon_x, icon_y, True) dc.SetTextForeground(wx.WHITE) dc.DrawText(self.fontnames[item], label_x, label_y) bmp = bmp_to_white(self.sample_bitmaps[item]) dc.DrawBitmap(bmp, label_x, sample_y, True) elif flags & wx.combo.ODCB_PAINTING_CONTROL: if const.IS_GTK: icon_x += 2 label_x += 2 pdc = wx.PaintDC(self) pdc.SetPen(wx.TRANSPARENT_PEN) pdc.SetBrush(wx.Brush(wx.Colour(*self.GetBackgroundColour()))) h = self.get_size()[1] w = r.width + 3 pdc.DrawRectangle(0, 0, w, h) nr = wx.RendererNative.Get() nr.DrawTextCtrl(self, dc, (0, 0, w, h), wx.CONTROL_DIRTY) if self.font_icon: dc.DrawBitmap(self.font_icon, icon_x, icon_y, True) dc.SetTextForeground(self.fontcolor) dc.DrawText(self.fontnames[item], label_x, label_y) else: if self.font_icon: dc.DrawBitmap(self.font_icon, icon_x, icon_y, True) dc.SetTextForeground(self.fontcolor) dc.DrawText(self.fontnames[item], label_x, label_y) dc.DrawBitmap(self.sample_bitmaps[item], label_x, sample_y, True) dc.SetPen(wx.Pen(wx.Colour(240, 240, 240), 1)) val = sample_y + self.sample_bitmaps[item].GetSize()[1] dc.DrawLine(0, val, r.width, val)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND:return r = wx.Rect(*rect) if flags & wx.combo.ODCB_PAINTING_SELECTED and \ flags & wx.combo.ODCB_PAINTING_CONTROL: if const.is_msw(): bitmap = self.bitmaps[item] else: bitmap = bmp_to_white(self.bitmaps[item]) elif flags & wx.combo.ODCB_PAINTING_SELECTED: bitmap = bmp_to_white(self.bitmaps[item]) else: bitmap = self.bitmaps[item] dc.DrawBitmap(bitmap, r.x + 2, r.y + 4, True)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND: return r = wx.Rect(*rect) if flags & wx.combo.ODCB_PAINTING_SELECTED and \ flags & wx.combo.ODCB_PAINTING_CONTROL: if const.is_msw(): bitmap = self.bitmaps[item] else: bitmap = bmp_to_white(self.bitmaps[item]) elif flags & wx.combo.ODCB_PAINTING_SELECTED: bitmap = bmp_to_white(self.bitmaps[item]) else: bitmap = self.bitmaps[item] dc.DrawBitmap(bitmap, r.x + 2, r.y + 4, True)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND:return r = wx.Rect(*rect) if flags & wx.combo.ODCB_PAINTING_SELECTED: dc.DrawBitmap(bmp_to_white(self.bitmaps[item]), r.x + 2, r.y + 4, True) else: dc.DrawBitmap(self.bitmaps[item], r.x + 2, r.y + 4, True)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND: return r = wx.Rect(*rect) if flags & wx.combo.ODCB_PAINTING_SELECTED: dc.DrawBitmap(bmp_to_white(self.bitmaps[item]), r.x + 2, r.y + 4, True) else: dc.DrawBitmap(self.bitmaps[item], r.x + 2, r.y + 4, True)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND:return r = wx.Rect(*rect) icon_size = (0, 0) if self.font_icon: icon_size = self.font_icon.GetSize() icon_x = r.x + 2 label_y = r.y + 4 label_x = icon_x + 4 + icon_size[0] icon_y = self.control_height / 2 - icon_size[1] / 2 + label_y sample_y = label_y + self.control_height + 2 if flags & wx.combo.ODCB_PAINTING_SELECTED and not \ flags & wx.combo.ODCB_PAINTING_CONTROL: if self.font_icon: icon = bmp_to_white(self.font_icon) dc.DrawBitmap(icon, icon_x, icon_y, True) dc.SetTextForeground(wx.WHITE) dc.DrawText(self.fontnames[item], label_x, label_y) bmp = bmp_to_white(self.sample_bitmaps[item]) dc.DrawBitmap(bmp, label_x, sample_y, True) elif flags & wx.combo.ODCB_PAINTING_CONTROL: if const.is_gtk(): icon_x += 2 label_x += 2 pdc = wx.PaintDC(self) pdc.SetPen(wx.TRANSPARENT_PEN) pdc.SetBrush(wx.Brush(wx.Colour(*self.GetBackgroundColour()))) h = self.get_size()[1] w = r.width + 3 pdc.DrawRectangle(0, 0, w, h) nr = wx.RendererNative.Get() nr.DrawTextCtrl(self, dc, (0, 0, w, h), wx.CONTROL_DIRTY) if self.font_icon: dc.DrawBitmap(self.font_icon, icon_x, icon_y, True) dc.SetTextForeground(self.fontcolor) dc.DrawText(self.fontnames[item], label_x, label_y) else: if self.font_icon: dc.DrawBitmap(self.font_icon, icon_x, icon_y, True) dc.SetTextForeground(self.fontcolor) dc.DrawText(self.fontnames[item], label_x, label_y) dc.DrawBitmap(self.sample_bitmaps[item], label_x, sample_y, True) dc.SetPen(wx.Pen(wx.Colour(240, 240, 240), 1)) val = sample_y + self.sample_bitmaps[item].GetSize()[1] dc.DrawLine(0, val, r.width, val)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND: return x, y, w, h = wx.Rect(*rect) if flags & wx.combo.ODCB_PAINTING_SELECTED and \ flags & wx.combo.ODCB_PAINTING_CONTROL: dc.SetBrush(wx.Brush(wx.WHITE)) dc.DrawRectangle(x - 1, y - 1, w + 2, h + 2) bitmap = self.bitmaps[item] elif flags & wx.combo.ODCB_PAINTING_SELECTED: render = wx.RendererNative.Get() render.DrawItemSelectionRect(self, dc, rect, wx.CONTROL_SELECTED) bitmap = bmp_to_white(self.bitmaps[item]) else: bitmap = self.bitmaps[item] dc.DrawBitmap(bitmap, x + 2, y + 4, True)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND: return x, y, w, h = wx.Rect(*rect) color = wx.Colour(*const.UI_COLORS['selected_text_bg']) if flags & wx.combo.ODCB_PAINTING_SELECTED and \ flags & wx.combo.ODCB_PAINTING_CONTROL: dc.SetBrush(wx.Brush(wx.WHITE)) dc.DrawRectangle(x - 1, y - 1, w + 2, h + 2) bitmap = self.bitmaps[item] elif flags & wx.combo.ODCB_PAINTING_SELECTED: dc.SetBrush(wx.Brush(color)) dc.DrawRectangle(x, y, w, h) bitmap = bmp_to_white(self.bitmaps[item]) else: bitmap = self.bitmaps[item] dc.DrawBitmap(bitmap, x + 2, y + 4, True)
def OnDrawItem(self, dc, rect, item, flags): if item == wx.NOT_FOUND: return x, y, w, h = wx.Rect(*rect).Get() if flags & wx.combo.ODCB_PAINTING_SELECTED and \ flags & wx.combo.ODCB_PAINTING_CONTROL: dc.SetBrush(wx.Brush(wx.WHITE)) dc.DrawRectangle(x - 1, y - 1, w + 2, h + 2) bitmap = self.bitmaps[item] elif flags & wx.combo.ODCB_PAINTING_SELECTED: if const.IS_MSW: pdc = wx.PaintDC(self) pdc.SetPen(wx.TRANSPARENT_PEN) pdc.SetBrush( wx.Brush(wx.Colour(*const.UI_COLORS['selected_text_bg']))) pdc.DrawRectangle(x, y, w, h) else: render = wx.RendererNative.Get() render.DrawItemSelectionRect(self, dc, rect, wx.CONTROL_SELECTED) bitmap = bmp_to_white(self.bitmaps[item]) else: bitmap = self.bitmaps[item] dc.DrawBitmap(bitmap, x + 2, y + 4, True)