Class: Cyberweb::Objectified::HtmlTags::Button
- Inherits:
-
Base
- Object
- Base
- Cyberweb::Objectified::HtmlTags::Button
show all
- Defined in:
- lib/cyberweb/objectified/html_tags/button.rb
Overview
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
#content_type_is_html, #content_type_is_jpeg, #content_type_is_json, #content_type_is_plain_text
#append_to_the_commandline_arguments, #commandline_arguments?, #first_argument?, #parse_these_commandline_arguments, #second_argument?, #set_commandline_arguments
#all_html_colours, #lightgreen, #rev, #sdir, #sfancy, #sfile, #simp, #steelblue, #tomato
Constructor Details
#initialize(use_this_text = '', optional_css_class = Button.css_class?, optional_id = nil, optional_css_style = nil) ⇒ Button
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
# File 'lib/cyberweb/objectified/html_tags/button.rb', line 62
def initialize(
use_this_text = '',
optional_css_class = Button.css_class?,
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)
if optional_css_class
if optional_css_class.is_a?(Hash)
_ = optional_css_class if _.has_key? :id
optional_id = _.delete(:id)
end
if _.has_key? :css_style
optional_css_style = _.delete(:css_style)
end
if _.empty?
optional_css_class = Button.css_class?
end
end
set_CSS_class(optional_css_class)
end
set_id(optional_id) if optional_id
set_CSS_style(optional_css_style) if optional_css_style
end
|
Class Method Details
.css_class? ⇒ Boolean
49
50
51
|
# File 'lib/cyberweb/objectified/html_tags/button.rb', line 49
def self.css_class?
@css_class
end
|
.reset_css_class ⇒ Object
28
29
30
|
# File 'lib/cyberweb/objectified/html_tags/button.rb', line 28
def self.reset_css_class
@css_class = nil
end
|
.set_css_class(i = DEFAULT_CSS_CLASS) ⇒ Object
42
43
44
|
# File 'lib/cyberweb/objectified/html_tags/button.rb', line 42
def self.set_css_class(i = DEFAULT_CSS_CLASS)
@css_class = i
end
|
Instance Method Details
#hint=(i = nil) ⇒ Object
#
hint=
Oddly enough, a button responds to a hint via “title”, such as is demonstrated in the following example:
<button title="Hello World!">Sample Button</button>
#
123
124
125
|
# File 'lib/cyberweb/objectified/html_tags/button.rb', line 123
def hint=(i = nil) @internal_hash[:title] = i
end
|
#rebuild_the_result ⇒ Object
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
|
# File 'lib/cyberweb/objectified/html_tags/button.rb', line 130
def rebuild_the_result
reset_the_result
consider_adding_the_pre_content
consider_adding_the_script_entry_from_the_internal_hash
append_onto_the_result '<button'
if @internal_hash.has_key?(:onclick) and @internal_hash[:onclick]
append_onto_the_result ' onclick="'+@internal_hash[:onclick].to_s+'"'
end
batch_append_css_class_then_the_ID_and_then_the_css_style
if @internal_hash.has_key? :name
append_onto_the_result ' name="'+@internal_hash[:name].to_s+'"'
end
if @internal_hash[:on_clicked] and
(@internal_hash[:on_clicked].is_a?(String) or
@internal_hash[:on_clicked].is_a?(Symbol)
)
append_this = ' onclick="'+@internal_hash[:on_clicked].to_s.dup+'('
if @internal_hash[:arguments_to_the_on_clicked_function] and
!@internal_hash[:arguments_to_the_on_clicked_function].empty?
append_this << @internal_hash[:arguments_to_the_on_clicked_function].join
end
append_this << ')"'
append_onto_the_result append_this
end
append_onto_the_result ">\n"
append_onto_the_result content?.to_s
append_onto_the_result "\n</button>\n"
return raw_result?
end
|
106
107
108
109
110
111
112
|
# File 'lib/cyberweb/objectified/html_tags/button.rb', line 106
def reset
super()
@internal_hash[:title] = nil
end
|