wee 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (157) hide show
  1. data/ChangeLog +132 -0
  2. data/INSTALL +13 -3
  3. data/README +3 -3
  4. data/Rakefile +5 -1
  5. data/bin/wee +100 -0
  6. data/doc/rdoc/classes/Array.html +12 -12
  7. data/doc/rdoc/classes/Cache/StorageCache.html +38 -38
  8. data/doc/rdoc/classes/Cache/Strategy/CapacityBounded.html +30 -30
  9. data/doc/rdoc/classes/Cache/Strategy/LFU.html +24 -24
  10. data/doc/rdoc/classes/Cache/Strategy/LRU.html +24 -24
  11. data/doc/rdoc/classes/Cache/Strategy/Unbounded.html +24 -24
  12. data/doc/rdoc/classes/Enumerable.html +6 -6
  13. data/doc/rdoc/classes/Main.html +265 -0
  14. data/doc/rdoc/classes/Object.html +12 -12
  15. data/doc/rdoc/classes/OgApplication.html +2 -2
  16. data/doc/rdoc/classes/OgScaffolder.html +444 -64
  17. data/doc/rdoc/classes/OgScaffolder/Editor.html +490 -0
  18. data/doc/rdoc/classes/OgSession.html +4 -4
  19. data/doc/rdoc/classes/Recipe.html +113 -0
  20. data/doc/rdoc/classes/String.html +12 -12
  21. data/doc/rdoc/classes/Struct.html +12 -12
  22. data/doc/rdoc/classes/Wee.html +10 -1
  23. data/doc/rdoc/classes/Wee/AnswerDecoration.html +9 -9
  24. data/doc/rdoc/classes/Wee/Application.html +48 -47
  25. data/doc/rdoc/classes/Wee/Brush.html +19 -23
  26. data/doc/rdoc/classes/Wee/Brush/AnchorTag.html +17 -14
  27. data/doc/rdoc/classes/Wee/Brush/FileUploadTag.html +20 -14
  28. data/doc/rdoc/classes/Wee/Brush/FormTag.html +25 -21
  29. data/doc/rdoc/classes/Wee/Brush/GenericEncodedTextBrush.html +12 -12
  30. data/doc/rdoc/classes/Wee/Brush/GenericSingleTagBrush.html +7 -7
  31. data/doc/rdoc/classes/Wee/Brush/GenericTagBrush.html +234 -100
  32. data/doc/rdoc/classes/Wee/Brush/GenericTextBrush.html +12 -12
  33. data/doc/rdoc/classes/Wee/Brush/ImageButtonTag.html +28 -22
  34. data/doc/rdoc/classes/Wee/Brush/ImageTag.html +23 -24
  35. data/doc/rdoc/classes/Wee/Brush/InputTag.html +14 -14
  36. data/doc/rdoc/classes/Wee/Brush/JavascriptTag.html +7 -7
  37. data/doc/rdoc/classes/Wee/Brush/Page.html +14 -14
  38. data/doc/rdoc/classes/Wee/Brush/SelectListTag.html +33 -57
  39. data/doc/rdoc/classes/Wee/Brush/SelectListTag/SelectListCallback.html +154 -0
  40. data/doc/rdoc/classes/Wee/Brush/SelectOptionTag.html +7 -7
  41. data/doc/rdoc/classes/Wee/Brush/SubmitButtonTag.html +20 -14
  42. data/doc/rdoc/classes/Wee/Brush/TableDataTag.html +14 -14
  43. data/doc/rdoc/classes/Wee/Brush/TableHeaderTag.html +7 -7
  44. data/doc/rdoc/classes/Wee/Brush/TableRowTag.html +42 -42
  45. data/doc/rdoc/classes/Wee/Brush/TableTag.html +7 -7
  46. data/doc/rdoc/classes/Wee/Brush/TextAreaTag.html +27 -21
  47. data/doc/rdoc/classes/Wee/Brush/TextInputTag.html +20 -14
  48. data/doc/rdoc/classes/Wee/CallbackRegistry.html +64 -36
  49. data/doc/rdoc/classes/Wee/CallbackStream.html +21 -21
  50. data/doc/rdoc/classes/Wee/Canvas.html +24 -24
  51. data/doc/rdoc/classes/Wee/Component.html +179 -151
  52. data/doc/rdoc/classes/Wee/Component/OnAnswer.html +12 -12
  53. data/doc/rdoc/classes/Wee/Decoration.html +42 -42
  54. data/doc/rdoc/classes/Wee/Delegate.html +27 -27
  55. data/doc/rdoc/classes/Wee/ErrorResponse.html +14 -14
  56. data/doc/rdoc/classes/Wee/FormDecoration.html +6 -6
  57. data/doc/rdoc/classes/Wee/GenericResponse.html +7 -7
  58. data/doc/rdoc/classes/Wee/HtmlCanvas.html +326 -219
  59. data/doc/rdoc/classes/Wee/HtmlWriter.html +40 -40
  60. data/doc/rdoc/classes/Wee/LiteralMethodCallback.html +19 -19
  61. data/doc/rdoc/classes/Wee/Md5IdGenerator.html +181 -0
  62. data/doc/rdoc/classes/Wee/MessageBox.html +12 -12
  63. data/doc/rdoc/classes/Wee/PageDecoration.html +18 -18
  64. data/doc/rdoc/classes/Wee/PagelessApplication.html +152 -0
  65. data/doc/rdoc/classes/Wee/PagelessRequest.html +177 -0
  66. data/doc/rdoc/classes/Wee/PagelessSession.html +320 -0
  67. data/doc/rdoc/classes/Wee/Presenter.html +145 -89
  68. data/doc/rdoc/classes/Wee/RedirectResponse.html +7 -7
  69. data/doc/rdoc/classes/Wee/RefreshResponse.html +7 -7
  70. data/doc/rdoc/classes/Wee/Request.html +116 -50
  71. data/doc/rdoc/classes/Wee/RequestHandler.html +31 -31
  72. data/doc/rdoc/classes/Wee/Response.html +76 -28
  73. data/doc/rdoc/classes/Wee/Session.html +129 -506
  74. data/doc/rdoc/classes/Wee/SimpleIdGenerator.html +22 -40
  75. data/doc/rdoc/classes/Wee/Snapshot.html +19 -19
  76. data/doc/rdoc/classes/Wee/Utils.html +70 -17
  77. data/doc/rdoc/classes/Wee/Utils/LRUCache.html +6 -6
  78. data/doc/rdoc/classes/Wee/ValueHolder.html +18 -18
  79. data/doc/rdoc/classes/Wee/WEBrickAdaptor.html +82 -49
  80. data/doc/rdoc/classes/Wee/WrapperDecoration.html +6 -6
  81. data/doc/rdoc/created.rid +1 -1
  82. data/doc/rdoc/files/INSTALL.html +17 -5
  83. data/doc/rdoc/files/README.html +9 -11
  84. data/doc/rdoc/files/lib/wee/adaptors/webrick_rb.html +1 -1
  85. data/doc/rdoc/files/lib/wee/application_rb.html +1 -1
  86. data/doc/rdoc/files/lib/wee/components/page_decoration_rb.html +1 -1
  87. data/doc/rdoc/files/lib/wee/continuation/session_rb.html +1 -3
  88. data/doc/rdoc/files/lib/wee/core/callback_rb.html +1 -1
  89. data/doc/rdoc/files/lib/wee/core/component_rb.html +1 -1
  90. data/doc/rdoc/files/lib/wee/core_rb.html +3 -3
  91. data/doc/rdoc/files/lib/wee/databases/og/application_rb.html +101 -0
  92. data/doc/rdoc/files/lib/wee/databases/og/old_scaffolder_rb.html +101 -0
  93. data/doc/rdoc/files/lib/wee/databases/og/scaffolder_rb.html +108 -0
  94. data/doc/rdoc/files/lib/wee/databases/og/session_rb.html +101 -0
  95. data/doc/rdoc/files/lib/wee/databases/og_rb.html +4 -1
  96. data/doc/rdoc/files/lib/wee/idgen/md5_rb.html +115 -0
  97. data/doc/rdoc/files/lib/wee/idgen/simple_rb.html +107 -0
  98. data/doc/rdoc/files/lib/wee/pageless/application_rb.html +101 -0
  99. data/doc/rdoc/files/lib/wee/pageless/request_rb.html +101 -0
  100. data/doc/rdoc/files/lib/wee/pageless/session_rb.html +108 -0
  101. data/doc/rdoc/files/lib/wee/pageless_rb.html +110 -0
  102. data/doc/rdoc/files/lib/wee/renderer/html/brushes_rb.html +1 -1
  103. data/doc/rdoc/files/lib/wee/renderer/html/canvas_rb.html +8 -1
  104. data/doc/rdoc/files/lib/wee/request_rb.html +1 -1
  105. data/doc/rdoc/files/lib/wee/response_rb.html +1 -1
  106. data/doc/rdoc/files/lib/wee/session_rb.html +1 -1
  107. data/doc/rdoc/files/lib/wee/skeleton/og/components/main_rb.html +101 -0
  108. data/doc/rdoc/files/lib/wee/skeleton/og/conf/db_rb.html +114 -0
  109. data/doc/rdoc/files/lib/wee/skeleton/og/models/recipe_rb.html +101 -0
  110. data/doc/rdoc/files/lib/wee/skeleton/og/run_rb.html +115 -0
  111. data/doc/rdoc/files/lib/wee/skeleton/simple/components/main_rb.html +101 -0
  112. data/doc/rdoc/files/lib/wee/skeleton/simple/run_rb.html +111 -0
  113. data/doc/rdoc/files/lib/wee/template_rb.html +101 -0
  114. data/doc/rdoc/files/lib/wee/utils/autoreload_rb.html +1 -1
  115. data/doc/rdoc/files/lib/wee/utils/helper_rb.html +1 -1
  116. data/doc/rdoc/files/lib/wee_rb.html +4 -2
  117. data/doc/rdoc/fr_class_index.html +8 -4
  118. data/doc/rdoc/fr_file_index.html +17 -1
  119. data/doc/rdoc/fr_method_index.html +312 -267
  120. data/examples/live-update.rb +1 -1
  121. data/install.rb +14 -0
  122. data/lib/wee.rb +6 -2
  123. data/lib/wee/adaptors/webrick.rb +17 -5
  124. data/lib/wee/application.rb +2 -1
  125. data/lib/wee/continuation/session.rb +1 -146
  126. data/lib/wee/core/callback.rb +11 -5
  127. data/lib/wee/core/component.rb +14 -10
  128. data/lib/wee/databases/og.rb +3 -113
  129. data/lib/wee/databases/og/application.rb +3 -0
  130. data/lib/wee/databases/og/old_scaffolder.rb +98 -0
  131. data/lib/wee/databases/og/scaffolder.rb +174 -0
  132. data/lib/wee/databases/og/session.rb +9 -0
  133. data/lib/wee/idgen/md5.rb +21 -0
  134. data/lib/wee/{idgen.rb → idgen/simple.rb} +2 -4
  135. data/lib/wee/pageless.rb +3 -0
  136. data/lib/wee/pageless/application.rb +9 -0
  137. data/lib/wee/pageless/request.rb +15 -0
  138. data/lib/wee/pageless/session.rb +89 -0
  139. data/lib/wee/renderer/html/brushes.rb +100 -115
  140. data/lib/wee/renderer/html/canvas.rb +32 -2
  141. data/lib/wee/request.rb +36 -24
  142. data/lib/wee/response.rb +8 -1
  143. data/lib/wee/session.rb +13 -7
  144. data/lib/wee/skeleton/og/README +38 -0
  145. data/lib/wee/skeleton/og/components/main.rb +16 -0
  146. data/lib/wee/skeleton/og/conf/db.rb +8 -0
  147. data/lib/wee/skeleton/og/models/recipe.rb +5 -0
  148. data/lib/wee/skeleton/og/run.rb +23 -0
  149. data/lib/wee/skeleton/simple/README +32 -0
  150. data/lib/wee/skeleton/simple/components/main.rb +25 -0
  151. data/lib/wee/skeleton/simple/run.rb +12 -0
  152. data/lib/wee/template.rb +28 -0
  153. data/lib/wee/utils/autoreload.rb +29 -0
  154. data/lib/wee/utils/helper.rb +9 -5
  155. data/test/test_request.rb +4 -3
  156. data/wee.gemspec +3 -1
  157. metadata +91 -22
