def apply_palette(self, palette_name):
palette_def = self._api.opt.general['palettes'][palette_name]
palette = QtGui.QPalette()
for color_type, color_value in palette_def.items():
if '+' in color_type:
group_name, role_name = color_type.split('+')
else:
group_name = ''
role_name = color_type
target_group = getattr(QtGui.QPalette, group_name, None)
target_role = getattr(QtGui.QPalette, role_name, None)
if target_group is not None and target_role is not None:
palette.setColor(
target_group, target_role, QtGui.QColor(*color_value))
elif target_role is not None:
palette.setColor(target_role, QtGui.QColor(*color_value))
self.setPalette(palette)
self.update()
评论列表
文章目录