lib/rubygoo/label.rb in rubygoo-0.0.6 vs lib/rubygoo/label.rb in rubygoo-0.0.7
- old
+ new
@@ -1,28 +1,31 @@
require 'publisher'
module Rubygoo
class Label < Widget
def initialize(text, opts={})
+ @font_size = opts[:font_size]
super opts
@text = text
end
def added()
font = theme_property :font
- @font_size = theme_property :font_size
+ @font_size ||= theme_property :font_size
@color = theme_property :color
@bg_color = theme_property :bg_color
@focus_color = theme_property :focus_color
@border_color = theme_property :border_color
- @font_file = File.join(@app.theme_dir,font)
+ @font_file ||= File.join(@app.theme_dir,font)
set_text @text
end
def set_text(text)
@text = text
@rendered_text = @app.renderer.render_text @text, @font_file, @font_size, @color
- @rect = Rect.new [@x,@y,@rendered_text.width+@x_pad,@rendered_text.height+@y_pad]
+ @w = @rendered_text.width
+ @h = @rendered_text.height
+ update_rect
end
def draw(adapter)
x1 = @rect[0]
y1 = @rect[1]