Class: Cyberweb::Objectified::HtmlTags::Select

Inherits:
Base
  • Object
show all
Defined in:
lib/cyberweb/objectified/html_tags/select.rb

Overview

Cyberweb::Objectified::HtmlTags::Select

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#+, #add_css_rules, #add_this_to_javascript, #add_to_pre_content, #append_css_manager, #append_onto_the_css_class, #append_onto_the_result, #append_the_content, #append_this_to_the_css_style, #attach, #batch_append_css_class_then_the_ID_and_then_the_css_style, #bblack1, #bblack2, #bblack3, #bblack4, #bblack5, #bblack6, #center, #consider_adding_the_pre_content, #consider_adding_the_script_entry_from_the_internal_hash, #content?, #content_as_string, #css_class?, #css_manager, #css_style?, #display, #do_not_load_lazily, #ee, #enable_lazy_loading, #evaluate_this_block, #font=, #id?, #is_an_objectified_html_tag?, #is_draggable?, #lazy_loading?, #make_bold, #modify_the_css_style_based_on_the_alignment, #name=, #name?, #on_click_select, #on_clicked, #on_hover_colour, #on_hover_pulse_increase, #on_mouse_hover, #pad, #pad10px, #pad1px, #pad2px, #pad3px, #pad4px, #pad5px, #pad6px, #pad7px, #pad8px, #pad9px, #path_to_internal_javascript_file, #pre_content?, #raw_result?, #report, report, #report?, #reset_the_content, #reset_the_result, #return_appendable_content, #return_css_class, #return_css_style, #return_javascript, #script?, #set_content, #set_css_class, #set_css_style, #set_id, #set_is_draggable, #set_title, #set_width, #title?, #to_str, #try_to_register_this_tag, #use_this_on_click_function=, #very_light_yellowish_background, #width_height, #yellow_background

Methods included from BaseModule

#attach_these_constants, #base_dir?, #beautiful_url, #cd, #create_the_internal_hash, #doctype?, #ee, #ensure_main_encoding, #esystem, #html_templates, #initialize_the_config_if_the_config_hash_is_empty, #internal_hash?, #log_dir?, #no_http, #random_alphabet_characters, #rarrow?, #rds, #remove_comments_from_this_string, #remove_numbers, #require_the_html_templates, #require_these, #return_file_size_in_kb_of, #return_html_comment, #ruby_sitelib_dir?, #sanitize_this_id, #server_base_directory?, #string_remote_image, #today?, #try_to_require_rack, #try_to_require_the_open_gem, #write_what_into

Methods included from BaseModule::ContentType

#content_type_is_html, #content_type_is_jpeg, #content_type_is_json, #content_type_is_plain_text

Methods included from BaseModule::CommandlineArguments

#append_to_the_commandline_arguments, #commandline_arguments?, #first_argument?, #parse_these_commandline_arguments, #second_argument?, #set_commandline_arguments

Methods included from BaseModule::Colours

#all_html_colours, #lightgreen, #rev, #sdir, #sfancy, #sfile, #simp, #steelblue, #tomato

Constructor Details

#initialize(use_this_text = '', optional_css_class = nil, optional_id = nil, optional_css_style = nil) ⇒ Select

#

initialize

Usage example:

Cyberweb::Objectified::HtmlTags::Select.new(i)
#


67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 67

def initialize(
    use_this_text      = '',
    optional_css_class = nil,
    optional_id        = nil,
    optional_css_style = nil
  )
  try_to_register_this_tag(self)
  reset
  use_this_text = use_this_text.join(' ').strip if use_this_text.is_a? Array
  set_content(use_this_text)
  set_CSS_class(optional_css_class) if optional_css_class
  set_id(optional_id)               if optional_id
  set_CSS_style(optional_css_style) if optional_css_style
end

Class Method Details

.clearObject

#

Cyberweb::Objectified::HtmlTags::Select.clear

#


41
42
43
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 41

def self.clear
  Select.set_css_class('')
end

.css_class?Boolean

#

Cyberweb::Objectified::HtmlTags::Select.css_class?

#

Returns:

  • (Boolean)


55
56
57
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 55

def self.css_class?
  @css_class
end

.reset_css_classObject

#

Cyberweb::Objectified::HtmlTags::Select.reset_css_class

#


34
35
36
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 34

def self.reset_css_class
  @css_class = nil
end

.set_css_class(i = DEFAULT_CSS_CLASS) ⇒ Object

#

Cyberweb::Objectified::HtmlTags::Select.set_css_class

#


48
49
50
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 48

def self.set_css_class(i = DEFAULT_CSS_CLASS)
  @css_class = i
end

Instance Method Details

#onchange=(i) ⇒ Object

#

onchange=

This assumes that a javascript function is called. If the last character is not ‘)’ then we will append ‘()’.

Usage example:

combobox.onchange = 'foobar()'
#


100
101
102
103
104
105
106
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 100

def onchange=(i)
  i = i.to_s.dup
  unless i.end_with? ')'
    i << '()'
  end
  @internal_hash[:onchange] = i
end

#rebuild_the_resultObject

#

rebuild_the_result

#


111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 111

def rebuild_the_result
  reset_the_result
  consider_adding_the_pre_content
  append_onto_the_result '<select'
  batch_append_css_class_then_the_ID_and_then_the_css_style
  # ========================================================================= #
  # === :name
  # ========================================================================= #
  if @internal_hash.has_key? :name
    append_onto_the_result ' name="'+@internal_hash[:name].to_s+'"'
  end
  # ========================================================================= #
  # === :onchange
  # ========================================================================= #
  if @internal_hash.has_key? :onchange
    append_onto_the_result ' onchange="'+@internal_hash[:onchange].to_s+'"'
  end
  append_onto_the_result ">\n"
  content = content?
  if content.is_a? Array
    content.each {|entry|
      _ = '  <option'.dup
      _ << ' value="'+entry.to_s+'">' # .downcase
      _ << entry.to_s
      _ << '</option>'
      _ << "\n"
      append_onto_the_result _
    }
  end
  append_onto_the_result "</select>\n"
  return raw_result?
end

#resetObject

#

reset

#


85
86
87
# File 'lib/cyberweb/objectified/html_tags/select.rb', line 85

def reset
  super()
end