]> granicus.if.org Git - python/commitdiff
all_names(): => unique_names()
authorBarry Warsaw <barry@python.org>
Fri, 2 Oct 1998 15:59:20 +0000 (15:59 +0000)
committerBarry Warsaw <barry@python.org>
Fri, 2 Oct 1998 15:59:20 +0000 (15:59 +0000)
aliases_of(): New method

Tools/pynche/ColorDB.py

index 435e0ad046d0ce565eaeabb3806c9e21af339a03..ed7f6b1aee7908bda5088db6df5b46d54f035d56 100644 (file)
@@ -104,14 +104,24 @@ class ColorDB:
                nearest_name = name
        return nearest_name
 
-    def all_names(self):
+    def unique_names(self):
         # sorted
         if not self.__allnames:
             self.__allnames = []
             for name, aliases in self.__byrgb.values():
                 self.__allnames.append(name)
-            self.__allnames.sort()
+            # sort irregardless of case
+            def nocase_cmp(n1, n2):
+                return cmp(string.lower(n1), string.lower(n2))
+            self.__allnames.sort(nocase_cmp)
         return self.__allnames
+
+    def aliases_of(self, red, green, blue):
+        try:
+            name, aliases = self.__byrgb[(red, green, blue)]
+        except KeyError:
+            raise BadColor((red, green, blue))
+        return [name] + aliases
        
 \f
 class RGBColorDB(ColorDB):