Class: Shellfie::HeadlessThemeRegistry
- Inherits:
-
Object
- Object
- Shellfie::HeadlessThemeRegistry
- Defined in:
- lib/shellfie/headless_theme_registry.rb
Constant Summary collapse
- VARIANTS =
{ "plain" => { window_decoration: { title_bar_height: 0, corner_radius: 0, button_size: 0, button_spacing: 0 }, button_colors: [], button_style: :none, buttons_position: :left, title_alignment: :left } }.freeze
Class Method Summary collapse
Class Method Details
.available_variants ⇒ Object
37 38 39 |
# File 'lib/shellfie/headless_theme_registry.rb', line 37 def available_variants VARIANTS.keys end |
.build(theme, variant: "plain") ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/shellfie/headless_theme_registry.rb', line 23 def build(theme, variant: "plain") settings = VARIANTS.fetch(variant) ThemeData.new( name: theme.name, colors: theme.colors, window_decoration: ThemeData.deep_merge(theme.window_decoration, settings[:window_decoration]), button_colors: settings[:button_colors], buttons_position: settings[:buttons_position], button_style: settings[:button_style], font: theme.font, title_alignment: settings[:title_alignment] ) end |