sws 0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. data/doc/DOC.otl +34 -0
  2. data/doc/Makefile +13 -0
  3. data/doc/architecture.dia +0 -0
  4. data/doc/docbook/architecture.png +0 -0
  5. data/doc/docbook/concepts.docbook +474 -0
  6. data/doc/docbook/installation.docbook +57 -0
  7. data/doc/docbook/introduction.docbook +130 -0
  8. data/doc/docbook/sws_manual.docbook +35 -0
  9. data/doc/docbook/todo.docbook +38 -0
  10. data/doc/docbook/tutorial.docbook +594 -0
  11. data/examples/README +1 -0
  12. data/examples/addressbook/CardBrowse/CardBrowse.html +43 -0
  13. data/examples/addressbook/CardBrowse/CardBrowse.rb +65 -0
  14. data/examples/addressbook/CardBrowse/CardBrowse.sws +92 -0
  15. data/examples/addressbook/Login/LoginPage.html +12 -0
  16. data/examples/addressbook/Login/LoginPage.rb +19 -0
  17. data/examples/addressbook/Login/LoginPage.sws +15 -0
  18. data/examples/addressbook/README +1 -0
  19. data/examples/addressbook/addressbook.rb +70 -0
  20. data/examples/addressbook/application.yaml +8 -0
  21. data/examples/addressbook/db.yaml +7 -0
  22. data/examples/component_demo/CheckBoxDemo/CheckBoxDemo.html +11 -0
  23. data/examples/component_demo/CheckBoxDemo/CheckBoxDemo.rb +21 -0
  24. data/examples/component_demo/CheckBoxDemo/CheckBoxDemo.sws +25 -0
  25. data/examples/component_demo/ComponentDemo.rb +21 -0
  26. data/examples/component_demo/ConditionalDemo/ConditionalDemo.html +18 -0
  27. data/examples/component_demo/ConditionalDemo/ConditionalDemo.rb +2 -0
  28. data/examples/component_demo/ConditionalDemo/ConditionalDemo.sws +22 -0
  29. data/examples/component_demo/FileUploadDemo/FileUploadDemo.html +10 -0
  30. data/examples/component_demo/FileUploadDemo/FileUploadDemo.rb +9 -0
  31. data/examples/component_demo/FileUploadDemo/FileUploadDemo.sws +33 -0
  32. data/examples/component_demo/FormFieldsDemo/FormFieldsDemo.html +12 -0
  33. data/examples/component_demo/FormFieldsDemo/FormFieldsDemo.rb +21 -0
  34. data/examples/component_demo/FormFieldsDemo/FormFieldsDemo.sws +40 -0
  35. data/examples/component_demo/FormListsDemo/FormListsDemo.html +11 -0
  36. data/examples/component_demo/FormListsDemo/FormListsDemo.rb +37 -0
  37. data/examples/component_demo/FormListsDemo/FormListsDemo.sws +47 -0
  38. data/examples/component_demo/GenericDemo/GenericDemo.html +4 -0
  39. data/examples/component_demo/GenericDemo/GenericDemo.rb +2 -0
  40. data/examples/component_demo/GenericDemo/GenericDemo.sws +10 -0
  41. data/examples/component_demo/HyperlinkDemo/HyperlinkDemo.html +8 -0
  42. data/examples/component_demo/HyperlinkDemo/HyperlinkDemo.rb +20 -0
  43. data/examples/component_demo/HyperlinkDemo/HyperlinkDemo.sws +19 -0
  44. data/examples/component_demo/ImageLinkDemo/ImageLinkDemo.html +11 -0
  45. data/examples/component_demo/ImageLinkDemo/ImageLinkDemo.rb +2 -0
  46. data/examples/component_demo/ImageLinkDemo/ImageLinkDemo.sws +14 -0
  47. data/examples/component_demo/PageWrapper/PageWrapper.html +23 -0
  48. data/examples/component_demo/PageWrapper/PageWrapper.rb +2 -0
  49. data/examples/component_demo/PageWrapper/PageWrapper.sws +42 -0
  50. data/examples/component_demo/README +1 -0
  51. data/examples/component_demo/RepetitionDemo/RepetitionDemo.html +13 -0
  52. data/examples/component_demo/RepetitionDemo/RepetitionDemo.rb +19 -0
  53. data/examples/component_demo/RepetitionDemo/RepetitionDemo.sws +20 -0
  54. data/examples/component_demo/StringDemo/StringDemo.html +5 -0
  55. data/examples/component_demo/StringDemo/StringDemo.rb +16 -0
  56. data/examples/component_demo/StringDemo/StringDemo.sws +14 -0
  57. data/examples/component_demo/application.yaml +28 -0
  58. data/examples/component_demo/poweredby.jpg +0 -0
  59. data/examples/component_demo/style.css +1 -0
  60. data/examples/movies/Menu/Menu.html +3 -0
  61. data/examples/movies/Menu/Menu.rb +7 -0
  62. data/examples/movies/Menu/Menu.sws +7 -0
  63. data/examples/movies/MovieBrowse/MovieBrowse.html +68 -0
  64. data/examples/movies/MovieBrowse/MovieBrowse.rb +178 -0
  65. data/examples/movies/MovieBrowse/MovieBrowse.sws +127 -0
  66. data/examples/movies/README +1 -0
  67. data/examples/movies/UserBrowse/UserBrowse.html +50 -0
  68. data/examples/movies/UserBrowse/UserBrowse.rb +69 -0
  69. data/examples/movies/UserBrowse/UserBrowse.sws +49 -0
  70. data/examples/movies/application.yaml +11 -0
  71. data/examples/movies/da.rb +36 -0
  72. data/examples/movies/dbmovies.rb +44 -0
  73. data/examples/movies/frameworks/TestFramework/framework.yaml +4 -0
  74. data/examples/movies/frameworks/TestFramework/resources/im1.jpg +0 -0
  75. data/examples/movies/images/pbr1b.jpg +0 -0
  76. data/examples/movies/movies.rb +28 -0
  77. data/examples/movies/movies.sds +119 -0
  78. data/examples/movies/movies.sqlite +0 -0
  79. data/examples/movies/movies_mysql.sql +28 -0
  80. data/examples/movies/movies_postgres.sql +27 -0
  81. data/examples/movies/movies_sqlite.sql +28 -0
  82. data/lib/sws.rb +89 -0
  83. data/lib/sws/Core/components/CheckBox/CheckBox.api +5 -0
  84. data/lib/sws/Core/components/CheckBox/CheckBox.rb +45 -0
  85. data/lib/sws/Core/components/CheckBoxList/CheckBoxList.api +13 -0
  86. data/lib/sws/Core/components/CheckBoxList/CheckBoxList.rb +54 -0
  87. data/lib/sws/Core/components/Conditional/Conditional.api +3 -0
  88. data/lib/sws/Core/components/Conditional/Conditional.html +1 -0
  89. data/lib/sws/Core/components/Conditional/Conditional.rb +39 -0
  90. data/lib/sws/Core/components/Conditional/Conditional.sws +2 -0
  91. data/lib/sws/Core/components/Content/Content.rb +18 -0
  92. data/lib/sws/Core/components/ExceptionPage/ExceptionPage.html +13 -0
  93. data/lib/sws/Core/components/ExceptionPage/ExceptionPage.rb +18 -0
  94. data/lib/sws/Core/components/ExceptionPage/ExceptionPage.sws +16 -0
  95. data/lib/sws/Core/components/FileUpload/FileUpload.api +16 -0
  96. data/lib/sws/Core/components/FileUpload/FileUpload.rb +62 -0
  97. data/lib/sws/Core/components/Form/Form.api +9 -0
  98. data/lib/sws/Core/components/Form/Form.html +3 -0
  99. data/lib/sws/Core/components/Form/Form.rb +55 -0
  100. data/lib/sws/Core/components/Form/Form.sws +12 -0
  101. data/lib/sws/Core/components/GenericContainer/GenericContainer.api +10 -0
  102. data/lib/sws/Core/components/GenericContainer/GenericContainer.html +1 -0
  103. data/lib/sws/Core/components/GenericContainer/GenericContainer.rb +39 -0
  104. data/lib/sws/Core/components/GenericContainer/GenericContainer.sws +12 -0
  105. data/lib/sws/Core/components/GenericElement/GenericElement.api +10 -0
  106. data/lib/sws/Core/components/GenericElement/GenericElement.rb +34 -0
  107. data/lib/sws/Core/components/HiddenField/HiddenField.api +7 -0
  108. data/lib/sws/Core/components/HiddenField/HiddenField.rb +37 -0
  109. data/lib/sws/Core/components/Hyperlink/Hyperlink.api +13 -0
  110. data/lib/sws/Core/components/Hyperlink/Hyperlink.html +1 -0
  111. data/lib/sws/Core/components/Hyperlink/Hyperlink.rb +102 -0
  112. data/lib/sws/Core/components/Hyperlink/Hyperlink.sws +12 -0
  113. data/lib/sws/Core/components/Image/Image.api +11 -0
  114. data/lib/sws/Core/components/Image/Image.rb +49 -0
  115. data/lib/sws/Core/components/ImageButton/ImageButton.api +16 -0
  116. data/lib/sws/Core/components/ImageButton/ImageButton.rb +76 -0
  117. data/lib/sws/Core/components/Link/Link.api +11 -0
  118. data/lib/sws/Core/components/Link/Link.rb +39 -0
  119. data/lib/sws/Core/components/PasswordField/PasswordField.api +7 -0
  120. data/lib/sws/Core/components/PasswordField/PasswordField.rb +41 -0
  121. data/lib/sws/Core/components/RadioButton/RadioButton.api +7 -0
  122. data/lib/sws/Core/components/RadioButton/RadioButton.rb +44 -0
  123. data/lib/sws/Core/components/RadioButtonList/RadioButtonList.api +20 -0
  124. data/lib/sws/Core/components/RadioButtonList/RadioButtonList.rb +76 -0
  125. data/lib/sws/Core/components/Repetition/Repetition.api +10 -0
  126. data/lib/sws/Core/components/Repetition/Repetition.html +1 -0
  127. data/lib/sws/Core/components/Repetition/Repetition.rb +137 -0
  128. data/lib/sws/Core/components/Repetition/Repetition.sws +2 -0
  129. data/lib/sws/Core/components/ResetButton/ResetButton.api +5 -0
  130. data/lib/sws/Core/components/ResetButton/ResetButton.rb +28 -0
  131. data/lib/sws/Core/components/Select/Select.api +24 -0
  132. data/lib/sws/Core/components/Select/Select.rb +57 -0
  133. data/lib/sws/Core/components/String/String.api +5 -0
  134. data/lib/sws/Core/components/String/String.rb +28 -0
  135. data/lib/sws/Core/components/SubmitButton/SubmitButton.api +6 -0
  136. data/lib/sws/Core/components/SubmitButton/SubmitButton.rb +53 -0
  137. data/lib/sws/Core/components/TextArea/TextArea.api +9 -0
  138. data/lib/sws/Core/components/TextArea/TextArea.rb +28 -0
  139. data/lib/sws/Core/components/TextField/TextField.api +9 -0
  140. data/lib/sws/Core/components/TextField/TextField.rb +46 -0
  141. data/lib/sws/Core/framework.yaml +25 -0
  142. data/lib/sws/JSComponents/components/JSMenu/JSMenu.api +5 -0
  143. data/lib/sws/JSComponents/components/JSMenu/JSMenu.html +58 -0
  144. data/lib/sws/JSComponents/components/JSMenu/JSMenu.rb +34 -0
  145. data/lib/sws/JSComponents/components/JSMenu/JSMenu.sws +37 -0
  146. data/lib/sws/JSComponents/framework.yaml +3 -0
  147. data/lib/sws/adaptor.rb +334 -0
  148. data/lib/sws/application.rb +604 -0
  149. data/lib/sws/component.rb +656 -0
  150. data/lib/sws/cookie.rb +27 -0
  151. data/lib/sws/direct_action.rb +38 -0
  152. data/lib/sws/extensions.rb +49 -0
  153. data/lib/sws/parsers.rb +374 -0
  154. data/lib/sws/request.rb +308 -0
  155. data/lib/sws/response.rb +70 -0
  156. data/lib/sws/session.rb +195 -0
  157. data/lib/sws/slot.rb +198 -0
  158. metadata +263 -0
