def delete_color(self, color, palette_type, palette_name): """Delete color.""" if palette_type == '__special__': if palette_name == "Favorites": favs = util.get_favs()['colors'] if color in favs: favs.remove(color) util.save_palettes(favs, favs=True) self.show_colors(palette_type, palette_name, delete=True, update=False) elif palette_type in ('__global__', '__project__'): if palette_type == '__global__': color_palettes = util.get_palettes() else: color_palettes = util.get_project_palettes(self.view.window()) for palette in color_palettes: if palette_name == palette['name']: if color in palette['colors']: palette['colors'].remove(color) if palette_type == '__global__': util.save_palettes(color_palettes) else: util.save_project_palettes(self.view.window(), color_palettes) self.show_colors(palette_type, palette_name, delete=True, update=False) break
def add_palette(self, color, palette_type, palette_name): """Add pallete.""" if palette_type == "__special__": if palette_name == 'Favorites': favs = util.get_favs()['colors'] if color not in favs: favs.append(color) util.save_palettes(favs, favs=True) self.show_color_info(update=True) elif palette_type in ('__global__', '__project__'): if palette_type == '__global__': color_palettes = util.get_palettes() else: color_palettes = util.get_project_palettes(self.view.window()) for palette in color_palettes: if palette_name == palette['name']: if color not in palette['colors']: palette['colors'].append(color) if palette_type == '__global__': util.save_palettes(color_palettes) else: util.save_project_palettes(self.view.window(), color_palettes) self.show_color_info(update=True) break
def delete_palette(self, palette_type, palette_name): """Delete palette.""" if palette_type == "__special__": if palette_name == 'Favorites': util.save_palettes([], favs=True) self.show_palettes(delete=True, update=False) elif palette_type in ('__global__', '__project__'): if palette_type == '__global__': color_palettes = util.get_palettes() else: color_palettes = util.get_project_palettes(self.view.window()) count = -1 index = None for palette in color_palettes: count += 1 if palette_name == palette['name']: index = count break if index is not None: del color_palettes[index] if palette_type == '__global__': util.save_palettes(color_palettes) else: util.save_project_palettes(self.view.window(), color_palettes) self.show_palettes(delete=True, update=False)
def create_palette(self, palette_name, palette_type, color): """Add color to new color palette.""" if palette_type == '__global__': color_palettes = util.get_palettes() for palette in color_palettes: if palette_name == palette['name']: sublime.error_message('The name of "%s" is already in use!') return color_palettes.append({"name": palette_name, 'colors': [color]}) util.save_palettes(color_palettes) elif palette_type == '__project__': color_palettes = util.get_project_palettes(self.view.window()) for palette in color_palettes: if palette_name == palette['name']: sublime.error_message('The name of "%s" is already in use!') return color_palettes.append({"name": palette_name, 'colors': [color]}) util.save_project_palettes(self.view.window(), color_palettes) self.repop()