@@ -86,8 +86,8 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000106">new</a>&nbsp;&nbsp;
90
- <a href="#M000107">with</a>&nbsp;&nbsp;
89
+ <a href="#M000147">new</a>&nbsp;&nbsp;
90
+ <a href="#M000148">with</a>&nbsp;&nbsp;
91
91
  </div>
92
92
  </div>
93
93
 
@@ -109,19 +109,19 @@
109
109
  <div id="methods">
110
110
  <h3 class="section-bar">Public Class methods</h3>
111
111
 
112
- <div id="method-M000106" class="method-detail">
113
- <a name="M000106"></a>
112
+ <div id="method-M000147" class="method-detail">
113
+ <a name="M000147"></a>
114
114
 
115
115
  <div class="method-heading">
116
- <a href="#M000106" class="method-signature">
116
+ <a href="#M000147" class="method-signature">
117
117
  <span class="method-name">new</span><span class="method-args">(text)</span>
118
118
  </a>
119
119
  </div>
120
120
 
121
121
  <div class="method-description">
122
122
  <p><a class="source-toggle" href="#"
123
- onclick="toggleCode('M000106-source');return false;">[Source]</a></p>
124
- <div class="method-source-code" id="M000106-source">
123
+ onclick="toggleCode('M000147-source');return false;">[Source]</a></p>
124
+ <div class="method-source-code" id="M000147-source">
125
125
  <pre>
