sws 0.4

Sign up to get free protection for your applications and to get access to all the features.
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: