X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=lib%2Fredact%2Fpart.rb;h=66bc43918ae300ebf3f5794186fce86b4c3f9f83;hb=49c2fbf248e6e1d4b35cfbc96fca0efb38423d80;hp=692a48793d757ab87d3a1c44ece009ed61a2be81;hpb=cd7f31e07365f2ba92661e57029d0c0648e73319;p=redact.git diff --git a/lib/redact/part.rb b/lib/redact/part.rb index 692a487..66bc439 100644 --- a/lib/redact/part.rb +++ b/lib/redact/part.rb @@ -1,5 +1,5 @@ #-- -# $Id: part.rb 69 2005-09-19 20:17:07Z tilman $ +# $Id: part.rb 77 2006-07-28 17:30:51Z tilman $ # # Copyright (c) 2005 Tilman Sauerbeck (tilman at code-monkey de) # @@ -245,6 +245,20 @@ module Redact @color_class = "" end + def inherit(other) + unless other.is_a?(Description) + raise(ArgumentError, "Cannot inherit from description") + end + + prot = ["@name", "@value"] + + (instance_variables - prot).each do |v| + n = other.instance_variable_get(v.intern) + n = n.dup rescue n + instance_variable_set(v.intern, n) + end + end + def visible=(v) @visible = (v == true) end @@ -486,19 +500,19 @@ module Redact @fill_smooth = (v == true) end - def fill_pos_rel=(x, y) + def set_fill_pos_rel(x, y) @fill_pos_rel = [x.to_f, y.to_f] end - def fill_pos_abs=(x, y) + def set_fill_pos_abs(x, y) @fill_pos_abs = [x.to_i, y.to_i] end - def fill_rel=(x, y) + def set_fill_rel(x, y) @fill_rel = [x.to_f, y.to_f] end - def fill_abs=(x, y) + def set_fill_abs(x, y) @fill_abs = [x.to_i, y.to_i] end