126
126
  <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 23</span>
127
127
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">text</span>)
@@ -135,19 +135,19 @@
135
135
 
136
136
  <h3 class="section-bar">Public Instance methods</h3>
137
137
 
138
- <div id="method-M000107" class="method-detail">
139
- <a name="M000107"></a>
138
+ <div id="method-M000148" class="method-detail">
139
+ <a name="M000148"></a>
140
140
 
141
141
  <div class="method-heading">
142
- <a href="#M000107" class="method-signature">
142
+ <a href="#M000148" class="method-signature">
143
143
  <span class="method-name">with</span><span class="method-args">()</span>
144
144
  </a>
145
145
  </div>
146
146
 
147
147
  <div class="method-description">
148
148
  <p><a class="source-toggle" href="#"
149
- onclick="toggleCode('M000107-source');return false;">[Source]</a></p>
150
- <div class="method-source-code" id="M000107-source">
149
+ onclick="toggleCode('M000148-source');return false;">[Source]</a></p>
150
+ <div class="method-source-code" id="M000148-source">
151
151
  <pre>
152
152
  <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 28</span>
153
153
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with</span>
@@ -85,7 +85,7 @@ Most browsers do not send the &quot;name&quot; key together with the value
85
85
  specified by &quot;value&quot;, only &quot;name.x&quot; and
