def font=(font)
      raise TypeError unless font.is_a? Gosu::Font
      @font = font
      recalc
      font
    end
def font=(font)
      raise TypeError unless font.is_a? Gosu::Font
      @font = font
      recalc
      font
    end
@param [Element, nil] parent

 @option options [Number] :x (0)
 @option options [Number] :y (0)
 @option options [Number] :z (0)

 @option options [Number] :width (auto)
 @option options [Number] :min_width (value of :width option)
 @option options [Number] :max_width (value of :width option)

 @option options [Number] :height (auto)
 @option options [Number] :min_height (value of :height option)
 @option options [Number] :max_height (value of :height option)

 @option options [String] :tip ('') Tool-tip text
 @option options [String, :default] :font_name (:default, which resolves as the default Gosu font)
 @option options [String] :font_height (30)
 @option options [Gosu::Font] :font Use this instead of :font_name and :font_height

 @option options [Gosu::Color] :background_color (transparent)
 @option options [Gosu::Color] :border_color (transparent)

 @option options [Boolean] :enabled (true)

 @option options [Number] :padding (4)
 @option options [Number] :padding_h (:padding option)
 @option options [Number] :padding_v (:padding option)
 @option options [Number] :padding_top (:padding_v option)
 @option options [Number] :padding_right (:padding_h option)
 @option options [Number] :padding_bottom (:padding_v option)
 @option options [Number] :padding_left (:padding_h option)

 @option options [Symbol] :align Align both horizontally and vertically. One of :center, :fill or [<align_v>, <align_h>] such as [:top, :right].
 @option options [Symbol] :align_h (value or :align else :left) One of :left, :center, :right :fill
 @option options [Symbol] :align_v (value of :align else :top) One of :top, :center, :bottom, :fill
 @yield instance_methods_eval with respect to self.