]> asedeno.scripts.mit.edu Git - ColorUtils.git/commitdiff
Don't accidentally blow away the color list; factor generation out.
authorAlejandro R. Sedeno <asedeno@darkmatter.mit.edu>
Fri, 24 Oct 2008 03:42:58 +0000 (23:42 -0400)
committerAlejandro R. Sedeño <asedeno@mit.edu>
Mon, 9 Nov 2009 22:41:20 +0000 (17:41 -0500)
lib/BarnOwl/Module/ColorUtils.pm

index 26e62bb95552bb2344d1cf7a04965786b7c43a02..dc20376df41ecc31bc9a360c908858007c25a59d 100644 (file)
@@ -20,22 +20,26 @@ use Getopt::Long;
 ################################################################################
 #Run this on start and reload. Adds styles, sets style to start.
 ################################################################################
-our @colorList = ();
+our @colorList;
+@colorList ||= ();
 my $config_dir = BarnOwl::get_config_dir();
 
 sub onStart {
-    @colorList = ('black','red','green','yellow',
+    genColorList();
+    bindings_Color();
+    cmd_load();
+}
+$BarnOwl::Hooks::startup->add(\&onStart);
+
+sub genColorList() {
+   @colorList = ('black','red','green','yellow',
                   'blue','magenta','cyan','white');
     if ( *BarnOwl::getnumcolors{CODE} ) {
         for (my $i = 8; $i < BarnOwl::getnumcolors(); $i++) {
             push(@colorList,$i);
         }
     }
-
-    bindings_Color();
-    cmd_load();
 }
-$BarnOwl::Hooks::startup->add(\&onStart);
 
 ################################################################################
 #Register BarnOwl commands and default keybindings.