86
86
  &quot;name.y&quot;. This conforms to the standard. But Firefox also sends
87
87
  &quot;name&quot;=&quot;value&quot;. This is why I raise an exception from
88
- the <a href="ImageButtonTag.html#M000137">value</a> method. Note that
88
+ the <a href="ImageButtonTag.html#M000184">value</a> method. Note that
89
89
  it&#8217;s neccessary to parse the passed form-fields and generate a
90
90
  &quot;name&quot; fields in the request, to make this image-button work.
91
91
  </p>
@@ -99,8 +99,8 @@ it&#8217;s neccessary to parse the passed form-fields and generate a
99
99
  <h3 class="section-bar">Methods</h3>
100
100
 
101
101
  <div class="name-list">
102
- <a href="#M000136">new</a>&nbsp;&nbsp;
103
- <a href="#M000137">value</a>&nbsp;&nbsp;
102
+ <a href="#M000183">new</a>&nbsp;&nbsp;
103
+ <a href="#M000184">value</a>&nbsp;&nbsp;
104
104
  </div>
105
105
  </div>
106
106
 
@@ -108,18 +108,24 @@ it&#8217;s neccessary to parse the passed form-fields and generate a
108
108
 
109
109
 
110
110
  <!-- if includes -->
111
- <div id="includes">
112
- <h3 class="section-bar">Included Modules</h3>
113
-
114
- <div id="includes-list">
115
- <span class="include-name"><a href="ActionCallbackMixin.html">Brush::ActionCallbackMixin</a></span>
116
- </div>
117
- </div>
118
111
 
119
112
  <div id="section">
120
113
 
121
114
 
122
115
 
116
+ <div id="aliases-list">
117
+ <h3 class="section-bar">External Aliases</h3>
118
+
119
+ <div class="name-list">
120
+ <table summary="aliases">
121
+ <tr class="top-aligned-row context-row">
122
+ <td class="context-item-name">__action_callback</td>
123
+ <td>-></td>
124
+ <td class="context-item-value">callback</td>
125
+ </tr>
126
+ </table>
127
+ </div>
128
+ </div>
123
129
 
124
130
 
125
131
 
@@ -129,21 +135,21 @@ it&#8217;s neccessary to parse the passed form-fields and generate a
129
135
  <div id="methods">
130
136
  <h3 class="section-bar">Public Class methods</h3>
131
137
 
132
- <div id="method-M000136" class="method-detail">
133
- <a name="M000136"></a>
138
+ <div id="method-M000183" class="method-detail">
139
+ <a name="M000183"></a>
134
140
 
135
141
  <div class="method-heading">
136
- <a href="#M000136" class="method-signature">
142
+ <a href="#M000183" class="method-signature">
137
143
  <span class="method-name">new</span><span class="method-args">()</span>
138
144
  </a>
139
145
  </div>
140
146
 
141
147
  <div class="method-description">
142
148
  <p><a class="source-toggle" href="#"
143
- onclick="toggleCode('M000136-source');return false;">[Source]</a></p>
144
- <div class="method-source-code" id="M000136-source">
149
+ onclick="toggleCode('M000183-source');return false;">[Source]</a></p>
150
+ <div class="method-source-code" id="M000183-source">
145
151
  <pre>
146
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 417</span>
152
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 401</span>
147
153
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
148
154
  <span class="ruby-keyword kw">super</span>
149
155
  <span class="ruby-identifier">type</span>(<span class="ruby-value str">'image'</span>)
@@ -155,21 +161,21 @@ it&#8217;s neccessary to parse the passed form-fields and generate a
155
161
 
156
162
  <h3 class="section-bar">Public Instance methods</h3>
157
163
 
158
- <div id="method-M000137" class="method-detail">
159
- <a name="M000137"></a>
164
+ <div id="method-M000184" class="method-detail">
165
+ <a name="M000184"></a>
160
166
 
161
167
  <div class="method-heading">
162
- <a href="#M000137" class="method-signature">
168
+ <a href="#M000184" class="method-signature">
163
169
  <span class="method-name">value</span><span class="method-args">(v)</span>
164
170
  </a>
165
171
  </div>
166
172
 
167
173
  <div class="method-description">
168
174
  <p><a class="source-toggle" href="#"
169
- onclick="toggleCode('M000137-source');return false;">[Source]</a></p>
170
- <div class="method-source-code" id="M000137-source">
175
+ onclick="toggleCode('M000184-source');return false;">[Source]</a></p>
176
+ <div class="method-source-code" id="M000184-source">
171
177
  <pre>
172
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 422</span>
178
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 408</span>
173
179
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">value</span>(<span class="ruby-identifier">v</span>)
174
180
  <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;specified value will not be used in the request&quot;</span>
175
181
  <span class="ruby-keyword kw">end</span>
@@ -86,9 +86,9 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000113">new</a>&nbsp;&nbsp;
90
- <a href="#M000112">src_for</a>&nbsp;&nbsp;
91
- <a href="#M000114">with</a>&nbsp;&nbsp;
89
+ <a href="#M000154">new</a>&nbsp;&nbsp;
90
+ <a href="#M000153">src_for</a>&nbsp;&nbsp;
91
+ <a href="#M000155">with</a>&nbsp;&nbsp;
92
92
  </div>
93
93
  </div>
94
94
 
@@ -110,21 +110,21 @@
110
110
  <div id="methods">
111
111
  <h3 class="section-bar">Public Class methods</h3>
112
112
 
113
- <div id="method-M000113" class="method-detail">
114
- <a name="M000113"></a>
113
+ <div id="method-M000154" class="method-detail">
114
+ <a name="M000154"></a>
115
115
 
116
116
  <div class="method-heading">
117
- <a href="#M000113" class="method-signature">
117
+ <a href="#M000154" class="method-signature">
118
118
  <span class="method-name">new</span><span class="method-args">()</span>
119
119
  </a>
120
120
  </div>
121
121
 
122
122
  <div class="method-description">
123
123
  <p><a class="source-toggle" href="#"
124
- onclick="toggleCode('M000113-source');return false;">[Source]</a></p>
125
- <div class="method-source-code" id="M000113-source">
124
+ onclick="toggleCode('M000154-source');return false;">[Source]</a></p>
125
+ <div class="method-source-code" id="M000154-source">
126
126
  <pre>
127
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 177</span>
127
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 201</span>
128
128
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
129
129
  <span class="ruby-keyword kw">super</span>(<span class="ruby-value str">&quot;img&quot;</span>)
130
130
  <span class="ruby-keyword kw">end</span>
@@ -135,12 +135,12 @@
135
135
 
136
136
  <h3 class="section-bar">Public Instance methods</h3>
137
137
 
138
- <div id="method-M000112" class="method-detail">
139
- <a name="M000112"></a>
138
+ <div id="method-M000153" class="method-detail">
139
+ <a name="M000153"></a>
140
140
 
141
141
  <div class="method-heading">
142
- <a href="#M000112" class="method-signature">
143
- <span class="method-name">src_for</span><span class="method-args">(s)</span>
142
+ <a href="#M000153" class="method-signature">
143
+ <span class="method-name">src_for</span><span class="method-args">(prop)</span>
144
144
  </a>
145
145
  </div>
146
146
 
@@ -150,12 +150,11 @@ This method construct the src attribute by looking up the property from the
150
150
  current component.
151
151
  </p>
152
152
  <p><a class="source-toggle" href="#"
153
- onclick="toggleCode('M000112-source');return false;">[Source]</a></p>
154
- <div class="method-source-code" id="M000112-source">
153
+ onclick="toggleCode('M000153-source');return false;">[Source]</a></p>
154
+ <div class="method-source-code" id="M000153-source">
155
155
  <pre>
156
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 170</span>
157
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">src_for</span>(<span class="ruby-identifier">s</span>)
158
- <span class="ruby-identifier">prop</span> = <span class="ruby-value str">&quot;img.&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">s</span>
156
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 195</span>
157
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">src_for</span>(<span class="ruby-identifier">prop</span>)
159
158
  <span class="ruby-identifier">val</span> = <span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">current_component</span>.<span class="ruby-identifier">lookup_property</span>(<span class="ruby-identifier">prop</span>)
160
159
  <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;no property found for: &lt;#{ prop }&gt;&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">val</span>.<span class="ruby-identifier">nil?</span>
161
160
  <span class="ruby-identifier">src</span>(<span class="ruby-identifier">val</span>)
@@ -165,21 +164,21 @@ current component.
165
164
  </div>
166
165
  </div>
167
166
 
168
- <div id="method-M000114" class="method-detail">
169
- <a name="M000114"></a>
167
+ <div id="method-M000155" class="method-detail">
168
+ <a name="M000155"></a>
170
169
 
171
170
  <div class="method-heading">
172
- <a href="#M000114" class="method-signature">
171
+ <a href="#M000155" class="method-signature">
173
172
  <span class="method-name">with</span><span class="method-args">()</span>
174
173
  </a>
175
174
  </div>
176
175
 
177
176
  <div class="method-description">
178
177
  <p><a class="source-toggle" href="#"
179
- onclick="toggleCode('M000114-source');return false;">[Source]</a></p>
180
- <div class="method-source-code" id="M000114-source">
178
+ onclick="toggleCode('M000155-source');return false;">[Source]</a></p>
179
+ <div class="method-source-code" id="M000155-source">
181
180
  <pre>
182
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 181</span>
181
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 205</span>
183
182
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with</span>
184
183
  <span class="ruby-keyword kw">super</span>
185
184
  <span class="ruby-keyword kw">end</span>
@@ -86,8 +86,8 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000145">new</a>&nbsp;&nbsp;
90
- <a href="#M000146">with</a>&nbsp;&nbsp;
89
+ <a href="#M000192">new</a>&nbsp;&nbsp;
90
+ <a href="#M000193">with</a>&nbsp;&nbsp;
91
91
  </div>
92
92
  </div>
93
93
 
@@ -109,21 +109,21 @@
109
109
  <div id="methods">
110
110
  <h3 class="section-bar">Public Class methods</h3>
111
111
 
112
- <div id="method-M000145" class="method-detail">
113
- <a name="M000145"></a>
112
+ <div id="method-M000192" class="method-detail">
113
+ <a name="M000192"></a>
114
114
 
115
115
  <div class="method-heading">
116
- <a href="#M000145" class="method-signature">
116
+ <a href="#M000192" class="method-signature">
117
117
  <span class="method-name">new</span><span class="method-args">()</span>
118
118
  </a>
119
119
  </div>
120
120
 
121
121
  <div class="method-description">
122
122
  <p><a class="source-toggle" href="#"
123
- onclick="toggleCode('M000145-source');return false;">[Source]</a></p>
124
- <div class="method-source-code" id="M000145-source">
123
+ onclick="toggleCode('M000192-source');return false;">[Source]</a></p>
124
+ <div class="method-source-code" id="M000192-source">
125
125
  <pre>
126
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 253</span>
126
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 276</span>
127
127
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
128
128
  <span class="ruby-keyword kw">super</span>(<span class="ruby-value str">'input'</span>)
129
129
  <span class="ruby-keyword kw">end</span>
@@ -134,21 +134,21 @@
134
134
 
135
135
  <h3 class="section-bar">Public Instance methods</h3>
136
136
 
137
- <div id="method-M000146" class="method-detail">
138
- <a name="M000146"></a>
137
+ <div id="method-M000193" class="method-detail">
138
+ <a name="M000193"></a>
139
139
 
140
140
  <div class="method-heading">
141
- <a href="#M000146" class="method-signature">
141
+ <a href="#M000193" class="method-signature">
142
142
  <span class="method-name">with</span><span class="method-args">()</span>
143
143
  </a>
144
144
  </div>
145
145
 
146
146
  <div class="method-description">
147
147
  <p><a class="source-toggle" href="#"
148
- onclick="toggleCode('M000146-source');return false;">[Source]</a></p>
149
- <div class="method-source-code" id="M000146-source">
148
+ onclick="toggleCode('M000193-source');return false;">[Source]</a></p>
149
+ <div class="method-source-code" id="M000193-source">
150
150
  <pre>
151
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 260</span>
151
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 283</span>
152
152
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with</span>
153
153
  <span class="ruby-keyword kw">super</span>
154
154
  <span class="ruby-keyword kw">end</span>
@@ -86,7 +86,7 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000138">new</a>&nbsp;&nbsp;
89
+ <a href="#M000185">new</a>&nbsp;&nbsp;
90
90
  </div>
91
91
  </div>
92
92
 
@@ -108,21 +108,21 @@
108
108
  <div id="methods">
109
109
  <h3 class="section-bar">Public Class methods</h3>
110
110
 
111
- <div id="method-M000138" class="method-detail">
112
- <a name="M000138"></a>
111
+ <div id="method-M000185" class="method-detail">
112
+ <a name="M000185"></a>
113
113
 
114
114
  <div class="method-heading">
115
- <a href="#M000138" class="method-signature">
115
+ <a href="#M000185" class="method-signature">
116
116
  <span class="method-name">new</span><span class="method-args">()</span>
117
117
  </a>
118
118
  </div>
119
119
 
120
120
  <div class="method-description">
121
121
  <p><a class="source-toggle" href="#"
122
- onclick="toggleCode('M000138-source');return false;">[Source]</a></p>
123
- <div class="method-source-code" id="M000138-source">
122
+ onclick="toggleCode('M000185-source');return false;">[Source]</a></p>
123
+ <div class="method-source-code" id="M000185-source">
124
124
  <pre>
125
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 189</span>
125
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 213</span>
126
126
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
127
127
  <span class="ruby-keyword kw">super</span>(<span class="ruby-value str">&quot;script&quot;</span>)
128
128
  <span class="ruby-identifier">type</span>(<span class="ruby-value str">&quot;text/javascript&quot;</span>)
@@ -86,8 +86,8 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000141">title</a>&nbsp;&nbsp;
90
- <a href="#M000142">with</a>&nbsp;&nbsp;
89
+ <a href="#M000188">title</a>&nbsp;&nbsp;
90
+ <a href="#M000189">with</a>&nbsp;&nbsp;
91
91
  </div>
92
92
  </div>
93
93
 
@@ -109,21 +109,21 @@
109
109
  <div id="methods">
110
110
  <h3 class="section-bar">Public Instance methods</h3>
111
111
 
112
- <div id="method-M000141" class="method-detail">
113
- <a name="M000141"></a>
112
+ <div id="method-M000188" class="method-detail">
113
+ <a name="M000188"></a>
114
114
 
115
115
  <div class="method-heading">
116
- <a href="#M000141" class="method-signature">
116
+ <a href="#M000188" class="method-signature">
117
117
  <span class="method-name">title</span><span class="method-args">(t)</span>
118
118
  </a>
119
119
  </div>
120
120
 
121
121
  <div class="method-description">
122
122
  <p><a class="source-toggle" href="#"
123
- onclick="toggleCode('M000141-source');return false;">[Source]</a></p>
124
- <div class="method-source-code" id="M000141-source">
123
+ onclick="toggleCode('M000188-source');return false;">[Source]</a></p>
124
+ <div class="method-source-code" id="M000188-source">
125
125
  <pre>
126
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 482</span>
126
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 467</span>
127
127
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">title</span>(<span class="ruby-identifier">t</span>)
128
128
  <span class="ruby-ivar">@title</span> = <span class="ruby-identifier">t</span>
129
129
  <span class="ruby-keyword kw">self</span>
@@ -133,21 +133,21 @@
133
133
  </div>
134
134
  </div>
135
135
 
136
- <div id="method-M000142" class="method-detail">
137
- <a name="M000142"></a>
136
+ <div id="method-M000189" class="method-detail">
137
+ <a name="M000189"></a>
138
138
 
139
139
  <div class="method-heading">
140
- <a href="#M000142" class="method-signature">
140
+ <a href="#M000189" class="method-signature">
141
141
  <span class="method-name">with</span><span class="method-args">(text=nil, &amp;block)</span>
142
142
  </a>
143
143
  </div>
144
144
 
145
145
  <div class="method-description">
146
146
  <p><a class="source-toggle" href="#"
147
- onclick="toggleCode('M000142-source');return false;">[Source]</a></p>
148
- <div class="method-source-code" id="M000142-source">
147
+ onclick="toggleCode('M000189-source');return false;">[Source]</a></p>
148
+ <div class="method-source-code" id="M000189-source">
149
149
  <pre>
150
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 487</span>
150
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 472</span>
151
151
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with</span>(<span class="ruby-identifier">text</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
152
152
  <span class="ruby-identifier">doc</span> = <span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">document</span>
153
153
  <span class="ruby-identifier">doc</span>.<span class="ruby-identifier">start_tag</span>(<span class="ruby-value str">&quot;html&quot;</span>)
@@ -86,9 +86,9 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000122">callback</a>&nbsp;&nbsp;
90
- <a href="#M000121">new</a>&nbsp;&nbsp;
91
- <a href="#M000123">with</a>&nbsp;&nbsp;
89
+ <a href="#M000163">callback</a>&nbsp;&nbsp;
90
+ <a href="#M000162">new</a>&nbsp;&nbsp;
91
+ <a href="#M000164">with</a>&nbsp;&nbsp;
92
92
  </div>
93
93
  </div>
94
94
 
@@ -96,33 +96,19 @@
96
96
 
97
97
 
98
98
  <!-- if includes -->
99
- <div id="includes">
100
- <h3 class="section-bar">Included Modules</h3>
101
-
102
- <div id="includes-list">
103
- <span class="include-name"><a href="InputCallbackMixin.html">Brush::InputCallbackMixin</a></span>
104
- </div>
105
- </div>
106
99
 
107
100
  <div id="section">
108
101
 
102
+ <div id="class-list">
103
+ <h3 class="section-bar">Classes and Modules</h3>
109
104
 
105
+ Class <a href="SelectListTag/SelectListCallback.html" class="link">Wee::Brush::SelectListTag::SelectListCallback</a><br />
110
106
 
111
- <div id="aliases-list">
112
- <h3 class="section-bar">External Aliases</h3>
113
-
114
- <div class="name-list">
115
- <table summary="aliases">
116
- <tr class="top-aligned-row context-row">
117
- <td class="context-item-name">callback</td>
118
- <td>-></td>
119
- <td class="context-item-value">__old_callback</td>
120
- </tr>
121
- </table>
122
- </div>
123
107
  </div>
124
108
 
125
109
 
110
+
111
+
126
112
 
127
113
 
128
114
 
@@ -130,21 +116,21 @@
130
116
  <div id="methods">
131
117
  <h3 class="section-bar">Public Class methods</h3>
132
118
 
133
- <div id="method-M000121" class="method-detail">
134
- <a name="M000121"></a>
119
+ <div id="method-M000162" class="method-detail">
120
+ <a name="M000162"></a>
135
121
 
136
122
  <div class="method-heading">
137
- <a href="#M000121" class="method-signature">
123
+ <a href="#M000162" class="method-signature">
138
124
  <span class="method-name">new</span><span class="method-args">(items)</span>
139
125
  </a>
140
126
  </div>
141
127
 
142
128
  <div class="method-description">
143
129
  <p><a class="source-toggle" href="#"
144
- onclick="toggleCode('M000121-source');return false;">[Source]</a></p>
145
- <div class="method-source-code" id="M000121-source">
130
+ onclick="toggleCode('M000162-source');return false;">[Source]</a></p>
131
+ <div class="method-source-code" id="M000162-source">
146
132
  <pre>
147
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 326</span>
133
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 312</span>
148
134
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">items</span>)
149
135
  <span class="ruby-keyword kw">super</span>(<span class="ruby-value str">'select'</span>)
150
136
  <span class="ruby-ivar">@items</span> = <span class="ruby-identifier">items</span>
@@ -156,26 +142,23 @@
156
142
 
157
143
  <h3 class="section-bar">Public Instance methods</h3>
158
144
 
159
- <div id="method-M000122" class="method-detail">
160
- <a name="M000122"></a>
145
+ <div id="method-M000163" class="method-detail">
146
+ <a name="M000163"></a>
161
147
 
162
148
  <div class="method-heading">
163
- <a href="#M000122" class="method-signature">
164
- <span class="method-name">callback</span><span class="method-args">(symbol=nil, &amp;block)</span>
149
+ <a href="#M000163" class="method-signature">
150
+ <span class="method-name">callback</span><span class="method-args">(symbol=nil, *args, &amp;block)</span>
165
151
  </a>
166
152
  </div>
167
153
 
168
154
  <div class="method-description">
169
155
  <p><a class="source-toggle" href="#"
170
- onclick="toggleCode('M000122-source');return false;">[Source]</a></p>
171
- <div class="method-source-code" id="M000122-source">
156
+ onclick="toggleCode('M000163-source');return false;">[Source]</a></p>
157
+ <div class="method-source-code" id="M000163-source">
172
158
  <pre>
173
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 344</span>
174
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">callback</span>(<span class="ruby-identifier">symbol</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
175
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">symbol</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">block</span>
176
- <span class="ruby-identifier">block</span> = <span class="ruby-constant">Wee</span><span class="ruby-operator">::</span><span class="ruby-constant">LiteralMethodCallback</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@canvas</span>.<span class="ruby-identifier">current_component</span>, <span class="ruby-identifier">symbol</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">block</span>
177
-
178
- <span class="ruby-ivar">@callback</span> = <span class="ruby-identifier">block</span>
159
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 328</span>
160
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">callback</span>(<span class="ruby-identifier">symbol</span>=<span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">args</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
161
+ <span class="ruby-ivar">@callback</span> = <span class="ruby-identifier">to_callback</span>(<span class="ruby-identifier">symbol</span>, <span class="ruby-identifier">args</span>, <span class="ruby-identifier">block</span>)
179
162
  <span class="ruby-keyword kw">self</span>
180
163
  <span class="ruby-keyword kw">end</span>
181
164
  </pre>
@@ -183,37 +166,30 @@
183
166
  </div>
184
167
  </div>
185
168
 
186
- <div id="method-M000123" class="method-detail">
187
- <a name="M000123"></a>
169
+ <div id="method-M000164" class="method-detail">
170
+ <a name="M000164"></a>
188
171
 
189
172
  <div class="method-heading">
190
- <a href="#M000123" class="method-signature">
173
+ <a href="#M000164" class="method-signature">
191
174
  <span class="method-name">with</span><span class="method-args">()</span>
192
175
  </a>
193
176
  </div>
194
177
 
195
178
  <div class="method-description">
196
179
  <p><a class="source-toggle" href="#"
197
- onclick="toggleCode('M000123-source');return false;">[Source]</a></p>
198
- <div class="method-source-code" id="M000123-source">
180
+ onclick="toggleCode('M000164-source');return false;">[Source]</a></p>
181
+ <div class="method-source-code" id="M000164-source">
199
182
  <pre>
200
- <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 352</span>
183
+ <span class="ruby-comment cmt"># File lib/wee/renderer/html/brushes.rb, line 347</span>
201
184
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with</span>
202
185
  <span class="ruby-ivar">@labels</span> <span class="ruby-operator">||=</span> <span class="ruby-ivar">@items</span>.<span class="ruby-identifier">collect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">i</span>.<span class="ruby-identifier">to_s</span> }
203
186
  <span class="ruby-ivar">@selected</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
204
187
 
205
188
  <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@callback</span>
206
- <span class="ruby-identifier">__old_callback</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">input</span><span class="ruby-operator">|</span>
207
- <span class="ruby-identifier">choosen</span> = <span class="ruby-identifier">input</span>.<span class="ruby-identifier">list</span>.<span class="ruby-identifier">map</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">idx</span><span class="ruby-operator">|</span>
208
- <span class="ruby-identifier">idx</span> = <span class="ruby-constant">Integer</span>(<span class="ruby-identifier">idx</span>)
209
- <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;invalid index in select list&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">idx</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">idx</span> <span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@items</span>.<span class="ruby-identifier">size</span>
210
- <span class="ruby-ivar">@items</span>[<span class="ruby-identifier">idx</span>]
211
- }
212
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">choosen</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span> <span class="ruby-keyword kw">and</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@attributes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value str">'multiple'</span>)
213
- <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;choosen more than one element from a non-multiple select list&quot;</span>
214
- <span class="ruby-keyword kw">end</span>
215
- <span class="ruby-ivar">@callback</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">choosen</span>)
216
- }
189
+ <span class="ruby-comment cmt"># A callback was specified. We have to wrap it inside a</span>
190
+ <span class="ruby-comment cmt"># SelectListCallback object as we want to perform some </span>
191
+ <span class="ruby-comment cmt"># additional actions.</span>
192
+ <span class="ruby-identifier">__input_callback</span>(<span class="ruby-constant">SelectListCallback</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@callback</span>, <span class="ruby-ivar">@items</span>, <span class="ruby-ivar">@attributes</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value str">'multiple'</span>)))
217
193
  <span class="ruby-keyword kw">end</span>
218
194
 
219
195
  <span class="ruby-keyword kw">super</span> <span class="ruby-keyword kw">do</span>