Class: TodoInput

Inherits:
Object
  • Object
show all
Includes:
Glimmer::Web::Component
Defined in:
lib/glimmer-dsl-web/samples/regular/todo_mvc/views/todo_input.rb

Overview

Superclass for NewTodoInput and EditTodoInput with common styles

Direct Known Subclasses

EditTodoInput, NewTodoInput

Constant Summary

Constants included from Glimmer::Web::Component

Glimmer::Web::Component::ADD_COMPONENT_KEYWORDS_UPON_INHERITANCE

Instance Attribute Summary

Attributes included from Glimmer::Web::Component

#args, #component_style, #markup_root, #options, #parent, #style_block

Class Method Summary collapse

Methods included from Glimmer::Web::Component

add_component, add_component_keyword_to_classes_map_for, add_component_style, #add_observer, any_component?, any_component_style?, #attribute_setter, #bind_content, body_components, #can_add_observer?, #can_handle_observation_request?, component_class_to_components_map, component_count, component_keyword_to_classes_map, component_styles, components, #content, #data_bind, for, #get_attribute, #handle_observation_request, #has_attribute?, #has_instance_method?, head_components, included, #initialize, interpretation_stack, keywords_for_class, #local_respond_to?, #method_missing, #observer_registrations, #post_add_content, #post_initialize_child, #remove, remove_all_components, remove_component, remove_component_style, #render, reset_component_keyword_to_classes_map, #respond_to_missing?, #set_attribute

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Glimmer::Web::Component

Class Method Details

.todo_input_stylesObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/glimmer-dsl-web/samples/regular/todo_mvc/views/todo_input.rb', line 6

def todo_input_styles
  rule(".#{component_element_class}") {
    position 'relative'
    margin '0'
    width '100%'
    font_size '24px'
    font_family 'inherit'
    font_weight 'inherit'
    line_height '1.4em'
    color 'inherit'
    padding '6px'
    border '1px solid #999'
    box_shadow 'inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2)'
    box_sizing 'border-box'
    _webkit_font_smoothing 'antialiased'
  }
  
  rule(".#{component_element_class}::selection") {
    background 'red'
  }
  
  rule(".#{component_element_class}:focus") {
    box_shadow '0 0 2px 2px #cf7d7d'
    outline '0'
  }
end