class TokyoMetro::App::Renderer::Icon::FontAwesome

Public Class Methods

new( request , icon_name , size = 1 , spin: nil , pulse: nil , inverse: nil ) click to toggle source
Calls superclass method
# File lib/tokyo_metro/app/renderer/icon/font_awesome.rb, line 3
def initialize( request , icon_name , size = 1 , spin: nil , pulse: nil , inverse: nil )
  raise if spin and pulse
  raise "Error" if ( spin or pulse ) and !( [ "circle-o-notch" , "cog" , "gear" , "refresh" , "spinner" ].include?( icon_name ) )
  super( request )
  @icon_name = icon_name
  @size = size
  @spin = spin
  @pulse = pulse
  @inverse = inverse
end

Public Instance Methods

render() click to toggle source
# File lib/tokyo_metro/app/renderer/icon/font_awesome.rb, line 14
  def render
    h.render inline: <<-HAML , type: :haml , locals: h_locals
= content_tag( :i , "" , class: classes )
    HAML
  end

Private Instance Methods

classes() click to toggle source
# File lib/tokyo_metro/app/renderer/icon/font_awesome.rb, line 22
def classes
  ary = [ :fa , "fa-#{ @icon_name }" , "fa-#{ @size }x" ]

  if @spin
    ary << [ "fa-spin" ]
  elsif @pulse
    ary << [ "fa-pulse" ]
  end

  if @inverse
    ary << [ "fa-inverse" ]
  end

  ary
end
h_locals() click to toggle source
Calls superclass method
# File lib/tokyo_metro/app/renderer/icon/font_awesome.rb, line 38
def h_locals
  super().merge({
    classes: classes
  })
end