@@ -0,0 +1,198 @@
1
+ #!/usr/bin/env ruby
2
+
3
+
4
+ module SWS
5
+
6
+ # Represents a settable parameter of a component. It can have a value bound to
7
+ # itself, thus allowing the developer to make the component customizable.
8
+ class Slot
9
+
10
+
11
+ # Component the receiver is contained within
12
+ attr_accessor :component
13
+
14
+ # Name of the binding
15
+ attr_accessor :name
16
+
17
+ # The value bound to the receiver must be of this type
18
+ #attr_accessor :required_type
19
+
20
+ # Determines whether binding a value to the receiver is obligatory
21
+ attr_reader :required
22
+
23
+ # Holds default value for the slot if none bound
24
+ attr_reader :default
25
+
26
+ # Determines whether the value can be set by the slot (in order to update
27
+ # the bound value in the definition component)
28
+ attr_reader :settable
29
+
30
+ # Literal string that was bound to the slot
31
+ attr_reader :bound_string
32
+
33
+
34
+ # Creates new Slot object
35
+ # Parameters:
36
+ # component - the component this slot belongs to
37
+ # name - slot name
38
+ def initialize ( component, name )
39
+
40
+ @component = component
41
+ @name = name
42
+ @synchronize = component.synchronize_slot?( name ) ? "@#{name}" : nil
43
+ @settable = false
44
+ #@required_type = nil
45
+ @required = nil
46
+ @default = nil
47
+
48
+ end
49
+
50
+
51
+ # Binds a string to the receiver. As SWS uses YAML now, the parameter can be
52
+ # a regular object, not only a string
53
+ def bind ( binding )
54
+ @bound_string = binding #binding is a string that is used in value=, so we keep it
55
+ end
56
+
57
+
58
+ # Returns an object that was bound to the slot. Can be a variable or a
59
+ # method (in that case its return value is used)
60
+ def bound_object ()
61
+ return object_to_binding( @bound_string )
62
+ end
63
+
64
+
65
+ # Sets default value for the receiver. The value is used when nothing is
66
+ # bound to the receiver.
67
+ def default= ( default )
68
+ @default = object_to_binding( default )
69
+ end
70
+
71
+
72
+ # Sets the "required" parameter of the receiver. If true, the slot must be bound
73
+ # or an exception will be thrown.
74
+ def required= ( required )
75
+ @required = required
76
+ end
77
+
78
+
79
+ # Sets the "settable" parameter of the receiver. If true, the value bound to
80
+ # the receiver will be updated on page submission.
81
+ def settable= ( settable )
82
+ @settable = settable
83
+ end
84
+
85
+
86
+ # Calculates the value that was bound to the receiver ("evaluates"
87
+ # @bound_string) and returns it
88
+ def value ()
89
+
90
+ #component parent is not null, because top-level components (pages)
91
+ #do not have slots
92
+ if ( bound_object() == nil )
93
+ if ( @required == true )
94
+ raise "Slot #{@name} is a required slot for component #{@component.name}"
95
+ else
96
+ value = @default
97
+ end
98
+ elsif ( bound_object().instance_of?( Method ) )
99
+ value = bound_object().call()
100
+ else
101
+ value = bound_object()
102
+ end
103
+ #if ( @required_type != nil && value.type.to_s != @required_type )
104
+ # raise "Slot #{@name} requires value type #{@required_type}, but got #{value.type}"
105
+ #end
106
+ if ( @synchronize )
107
+ component.instance_variable_set( @synchronize, value )
108
+ end
109
+ return value
110
+
111
+ end
112
+
113
+
114
+ # Updates the value of the object bound
115
+ def value= ( value )
116
+
117
+ string = @bound_string
118
+ if ( @settable == true )
119
+ if ( string =~ /^[A-Z]/ ) # starts with uppercase - class/module method
120
+ module_name, method_string = string.split( /\./, 2 )
121
+ method_object = SWS.get_module( module_name )
122
+ else
123
+ if ( string =~ /^\^/ ) # parent binding
124
+ @component.definition_component.slots[ string[1 .. -1] ].value = value
125
+ return nil
126
+ else
127
+ method_object = @component.definition_component()
128
+ method_string = string
129
+ end
130
+ end
131
+ # if the method not exists the exception will be thrown, so we don't need to check
132
+ while ( md = /^([^.]+)\.(.+)$/.match( method_string ) )
133
+ method_object = method_object.method( md[1] ).call()
134
+ method_string = md [2]
135
+ end
136
+ method = method_object.method( "#{method_string}=" )
137
+ method.call( value )
138
+ if ( @synchronize )
139
+ component.instance_variable_set( @synchronize, value )
140
+ end
141
+ else
142
+ raise "Trying to set #{bound_object()} to #{value} by not settable slot #{self}!"
143
+ end
144
+
145
+ end
146
+
147
+
148
+ # Converts an object retrieved by YAML from .sws file to a value to be bound
149
+ # to a slot
150
+ def object_to_binding ( object )
151
+
152
+ unless ( object.is_a?( ::String ) )
153
+ return object
154
+ end
155
+
156
+ if ( object =~ /^'.*'$/ ) #literal string - strip '
157
+ return object[1 .. -2]
158
+ else #unquoted string - a method
159
+ if ( object =~ /^[A-Z]/ ) # starts with uppercase - class/module method
160
+ module_name, method_string = object.split( /\./, 2 )
161
+ method_object = SWS.get_module( module_name )
162
+ else
163
+ if ( object =~ /^\^/ ) # parent binding
164
+ return @component.definition_component.slots[ object[1 .. -1] ].bound_object()
165
+ else
166
+ method_object = @component.definition_component()
167
+ method_string = object
168
+ end
169
+ end
170
+ # if the method does not exist the exception is raised, so we don't need to check
171
+ while ( md = /^([^.]+)\.(.+)$/.match( method_string ) )
172
+ method_object = method_object.method( md[1] ).call()
173
+ method_string = md [2]
174
+ end
175
+ value = method_object.method( method_string )
176
+ return value
177
+ end
178
+
179
+ end
180
+
181
+
182
+ # Returns string representation of the receiver
183
+ def to_s ()
184
+ return "Slot - name: #{@name}, component: #{@component}, binding: #{@bound_string}, required: #{@required}, default: #{@default}, settable: #{settable}"
185
+ end
186
+
187
+
188
+ # Returns default representation of the slot as a tag attribute (that is eg.
189
+ # 'href="#{@slots["href"].value}' for slot named "href") if the slot is
190
+ # bound, empty string otherwise
191
+ def to_tag_attribute ()
192
+ return (@bound_string || @default) ? "#{name}=\"#{value()}\"" : ""
193
+ end
194
+
195
+
196
+ end
197
+
198
+ end
metadata ADDED
@@ -0,0 +1,263 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.8.11
3
+ specification_version: 1
4
+ name: sws
5
+ version: !ruby/object:Gem::Version
6
+ version: "0.4"
7
+ date: 2006-04-25 00:00:00 +02:00
8
+ summary: SWS is a sophisticated web development library in spirit of Apple WebObjects
9
+ require_paths:
10
+ - lib
11
+ email: marek@janukowicz.net
12
+ homepage: http://www.starware.one.pl/software/sws
13
+ rubyforge_project: sws
14
+ description:
15
+ autorequire: sws
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: false
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
24
+ version:
25
+ platform: ruby
26
+ signing_key:
27
+ cert_chain:
28
+ authors:
29
+ - Marek Janukowicz
30
+ files:
31
+ - lib/sws
32
+ - lib/sws.rb
33
+ - lib/sws/JSComponents
34
+ - lib/sws/Core
35
+ - lib/sws/response.rb
36
+ - lib/sws/extensions.rb
37
+ - lib/sws/parsers.rb
38
+ - lib/sws/slot.rb
39
+ - lib/sws/component.rb
40
+ - lib/sws/application.rb
41
+ - lib/sws/session.rb
42
+ - lib/sws/direct_action.rb
43
+ - lib/sws/request.rb
44
+ - lib/sws/cookie.rb
45
+ - lib/sws/adaptor.rb
46
+ - lib/sws/JSComponents/components
47
+ - lib/sws/JSComponents/framework.yaml
48
+ - lib/sws/JSComponents/components/JSMenu
49
+ - lib/sws/JSComponents/components/JSMenu/JSMenu.rb
50
+ - lib/sws/JSComponents/components/JSMenu/JSMenu.html
51
+ - lib/sws/JSComponents/components/JSMenu/JSMenu.api
52
+ - lib/sws/JSComponents/components/JSMenu/JSMenu.sws
53
+ - lib/sws/Core/components
54
+ - lib/sws/Core/framework.yaml
55
+ - lib/sws/Core/components/GenericContainer
56
+ - lib/sws/Core/components/Select
57
+ - lib/sws/Core/components/Image
58
+ - lib/sws/Core/components/CheckBoxList
59
+ - lib/sws/Core/components/Repetition
60
+ - lib/sws/Core/components/FileUpload
61
+ - lib/sws/Core/components/GenericElement
62
+ - lib/sws/Core/components/CheckBox
63
+ - lib/sws/Core/components/RadioButtonList
64
+ - lib/sws/Core/components/TextField
65
+ - lib/sws/Core/components/RadioButton
66
+ - lib/sws/Core/components/ExceptionPage
67
+ - lib/sws/Core/components/Link
68
+ - lib/sws/Core/components/HiddenField
69
+ - lib/sws/Core/components/SubmitButton
70
+ - lib/sws/Core/components/Form
71
+ - lib/sws/Core/components/Conditional
72
+ - lib/sws/Core/components/Hyperlink
73
+ - lib/sws/Core/components/PasswordField
74
+ - lib/sws/Core/components/String
75
+ - lib/sws/Core/components/Content
76
+ - lib/sws/Core/components/TextArea
77
+ - lib/sws/Core/components/ImageButton
78
+ - lib/sws/Core/components/ResetButton
79
+ - lib/sws/Core/components/GenericContainer/GenericContainer.rb
80
+ - lib/sws/Core/components/GenericContainer/GenericContainer.html
81
+ - lib/sws/Core/components/GenericContainer/GenericContainer.api
82
+ - lib/sws/Core/components/GenericContainer/GenericContainer.sws
83
+ - lib/sws/Core/components/Select/Select.rb
84
+ - lib/sws/Core/components/Select/Select.api
85
+ - lib/sws/Core/components/Image/Image.rb
86
+ - lib/sws/Core/components/Image/Image.api
87
+ - lib/sws/Core/components/CheckBoxList/CheckBoxList.rb
88
+ - lib/sws/Core/components/CheckBoxList/CheckBoxList.api
89
+ - lib/sws/Core/components/Repetition/Repetition.rb
90
+ - lib/sws/Core/components/Repetition/Repetition.html
91
+ - lib/sws/Core/components/Repetition/Repetition.api
92
+ - lib/sws/Core/components/Repetition/Repetition.sws
93
+ - lib/sws/Core/components/FileUpload/FileUpload.rb
94
+ - lib/sws/Core/components/FileUpload/FileUpload.api
95
+ - lib/sws/Core/components/GenericElement/GenericElement.rb
96
+ - lib/sws/Core/components/GenericElement/GenericElement.api
97
+ - lib/sws/Core/components/CheckBox/CheckBox.rb
98
+ - lib/sws/Core/components/CheckBox/CheckBox.api
99
+ - lib/sws/Core/components/RadioButtonList/RadioButtonList.rb
100
+ - lib/sws/Core/components/RadioButtonList/RadioButtonList.api
101
+ - lib/sws/Core/components/TextField/TextField.api
102
+ - lib/sws/Core/components/TextField/TextField.rb
103
+ - lib/sws/Core/components/RadioButton/RadioButton.api
104
+ - lib/sws/Core/components/RadioButton/RadioButton.rb
105
+ - lib/sws/Core/components/ExceptionPage/ExceptionPage.sws
106
+ - lib/sws/Core/components/ExceptionPage/ExceptionPage.rb
107
+ - lib/sws/Core/components/ExceptionPage/ExceptionPage.html
108
+ - lib/sws/Core/components/Link/Link.rb
109
+ - lib/sws/Core/components/Link/Link.api
110
+ - lib/sws/Core/components/HiddenField/HiddenField.rb
111
+ - lib/sws/Core/components/HiddenField/HiddenField.api
112
+ - lib/sws/Core/components/SubmitButton/SubmitButton.rb
113
+ - lib/sws/Core/components/SubmitButton/SubmitButton.api
114
+ - lib/sws/Core/components/Form/Form.rb
115
+ - lib/sws/Core/components/Form/Form.html
116
+ - lib/sws/Core/components/Form/Form.api
117
+ - lib/sws/Core/components/Form/Form.sws
118
+ - lib/sws/Core/components/Conditional/Conditional.rb
119
+ - lib/sws/Core/components/Conditional/Conditional.html
120
+ - lib/sws/Core/components/Conditional/Conditional.api
121
+ - lib/sws/Core/components/Conditional/Conditional.sws
122
+ - lib/sws/Core/components/Hyperlink/Hyperlink.sws
123
+ - lib/sws/Core/components/Hyperlink/Hyperlink.rb
124
+ - lib/sws/Core/components/Hyperlink/Hyperlink.html
125
+ - lib/sws/Core/components/Hyperlink/Hyperlink.api
126
+ - lib/sws/Core/components/PasswordField/PasswordField.rb
127
+ - lib/sws/Core/components/PasswordField/PasswordField.api
128
+ - lib/sws/Core/components/String/String.rb
129
+ - lib/sws/Core/components/String/String.api
130
+ - lib/sws/Core/components/Content/Content.rb
131
+ - lib/sws/Core/components/TextArea/TextArea.rb
132
+ - lib/sws/Core/components/TextArea/TextArea.api
133
+ - lib/sws/Core/components/ImageButton/ImageButton.rb
134
+ - lib/sws/Core/components/ImageButton/ImageButton.api
135
+ - lib/sws/Core/components/ResetButton/ResetButton.rb
136
+ - lib/sws/Core/components/ResetButton/ResetButton.api
137
+ - examples/addressbook
138
+ - examples/movies
139
+ - examples/component_demo
140
+ - examples/README
141
+ - examples/addressbook/Login
142
+ - examples/addressbook/CardBrowse
143
+ - examples/addressbook/addressbook.rb
144
+ - examples/addressbook/application.yaml
145
+ - examples/addressbook/db.yaml
146
+ - examples/addressbook/README
147
+ - examples/addressbook/Login/LoginPage.sws
148
+ - examples/addressbook/Login/LoginPage.rb
149
+ - examples/addressbook/Login/LoginPage.html
150
+ - examples/addressbook/CardBrowse/CardBrowse.sws
151
+ - examples/addressbook/CardBrowse/CardBrowse.rb
152
+ - examples/addressbook/CardBrowse/CardBrowse.html
153
+ - examples/movies/UserBrowse
154
+ - examples/movies/frameworks
155
+ - examples/movies/MovieBrowse
156
+ - examples/movies/Menu
157
+ - examples/movies/images
158
+ - examples/movies/movies_sqlite.sql
159
+ - examples/movies/movies.sqlite
160
+ - examples/movies/application.yaml
161
+ - examples/movies/movies.rb
162
+ - examples/movies/movies_mysql.sql
163
+ - examples/movies/da.rb
164
+ - examples/movies/movies_postgres.sql
165
+ - examples/movies/dbmovies.rb
166
+ - examples/movies/movies.sds
167
+ - examples/movies/README
168
+ - examples/movies/UserBrowse/UserBrowse.rb
169
+ - examples/movies/UserBrowse/UserBrowse.html
170
+ - examples/movies/UserBrowse/UserBrowse.sws
171
+ - examples/movies/frameworks/TestFramework
172
+ - examples/movies/frameworks/TestFramework/resources
173
+ - examples/movies/frameworks/TestFramework/framework.yaml
174
+ - examples/movies/frameworks/TestFramework/resources/im1.jpg
175
+ - examples/movies/MovieBrowse/MovieBrowse.rb
176
+ - examples/movies/MovieBrowse/MovieBrowse.html
177
+ - examples/movies/MovieBrowse/MovieBrowse.sws
178
+ - examples/movies/Menu/Menu.sws
179
+ - examples/movies/Menu/Menu.rb
180
+ - examples/movies/Menu/Menu.html
181
+ - examples/movies/images/pbr1b.jpg
182
+ - examples/component_demo/GenericDemo
183
+ - examples/component_demo/RepetitionDemo
184
+ - examples/component_demo/FormListsDemo
185
+ - examples/component_demo/FileUploadDemo
186
+ - examples/component_demo/CheckBoxDemo
187
+ - examples/component_demo/FormFieldsDemo
188
+ - examples/component_demo/ImageLinkDemo
189
+ - examples/component_demo/ConditionalDemo
190
+ - examples/component_demo/HyperlinkDemo
191
+ - examples/component_demo/StringDemo
192
+ - examples/component_demo/PageWrapper
193
+ - examples/component_demo/poweredby.jpg
194
+ - examples/component_demo/style.css
195
+ - examples/component_demo/README
196
+ - examples/component_demo/application.yaml
197
+ - examples/component_demo/ComponentDemo.rb
198
+ - examples/component_demo/GenericDemo/GenericDemo.rb
199
+ - examples/component_demo/GenericDemo/GenericDemo.html
200
+ - examples/component_demo/GenericDemo/GenericDemo.sws
201
+ - examples/component_demo/RepetitionDemo/RepetitionDemo.sws
202
+ - examples/component_demo/RepetitionDemo/RepetitionDemo.rb
203
+ - examples/component_demo/RepetitionDemo/RepetitionDemo.html
204
+ - examples/component_demo/FormListsDemo/FormListsDemo.sws
205
+ - examples/component_demo/FormListsDemo/FormListsDemo.rb
206
+ - examples/component_demo/FormListsDemo/FormListsDemo.html
207
+ - examples/component_demo/FileUploadDemo/FileUploadDemo.sws
208
+ - examples/component_demo/FileUploadDemo/FileUploadDemo.rb
209
+ - examples/component_demo/FileUploadDemo/FileUploadDemo.html
210
+ - examples/component_demo/CheckBoxDemo/CheckBoxDemo.sws
211
+ - examples/component_demo/CheckBoxDemo/CheckBoxDemo.rb
212
+ - examples/component_demo/CheckBoxDemo/CheckBoxDemo.html
213
+ - examples/component_demo/FormFieldsDemo/FormFieldsDemo.rb
214
+ - examples/component_demo/FormFieldsDemo/FormFieldsDemo.html
215
+ - examples/component_demo/FormFieldsDemo/FormFieldsDemo.sws
216
+ - examples/component_demo/ImageLinkDemo/ImageLinkDemo.sws
217
+ - examples/component_demo/ImageLinkDemo/ImageLinkDemo.rb
218
+ - examples/component_demo/ImageLinkDemo/ImageLinkDemo.html
219
+ - examples/component_demo/ConditionalDemo/ConditionalDemo.sws
220
+ - examples/component_demo/ConditionalDemo/ConditionalDemo.rb
221
+ - examples/component_demo/ConditionalDemo/ConditionalDemo.html
222
+ - examples/component_demo/HyperlinkDemo/HyperlinkDemo.sws
223
+ - examples/component_demo/HyperlinkDemo/HyperlinkDemo.rb
224
+ - examples/component_demo/HyperlinkDemo/HyperlinkDemo.html
225
+ - examples/component_demo/StringDemo/StringDemo.sws
226
+ - examples/component_demo/StringDemo/StringDemo.rb
227
+ - examples/component_demo/StringDemo/StringDemo.html
228
+ - examples/component_demo/PageWrapper/PageWrapper.rb
229
+ - examples/component_demo/PageWrapper/PageWrapper.html
230
+ - examples/component_demo/PageWrapper/PageWrapper.sws
231
+ - doc/docbook
232
+ - doc/DOC.otl
233
+ - doc/Makefile
234
+ - doc/architecture.dia
235
+ - doc/docbook/installation.docbook
236
+ - doc/docbook/introduction.docbook
237
+ - doc/docbook/tutorial.docbook
238
+ - doc/docbook/todo.docbook
239
+ - doc/docbook/architecture.png
240
+ - doc/docbook/sws_manual.docbook
241
+ - doc/docbook/concepts.docbook
242
+ test_files: []
243
+
244
+ rdoc_options: []
245
+
246
+ extra_rdoc_files: []
247
+
248
+ executables: []
249
+
250
+ extensions: []
251
+
252
+ requirements: []
253
+
254
+ dependencies:
255
+ - !ruby/object:Gem::Dependency
256
+ name: log4r
257
+ version_requirement:
258
+ version_requirements: !ruby/object:Gem::Version::Requirement
259
+ requirements:
260
+ - - ">="
261
+ - !ruby/object:Gem::Version
262
+ version: 1.0.5
263
+ version: