From: Barry Warsaw Date: Fri, 2 Oct 1998 14:43:30 +0000 (+0000) Subject: all_names(): Return just the unique names of rgb colors X-Git-Tag: v1.5.2a2~172 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8be2594a2428a18ade0cfa3e6d5d256308c1c8dd;p=python all_names(): Return just the unique names of rgb colors --- diff --git a/Tools/pynche/ColorDB.py b/Tools/pynche/ColorDB.py index 5191d2b1d0..435e0ad046 100644 --- a/Tools/pynche/ColorDB.py +++ b/Tools/pynche/ColorDB.py @@ -40,6 +40,8 @@ class ColorDB: # key is name, value is (red, green, blue) self.__byname = {} # + # all unique names (non-aliases). built-on demand + self.__allnames = None while 1: line = fp.readline() if not line: @@ -101,6 +103,15 @@ class ColorDB: nearest = distance nearest_name = name return nearest_name + + def all_names(self): + # sorted + if not self.__allnames: + self.__allnames = [] + for name, aliases in self.__byrgb.values(): + self.__allnames.append(name) + self.__allnames.sort() + return self.__allnames class RGBColorDB(ColorDB):