Class: HTMLPage::Figure
- Inherits:
-
Object
- Object
- HTMLPage::Figure
- Defined in:
- lib/html_page.rb
Overview
Manages figure enumeration and references.
For example, reference a defined figure:
<p>This is demonstrated in <%= figure.ref :my_fig_name %>.
...
<figure>
<img>
<figcaption><%= figure.name :my_fig_name %></figcaption>
</figure>
Instance Method Summary collapse
-
#initialize ⇒ Figure
constructor
A new instance of Figure.
- #name(figname) ⇒ Object
- #ref(figname) ⇒ Object
Constructor Details
#initialize ⇒ Figure
Returns a new instance of Figure.
170 171 172 173 |
# File 'lib/html_page.rb', line 170 def initialize @figures = Hash.new {|hsh, name| hsh[name] = hsh.size + 1 } @names = [] # permits name/ref to be called in any order end |
Instance Method Details
#name(figname) ⇒ Object
175 176 177 178 179 180 181 182 |
# File 'lib/html_page.rb', line 175 def name figname if @names.include? figname raise "Figure name `#{figname}' already defined." else @names << figname end "<span class='figname'>Figure #{@figures[figname]}.</span>" end |
#ref(figname) ⇒ Object
184 185 186 |
# File 'lib/html_page.rb', line 184 def ref figname "<span class='figref'>Figure #{@figures[figname]}</span>" end |