Added support for the --image_dir and --font_dir command line switches.
authorTilman Sauerbeck <tilman@code-monkey.de>
Wed, 8 Jun 2005 17:35:49 +0000 (17:35 +0000)
committerTilman Sauerbeck <tilman@code-monkey.de>
Wed, 8 Jun 2005 17:35:49 +0000 (17:35 +0000)
ChangeLog
TODO
lib/redact/redact.rb

index d29ca017d652984ab5d0a93315acbf1969b8e57d..02d29b8c2f4c6e75ce13323cc5a0db3f4cb47c28 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,11 +1,13 @@
 --
-$Id: ChangeLog 43 2005-06-08 17:31:47Z tilman $
+$Id: ChangeLog 44 2005-06-08 17:35:49Z tilman $
 ++
 
 2005-06-08 Tilman Sauerbeck (tilman at code-monkey de)
         * Rakefile: Code cleanup
         * lib/redact/app.rb: Moved Redact::App's @options to
           Redact::OPTIONS
+        * lib/redact/redact.rb, TODO: Added support for the --image_dir
+          and --font_dir command line switches
 
 2005-05-29 Tilman Sauerbeck (tilman at code-monkey de)
         * Rakefile: Use FileUtils.mkdir_p to create the destination
diff --git a/TODO b/TODO
index 16eac2f1c57d82a285d17d2749b4a7055c01bd0b..68d8560f1a601c3fde713fed01153ed33d07f75c 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,6 +1,5 @@
 --
-$Id: TODO 1 2005-03-26 01:32:38Z tilman $
+$Id: TODO 44 2005-06-08 17:35:49Z tilman $
 ++
 
 * Add support for the various 'fill' properties in ImageDescription
-* Respect --image_dir and --font_dir command line switches
index 70f6770e8af618abdc24b9f62ddd1595ce611aba..d0da5d7859b655ad2d47d78eb78e28827a4b5fc4 100644 (file)
@@ -1,5 +1,5 @@
 #--
-# $Id: redact.rb 35 2005-04-25 17:14:49Z tilman $
+# $Id: redact.rb 44 2005-06-08 17:35:49Z tilman $
 #
 # Copyright (c) 2005 Tilman Sauerbeck (tilman at code-monkey de)
 #
@@ -145,7 +145,7 @@ module Redact
                attr_reader :filename
 
                def initialize(filename)
-                       @filename = filename.to_str.dup.freeze
+                       @filename = find_font(filename.to_str).freeze
                end
 
                protected
@@ -156,6 +156,16 @@ module Redact
                def to_eet_properties
                        {"entry" => [@filename]}
                end
+
+               private
+               def find_font(file)
+                       [".", OPTIONS.font_dir].each do |d|
+                               f2 = File.join(d, file)
+                               return f2 if File.file?(f2)
+                       end
+
+                       nil
+               end
        end
 
        class ImageDirectory < Array # :nodoc:
@@ -179,7 +189,7 @@ module Redact
                attr_reader :filename, :image, :id
 
                def initialize(filename)
-                       @filename = filename.to_str.dup.freeze
+                       @filename = find_image(filename.to_str).freeze
                        @image = Imlib2::Image.load(@filename)
                        @id = -1
                        @source_type = 1 # COMP
@@ -207,6 +217,16 @@ module Redact
                         "source_param" => [@source_param],
                         "id" => [@id]}
                end
+
+               private
+               def find_image(file)
+                       [".", OPTIONS.image_dir].each do |d|
+                               f2 = File.join(d, file)
+                               return f2 if File.file?(f2)
+                       end
+
+                       nil
+               end
        end
 
        class CollectionDirectory < Array # :nodoc: