Source code for pydm.utilities.colors

import pickle
import os

current_dir = os.path.dirname(os.path.realpath(__file__))

svg_color_to_hex_map = None
hex_to_svg_color_map = None
with open(os.path.join(current_dir, 'hex2color.pkl'), 'rb') as f:
    hex_to_svg_color_map = pickle.load(f)
with open(os.path.join(current_dir, 'color2hex.pkl'), 'rb') as f:
    svg_color_to_hex_map = pickle.load(f)

[docs]def svg_color_from_hex(hex_string, hex_on_fail=False): """ Returns the SVG color based on its HEX equivalent. Parameters ---------- hex_string: str The color code in hex. E.g. #000000 hex_on_fail: bool, Optional Whether or not to return the `hex_string` when an invalid color is submitted. Default is False. Returns ------- str The SVG color string. """ if not hex_on_fail: return hex_to_svg_color_map[str(hex_string).lower()] try: return hex_to_svg_color_map[str(hex_string).lower()] except KeyError: return hex_string
[docs]def hex_from_svg_color(color_string): """ Returns the HEX color based on its SVG equivalent. Parameters ---------- color_string: str The SVG color string. E.g. black Returns ------- str The HEX color string. """ return svg_color_to_hex_map[str(color_string).lower()]
default_colors = ['white', 'red', 'dodgerblue', 'forestgreen', 'yellow', 'fuchsia', 'turquoise', 'deeppink', 'lime', 'orange', 'whitesmoke', 'beige', 'purple', 'teal', 'darksalmon', 'brown']