Module: SexyForm::Themes

Defined in:
lib/sexy_form/themes.rb,
lib/sexy_form/themes/default.rb,
lib/sexy_form/themes/milligram.rb,
lib/sexy_form/themes/base_theme.rb,
lib/sexy_form/themes/foundation.rb,
lib/sexy_form/themes/materialize.rb,
lib/sexy_form/themes/bulma_vertical.rb,
lib/sexy_form/themes/bulma_horizontal.rb,
lib/sexy_form/themes/bootstrap_2_inline.rb,
lib/sexy_form/themes/bootstrap_3_inline.rb,
lib/sexy_form/themes/bootstrap_4_inline.rb,
lib/sexy_form/themes/semantic_ui_inline.rb,
lib/sexy_form/themes/bootstrap_2_vertical.rb,
lib/sexy_form/themes/bootstrap_3_vertical.rb,
lib/sexy_form/themes/bootstrap_4_vertical.rb,
lib/sexy_form/themes/semantic_ui_vertical.rb,
lib/sexy_form/themes/bootstrap_2_horizontal.rb,
lib/sexy_form/themes/bootstrap_3_horizontal.rb,
lib/sexy_form/themes/bootstrap_4_horizontal.rb

Defined Under Namespace

Classes: BaseTheme, Bootstrap2Horizontal, Bootstrap2Inline, Bootstrap2Vertical, Bootstrap3Horizontal, Bootstrap3Inline, Bootstrap3Vertical, Bootstrap4Horizontal, Bootstrap4Inline, Bootstrap4Vertical, BulmaHorizontal, BulmaVertical, Default, Foundation, Materialize, Milligram, SemanticUIInline, SemanticUIVertical

Class Method Summary collapse

Class Method Details

.classesObject



4
5
6
# File 'lib/sexy_form/themes.rb', line 4

def self.classes
  ObjectSpace.each_object(Class).select{|klass| klass < SexyForm::Themes::BaseTheme }.sort_by{|x| x.name}
end

.from_name(name) ⇒ Object

Raises:

  • (ArgumentError)


8
9
10
11
12
13
14
15
16
17
18
# File 'lib/sexy_form/themes.rb', line 8

def self.from_name(name)
  name = name.to_s

  classes.each do |klass|
    if klass.theme_name == name
      return klass
    end
  end

  raise ArgumentError.new("SexyForm theme `#{name}` was not found")
end