Class: ThemeSettingsManager::Enum

Inherits:
ThemeSettingsManager show all
Defined in:
lib/theme_settings_manager.rb

Instance Attribute Summary

Attributes inherited from ThemeSettingsManager

#default, #name, #theme

Instance Method Summary collapse

Methods inherited from ThemeSettingsManager

create, #create_record!, #db_record, #description, #ensure_is_valid_value!, #has_max?, #has_min?, #has_record?, #initialize, #invalid_value_error_message, #requests_refresh?, #type, #type_name, types, #value=

Constructor Details

This class inherits a constructor from ThemeSettingsManager

Instance Method Details

#choicesObject



180
181
182
# File 'lib/theme_settings_manager.rb', line 180

def choices
  @opts[:choices]
end

#is_valid_value?(new_value) ⇒ Boolean

Returns:

  • (Boolean)


176
177
178
# File 'lib/theme_settings_manager.rb', line 176

def is_valid_value?(new_value)
  choices.include?(new_value) || choices.map(&:to_s).include?(new_value)
end

#valueObject



170
171
172
173
174
# File 'lib/theme_settings_manager.rb', line 170

def value
  val = super
  match = choices.find { |choice| choice == val || choice.to_s == val }
  match || val
end