X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=lib%2Fredact%2Fredact.rb;h=d0da5d7859b655ad2d47d78eb78e28827a4b5fc4;hb=db4c1244950c92cdc640621cbd97d9b5a947cf27;hp=499b7fdb64bfa705d138aaa5f10bb3f85cfd6f1b;hpb=5243d32b6d7e35d5aad02b55018c958acd3aca09;p=redact.git diff --git a/lib/redact/redact.rb b/lib/redact/redact.rb index 499b7fd..d0da5d7 100644 --- a/lib/redact/redact.rb +++ b/lib/redact/redact.rb @@ -1,5 +1,5 @@ #-- -# $Id: redact.rb 6 2005-03-26 20:24:40Z tilman $ +# $Id: redact.rb 44 2005-06-08 17:35:49Z tilman $ # # Copyright (c) 2005 Tilman Sauerbeck (tilman at code-monkey de) # @@ -57,7 +57,7 @@ class String end module Redact - VERSION = "0.1.0" + VERSION = "0.1.1" class RedactError < StandardError; end @@ -90,6 +90,7 @@ module Redact block_given? ? (yield c) : c end + protected def to_eet_name "Edje_File" end @@ -123,12 +124,14 @@ module Redact @value = value.to_str.dup.freeze end + protected def to_eet_name "Edje_Data" end end class FontDirectory < Array # :nodoc: + protected def to_eet_name "Edje_Font_Directory" end @@ -142,9 +145,10 @@ module Redact attr_reader :filename def initialize(filename) - @filename = filename.to_str.dup.freeze + @filename = find_font(filename.to_str).freeze end + protected def to_eet_name "Edje_Font_Directory_Entry" end @@ -152,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: @@ -161,6 +175,7 @@ module Redact entry.id = size - 1 end + protected def to_eet_name "Edje_Image_Directory" end @@ -174,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 @@ -191,6 +206,7 @@ module Redact end end + protected def to_eet_name "Edje_Image_Directory_Entry" end @@ -201,9 +217,20 @@ 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: + protected def to_eet_name "Edje_Part_Collection_Directory" end @@ -219,6 +246,7 @@ module Redact @id = col.id end + protected def to_eet_name "Edje_Part_Collection_Directory_Entry" end @@ -230,8 +258,8 @@ module Redact end class Collection - attr_reader :name, :id, :data, :min, :max, :parts, :programs - attr_accessor :script + attr_reader :name, :id, :data, :min, :max, :parts, :programs, + :script def initialize(name, id) @name = name.to_str.dup.freeze @@ -247,6 +275,10 @@ module Redact @script = nil end + def script=(v) + @script = v.to_str.dup + end + def part(name, type = :invalid) # :yields: part p = @parts[name] if p.nil? @@ -261,7 +293,7 @@ module Redact ImagePart else raise(ArgumentError, - "invalid program type - #{type.to_s}") + "invalid part type - #{type.to_s}") end p = klass.new(self, @parts.size, name) @@ -322,6 +354,7 @@ module Redact end end + protected def to_eet_name "Edje_Part_Collection" end