sproutcore 0.9.1 → 0.9.2

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 (208) hide show
  1. data/History.txt +233 -0
  2. data/Manifest.txt +67 -34
  3. data/bin/sc-build +12 -1
  4. data/bin/sc-gen +1 -1
  5. data/bin/sproutcore +14 -0
  6. data/clients/sc_docs/controllers/docs.js +38 -8
  7. data/clients/sc_docs/english.lproj/body.css +80 -127
  8. data/clients/sc_docs/english.lproj/body.rhtml +43 -23
  9. data/clients/sc_docs/english.lproj/no_docs.rhtml +2 -1
  10. data/clients/sc_docs/english.lproj/tabs.rhtml +16 -0
  11. data/clients/sc_docs/main.js +14 -9
  12. data/clients/sc_docs/models/doc.js +1 -1
  13. data/clients/sc_docs/tests/controllers/docs.rhtml +1 -2
  14. data/clients/sc_docs/tests/models/doc.rhtml +1 -2
  15. data/clients/sc_docs/tests/views/doc_frame.rhtml +1 -2
  16. data/clients/sc_docs/tests/views/doc_label_view.rhtml +1 -2
  17. data/clients/sc_docs/views/doc_frame.js +1 -1
  18. data/clients/sc_test_runner/controllers/runner.js +31 -8
  19. data/clients/sc_test_runner/english.lproj/body.css +62 -122
  20. data/clients/sc_test_runner/english.lproj/body.rhtml +62 -26
  21. data/clients/sc_test_runner/main.js +1 -6
  22. data/clients/sc_test_runner/models/test.js +14 -1
  23. data/clients/sc_test_runner/views/runner_frame.js +4 -2
  24. data/clients/view_builder/builders/builder.js +339 -0
  25. data/clients/view_builder/builders/button.js +81 -0
  26. data/clients/view_builder/controllers/document.js +21 -0
  27. data/clients/view_builder/core.js +19 -0
  28. data/clients/view_builder/english.lproj/body.css +77 -0
  29. data/clients/view_builder/english.lproj/body.rhtml +41 -0
  30. data/clients/{sc_docs → view_builder}/english.lproj/controls.css +0 -0
  31. data/clients/view_builder/english.lproj/strings.js +14 -0
  32. data/clients/view_builder/main.js +38 -0
  33. data/clients/view_builder/tests/controllers/document.rhtml +20 -0
  34. data/clients/view_builder/tests/views/builder.rhtml +20 -0
  35. data/clients/view_builder/views/builder.js +23 -0
  36. data/frameworks/prototype/prototype.js +1 -1
  37. data/frameworks/sproutcore/Core.js +32 -7
  38. data/frameworks/sproutcore/README +1 -1
  39. data/frameworks/sproutcore/animation/animation.js +411 -0
  40. data/frameworks/sproutcore/controllers/array.js +17 -9
  41. data/frameworks/sproutcore/controllers/collection.js +9 -110
  42. data/frameworks/sproutcore/controllers/controller.js +1 -1
  43. data/frameworks/sproutcore/controllers/object.js +2 -1
  44. data/frameworks/sproutcore/drag/drag.js +267 -56
  45. data/frameworks/sproutcore/drag/drag_data_source.js +24 -16
  46. data/frameworks/sproutcore/drag/drag_source.js +53 -42
  47. data/frameworks/sproutcore/drag/drop_target.js +2 -2
  48. data/frameworks/sproutcore/english.lproj/buttons.css +337 -236
  49. data/frameworks/sproutcore/english.lproj/core.css +115 -0
  50. data/frameworks/sproutcore/english.lproj/icons.css +227 -0
  51. data/{clients/sc_docs → frameworks/sproutcore}/english.lproj/images/indicator.gif +0 -0
  52. data/frameworks/sproutcore/english.lproj/images/sc-theme-sprite.png +0 -0
  53. data/frameworks/sproutcore/english.lproj/images/sc-theme-ysprite.png +0 -0
  54. data/frameworks/sproutcore/english.lproj/images/shared-icons.png +0 -0
  55. data/frameworks/sproutcore/english.lproj/menu.css +1 -1
  56. data/frameworks/sproutcore/english.lproj/strings.js +1 -1
  57. data/frameworks/sproutcore/english.lproj/theme.css +405 -31
  58. data/frameworks/sproutcore/foundation/application.js +15 -11
  59. data/frameworks/sproutcore/foundation/benchmark.js +1 -1
  60. data/frameworks/sproutcore/foundation/binding.js +2 -2
  61. data/frameworks/sproutcore/foundation/date.js +1 -1
  62. data/frameworks/sproutcore/foundation/error.js +1 -1
  63. data/frameworks/sproutcore/foundation/input_manager.js +32 -21
  64. data/frameworks/sproutcore/foundation/mock.js +1 -1
  65. data/frameworks/sproutcore/foundation/node_descriptor.js +9 -6
  66. data/frameworks/sproutcore/foundation/object.js +249 -177
  67. data/frameworks/sproutcore/foundation/page.js +5 -2
  68. data/frameworks/sproutcore/foundation/path_module.js +11 -10
  69. data/frameworks/sproutcore/foundation/responder.js +5 -2
  70. data/frameworks/sproutcore/foundation/routes.js +17 -13
  71. data/frameworks/sproutcore/foundation/run_loop.js +249 -11
  72. data/frameworks/sproutcore/foundation/server.js +1 -1
  73. data/frameworks/sproutcore/foundation/set.js +3 -3
  74. data/frameworks/sproutcore/foundation/string.js +5 -3
  75. data/frameworks/sproutcore/foundation/timer.js +371 -0
  76. data/frameworks/sproutcore/foundation/undo_manager.js +1 -1
  77. data/frameworks/sproutcore/foundation/unittest.js +3 -3
  78. data/frameworks/sproutcore/foundation/utils.js +161 -2
  79. data/frameworks/sproutcore/globals/panels.js +1 -1
  80. data/frameworks/sproutcore/globals/popups.js +4 -3
  81. data/frameworks/sproutcore/globals/window.js +44 -4
  82. data/frameworks/sproutcore/lib/button_views.rb +328 -0
  83. data/frameworks/sproutcore/lib/collection_view.rb +80 -0
  84. data/frameworks/sproutcore/lib/core_views.rb +281 -0
  85. data/frameworks/sproutcore/lib/form_views.rb +253 -0
  86. data/frameworks/sproutcore/lib/index.rhtml +2 -0
  87. data/frameworks/sproutcore/lib/menu_views.rb +88 -0
  88. data/frameworks/sproutcore/{foundation → mixins}/array.js +60 -29
  89. data/frameworks/sproutcore/mixins/control.js +265 -0
  90. data/frameworks/sproutcore/mixins/delegate_support.js +66 -0
  91. data/frameworks/sproutcore/{foundation → mixins}/observable.js +176 -6
  92. data/frameworks/sproutcore/mixins/scrollable.js +245 -0
  93. data/frameworks/sproutcore/mixins/selection_support.js +148 -0
  94. data/frameworks/sproutcore/mixins/validatable.js +152 -0
  95. data/frameworks/sproutcore/models/collection.js +5 -5
  96. data/frameworks/sproutcore/models/record.js +1 -1
  97. data/frameworks/sproutcore/models/store.js +1 -1
  98. data/frameworks/sproutcore/panes/dialog.js +1 -1
  99. data/frameworks/sproutcore/panes/manager.js +1 -1
  100. data/frameworks/sproutcore/panes/menu.js +1 -1
  101. data/frameworks/sproutcore/panes/overlay.js +2 -2
  102. data/frameworks/sproutcore/panes/panel.js +1 -1
  103. data/frameworks/sproutcore/panes/picker.js +1 -1
  104. data/frameworks/sproutcore/tests/controllers/array.rhtml +44 -4
  105. data/frameworks/sproutcore/tests/foundation/timer/invalidate.rhtml +33 -0
  106. data/frameworks/sproutcore/tests/foundation/timer/invokeLater.rhtml +145 -0
  107. data/frameworks/sproutcore/tests/foundation/timer/isPaused.rhtml +70 -0
  108. data/frameworks/sproutcore/tests/foundation/timer/schedule.rhtml +145 -0
  109. data/frameworks/sproutcore/tests/views/{scroll.rhtml → checkbox.rhtml} +3 -3
  110. data/frameworks/sproutcore/tests/views/{collection.rhtml → collection/base.rhtml} +33 -32
  111. data/frameworks/sproutcore/tests/views/collection/incremental_rendering.rhtml +260 -0
  112. data/frameworks/sproutcore/tests/views/image_cell.rhtml +19 -0
  113. data/frameworks/sproutcore/tests/views/label_item.rhtml +2 -4
  114. data/frameworks/sproutcore/tests/views/list.rhtml +2 -3
  115. data/frameworks/sproutcore/tests/views/list_item.rhtml +20 -0
  116. data/frameworks/sproutcore/tests/views/slider.rhtml +20 -0
  117. data/frameworks/sproutcore/tests/views/text_cell.rhtml +19 -0
  118. data/frameworks/sproutcore/tests/views/view/clippingFrame.rhtml +395 -0
  119. data/frameworks/sproutcore/tests/views/view/frame.rhtml +353 -0
  120. data/frameworks/sproutcore/tests/views/view/innerFrame.rhtml +347 -0
  121. data/frameworks/sproutcore/tests/views/view/isVisibleInWindow.rhtml +148 -0
  122. data/frameworks/sproutcore/tests/views/view/scrollFrame.rhtml +468 -0
  123. data/frameworks/sproutcore/validators/credit_card.js +33 -13
  124. data/frameworks/sproutcore/validators/date.js +26 -6
  125. data/frameworks/sproutcore/validators/email.js +21 -3
  126. data/frameworks/sproutcore/validators/not_empty.js +11 -1
  127. data/frameworks/sproutcore/validators/number.js +18 -4
  128. data/frameworks/sproutcore/validators/password.js +12 -1
  129. data/frameworks/sproutcore/validators/validator.js +204 -194
  130. data/frameworks/sproutcore/views/{button.js → button/button.js} +96 -94
  131. data/frameworks/sproutcore/views/button/checkbox.js +29 -0
  132. data/frameworks/sproutcore/views/button/disclosure.js +42 -0
  133. data/frameworks/sproutcore/views/button/radio.js +29 -0
  134. data/frameworks/sproutcore/views/{collection.js → collection/collection.js} +1373 -1024
  135. data/frameworks/sproutcore/views/collection/grid.js +124 -46
  136. data/frameworks/sproutcore/views/collection/image_cell.js +17 -46
  137. data/frameworks/sproutcore/views/collection/list.js +45 -35
  138. data/frameworks/sproutcore/views/collection/source_list.js +386 -0
  139. data/frameworks/sproutcore/views/collection/table.js +118 -0
  140. data/frameworks/sproutcore/views/container.js +7 -2
  141. data/frameworks/sproutcore/views/error_explanation.js +23 -10
  142. data/frameworks/sproutcore/views/{checkbox_field.js → field/checkbox_field.js} +16 -6
  143. data/frameworks/sproutcore/views/field/field.js +219 -0
  144. data/frameworks/sproutcore/views/{radio_field.js → field/radio_field.js} +27 -12
  145. data/frameworks/sproutcore/views/{select_field.js → field/select_field.js} +116 -90
  146. data/frameworks/sproutcore/views/{text_field.js → field/text_field.js} +57 -8
  147. data/frameworks/sproutcore/views/{textarea_field.js → field/textarea_field.js} +13 -3
  148. data/frameworks/sproutcore/views/filter_button.js +2 -2
  149. data/frameworks/sproutcore/views/form.js +3 -3
  150. data/frameworks/sproutcore/views/image.js +128 -21
  151. data/frameworks/sproutcore/views/inline_text_editor.js +1 -1
  152. data/frameworks/sproutcore/views/label.js +149 -92
  153. data/frameworks/sproutcore/views/list_item.js +225 -0
  154. data/frameworks/sproutcore/views/menu_item.js +10 -4
  155. data/frameworks/sproutcore/views/pagination.js +11 -4
  156. data/frameworks/sproutcore/views/popup_button.js +25 -21
  157. data/frameworks/sproutcore/views/popup_menu.js +10 -4
  158. data/frameworks/sproutcore/views/progress.js +29 -16
  159. data/frameworks/sproutcore/views/radio_group.js +1 -1
  160. data/frameworks/sproutcore/views/scroll.js +60 -20
  161. data/frameworks/sproutcore/views/segmented.js +1 -1
  162. data/frameworks/sproutcore/views/slider.js +132 -0
  163. data/frameworks/sproutcore/views/source_list_group.js +130 -0
  164. data/frameworks/sproutcore/views/spinner.js +1 -1
  165. data/frameworks/sproutcore/views/split.js +292 -0
  166. data/frameworks/sproutcore/views/split_divider.js +109 -0
  167. data/frameworks/sproutcore/views/tab.js +1 -1
  168. data/frameworks/sproutcore/views/toolbar.js +1 -1
  169. data/frameworks/sproutcore/views/view.js +1272 -591
  170. data/generators/client/templates/english.lproj/body.css +1 -1
  171. data/generators/controller/controller_generator.rb +1 -1
  172. data/generators/controller/templates/test.rhtml +2 -1
  173. data/generators/model/templates/test.rhtml +1 -1
  174. data/generators/test/templates/test.rhtml +1 -1
  175. data/generators/view/templates/test.rhtml +1 -1
  176. data/jsdoc/templates/sproutcore/class.tmpl +241 -338
  177. data/jsdoc/templates/sproutcore/default.css +105 -155
  178. data/jsdoc/templates/sproutcore/index.tmpl +43 -8
  179. data/jsdoc/templates/sproutcore/publish.js +9 -4
  180. data/lib/sproutcore/build_tools/html_builder.rb +29 -13
  181. data/lib/sproutcore/build_tools/resource_builder.rb +1 -1
  182. data/lib/sproutcore/bundle.rb +86 -25
  183. data/lib/sproutcore/jsdoc.rb +2 -0
  184. data/lib/sproutcore/version.rb +1 -1
  185. data/lib/sproutcore/view_helpers.rb +36 -3
  186. data/tasks/deployment.rake +1 -1
  187. metadata +69 -36
  188. data/clients/sc_docs/english.lproj/icons/small/next.png +0 -0
  189. data/clients/sc_docs/english.lproj/icons/small/reset.png +0 -0
  190. data/clients/sc_docs/english.lproj/images/gradients.png +0 -0
  191. data/clients/sc_docs/english.lproj/images/toolbar.png +0 -0
  192. data/clients/sc_docs/english.lproj/warning.rhtml +0 -6
  193. data/clients/sc_test_runner/english.lproj/warning.rhtml +0 -6
  194. data/frameworks/sproutcore/english.lproj/buttons.png +0 -0
  195. data/frameworks/sproutcore/english.lproj/collections.css +0 -82
  196. data/frameworks/sproutcore/english.lproj/images/buttons-sprite.png +0 -0
  197. data/frameworks/sproutcore/views/collection/collection_item.js +0 -36
  198. data/frameworks/sproutcore/views/collection/text_cell.js +0 -128
  199. data/frameworks/sproutcore/views/field.js +0 -214
  200. data/frameworks/sproutcore/views/workspace.js +0 -170
  201. data/generators/client/templates/english.lproj/controls.css +0 -0
  202. data/generators/framework/templates/english.lproj/body.css +0 -0
  203. data/generators/framework/templates/english.lproj/body.rhtml +0 -3
  204. data/generators/framework/templates/english.lproj/controls.css +0 -0
  205. data/lib/sproutcore/view_helpers/button_views.rb +0 -302
  206. data/lib/sproutcore/view_helpers/core_views.rb +0 -292
  207. data/lib/sproutcore/view_helpers/form_views.rb +0 -258
  208. data/lib/sproutcore/view_helpers/menu_views.rb +0 -94
data/History.txt CHANGED
@@ -1,3 +1,236 @@
1
+ == SVN HEAD
2
+
3
+ * Add sproutcore freeze:gems command to freeze latest SproutCore in your local project.
4
+
5
+ * Updated copyright to 2008.
6
+
7
+ * Converted all uses of setTimeout() in the framework to use run loop instead.
8
+
9
+ * Added invokeLater() methods to both SC.Object and Function. These
10
+ convenience methods will create a timer to execute a method or function at a
11
+ later time. If you need to execute code later, instead of setTimeout,
12
+ consider using myObject.invokeLater(0, 'methodName') ;
13
+
14
+ * New SC.Timer class provides more efficient triggers for timeouts, etc. The
15
+ timer class now also has unit tests and really awesome docs.
16
+
17
+ * [FIX] offsetParent, frame, clippingFrame, and innerFrame would all sometimes
18
+ return the wrong values in Firefox because of a bug that returns the wrong
19
+ offsetLeft and offsetTop when a parent element has a border.
20
+
21
+ * Fixed all SC unit tests that were failing (now that I can run them again).
22
+
23
+ * Test Runner now has a "Rerun Current Test" button that will rerun the
24
+ current test.
25
+
26
+ * Added convenience method $I() (or SC.inspect()) - converts an object to a
27
+ hash and then displays its key/value pairs. Useful for debugging.
28
+
29
+ * Fixed up test templates in generators so that they check for the presence
30
+ of main() before trying to fix it up. This was causing errors on new tests when added to frameworks.
31
+
32
+ * [FIX] invokeWhile() was implemented on real Array objects but not on
33
+ SC.Array mixin. This caused the controllers/controller test to fail. Now
34
+ fixed.
35
+
36
+ * Updated test runner to use new SproutCore.
37
+
38
+ * [FIX] The JSDoc template will now try to group items based on their full path, rather than just the top-most directory. This means views stored under views/buttons, for example, now appear in the group VIEWS/BUTTONS in the UI.
39
+
40
+ * Moved the base class for collections, buttons, and fields into their respective folders. This will appear them to appear under the correct location in the Doc viewer.
41
+
42
+ * [FIX] Grouped views in the source list without a visible header will
43
+ overlapping the following group, absorbing their clicks. Now they render
44
+ the proper size.
45
+
46
+ * SC.SliderView provides a horizontal slider. No vertical slider is currently
47
+ planned since those controls are so rare. If someone really needs one, please
48
+ enhance SC.SliderView to support it!
49
+
50
+ * slider_view helper creates a slider view + html
51
+
52
+ * Add example to sample_controls
53
+
54
+ * Converted docs for drag modules to JSDoc format.
55
+
56
+ * SourceListGroupViews now automatically collapse their group title if the
57
+ group value is null. Items will still be shown; they will just appear to be
58
+ "top level"
59
+
60
+ * JSDocs template was cutting the first sentance from a class description. This is now fixed.
61
+
62
+ * Added sc-build -d option to generate docs along with the build of your code.
63
+
64
+ * Updated sc_docs to work with updated SproutCore. Also adopts new look and feel and includes support for live search on all symbols defined in the
65
+ library (try it; it's cool - visit: http://localhost:4020/sproutcore/-docs)
66
+
67
+ * JSDoc template no longer generated highlighted JS source along with ref
68
+ docs. This was slowing things down and the output wasn't really that great
69
+ anyway.
70
+
71
+ * Tweaked JSdoc's Textile support to accept '-' as a bullet characters. Since
72
+ jsdoc strips all * at the beginning of lines you could not do bulletted lists
73
+ before. Now you can using -.
74
+
75
+ * Updated design of jsdoc documentation to make it easier to read.
76
+
77
+ * Renamed buttons-sprite.png to sc-theme-sprite.png. Added
78
+ sc-theme-ysprite.png. One is now used to hold all repeat-x and non-repeating
79
+ sprites while the other is used for repeat-y sprites only.
80
+
81
+ * SC.SplitView & SC.SplitDividerView provide support for draggable and
82
+ collapsable split views.
83
+
84
+ * SC.ListView now uses SC.ListItemView as its default example view instead of
85
+ SC.LabelView (or the old SC.TextCellView)
86
+
87
+ * Optimized performance of new build system when reloading ruby helpers on
88
+ every page load
89
+
90
+ * The Source List now provides support for the disclosure triangle. A disclosure is automatically shown if you have grouping enabled and you set the
91
+ groupVisibleKey property to anything other an null. The disclosure does not
92
+ yet auto-reveal during a drag.
93
+
94
+ * SC.DisclosureView - Shows a disclosure triangle button.
95
+
96
+ * [FIX] Left over calls to SC.TextCellView. Replaced with SC.LabelView.
97
+
98
+ * SC.WorkspaceView is now removed from the framework. It was always intended
99
+ for use in Sproutit applications and it is really too specific for such a generic framework.
100
+
101
+ * SC.LabelView gets a new API! Now in line with other SC.Control based
102
+ classes. Set value for the value, content/contentValueKey to display part
103
+ of some content.
104
+
105
+ * You can add view helpers to your own projects just by dropping them into
106
+ a lib directory inside your framework or client. If you need to load your
107
+ view helpers in a certain order, use the view_helper() method. See the view helpers in SproutCore for an example usage.
108
+
109
+ * The build system now reloads view helpers each time you load a page. This
110
+ means you no longer need to restart the sc-server when you make a change to
111
+ the view helper code.
112
+
113
+ * SproutCore view helpers are now stored in the framework itself along with
114
+ the JavaScript. This will make it easier to include the latest version of
115
+ the SproutCore framework in you app without having to install a new set of
116
+ build tools. This should basically eliminate the only frequently changing
117
+ part of the build tools.
118
+
119
+ * SC.SourceList and SC.ListItemView properties now use "content..Key"
120
+ convention for naming properties. If you have built code with the old
121
+ "content..Property" conventions, you will need to update your code.
122
+
123
+ * Added hint property to text_area_view helper that is required to display ghost text.
124
+
125
+ * added new SC.CheckboxView and SC.RadioView for creating simulated checkbox
126
+ and radio buttons. These buttons have more functions than their platform
127
+ native counterparts including mixed style and full styling support.
128
+
129
+ * Moved field view subclasses to views/field directory.
130
+
131
+ * Added SC.Validatable mixin that can be applied to any view to make it work
132
+ with validators. SC.FieldView now incorporates this mixin.
133
+
134
+ * Now if you add initMixin() to a mixin, it will be called automatically
135
+ whenever an object that includes the mixin is instantiated. You can use this
136
+ to perform any setup necessary for the mixin.
137
+
138
+ * Renamed SC.Control.contentValueProperty to SC.Control.contentValueKey to
139
+ be consistent with the rest of the API.
140
+
141
+ * Added updateContentWithValueObserver to SC.Control that will relay changes
142
+ to the value property back to the content object if you use the default
143
+ implementation.
144
+
145
+ * Changed SC.Control observers for various states that were once private to
146
+ public methods. This way you can override them in your subclasses if you need
147
+ to perform some extra processing and you want to make sure you do them in the
148
+ right order. You can also just add more observers as well.
149
+
150
+ * Added JSDoc info for Validators, SC.FieldView, SC.CheckboxFieldView
151
+
152
+ * Switched some Sc Theme CSS to use sc-button-view classname instead of more
153
+ generic a.button or a.regular.
154
+
155
+ * Added new addClassName, removeClassName, setClassName and hasClassName
156
+ methods on SC.View that are 7x faster than prototype's version.
157
+
158
+ * Integrated SC.Control into SC.ButtonView
159
+
160
+ * Changed SC.ButtonView.labelText and SC.ButtonView.labelSelector to
161
+ SC.ButtonView.title and SC.ButtonView.titleSelector to be more consistant with current naming conventions.
162
+
163
+ * [FIX] Some doc tags were wrong in SC.ScrollView and others.
164
+
165
+ * Improved documentations on SC.ImageView.
166
+
167
+ * SC.ImageView now includes the SC.Control mixin and can accept either a
168
+ CSS class name or a URL as its value. This makes it easy to switch an image
169
+ from using a sprite to use a custom-generated image and back again.
170
+
171
+ * SproutCore now includes some shared standard icons that you can use in your
172
+ own application, courtesy of IconDrawer (http://www.icondrawer.com).
173
+
174
+ * Generalized SC.Control's observer so that you can now use it to observe
175
+ changes to multiple properties on content. This should capture a very common pattern requires by collection item views. Most control-list SC.Views will
176
+ eventually adopt this mixin.
177
+
178
+ * Added ListItemView which will be used for rendering content in list views
179
+ and source list views. ListViewItem can render a name, icon, and optional
180
+ unread count.
181
+
182
+ * Changed displayProperty in SC.CollectionView to contentValueKey to match the new SC.Control pattern.
183
+
184
+ * SC.Control now has built in support for a value and content property. The value property is typically the value the control displays, while content is an object that you might pull a content value from. You can determine the proeprty of the content object to use as a value by setting the 'contentValueKey'. The contentValueKey can also be provided by the displayDelegate.
185
+
186
+ * Added SC.DelegateSupport mixin that can be used to support the delegate pattern.
187
+
188
+ * [FIX] Selection management would throw exception after a drag and drop.
189
+
190
+ * [FIX] Optimization in fmt() would through an exception if you passed it a
191
+ value that did not support toString().
192
+
193
+ * Moved selection management methods from CollectionController in independent
194
+ SC.SelectionSupport mixin. This mixin is now used by both
195
+ SC.CollectionController and SC.ArrayController so you can use either one to
196
+ manage a selection state. You can also apply this mixin to your own
197
+ controllers to manage selection state if you like (though this is not required
198
+ to manage selections.)
199
+
200
+ * Began to separate CSS rules into a core.css and a theme.css. The core.css
201
+ styles are generally required by SproutCore and should apply even if you build
202
+ your own theme. The theme.css rules apply to the SproutCore theme only and
203
+ can be overriden by your own CSS.
204
+
205
+ * Added SC.SourceListView and sc-theme styles for source lists. Source lists
206
+ support grouping if you enable this feature. See the new Collections2 tab in
207
+ the SampleControls app for an example source list.
208
+
209
+ * Added SC.TableView. This feature is in progress. See the new
210
+ Collections2 tab in the SampleControls app for an example table view.
211
+
212
+ * Changed asHTML and asText properties to innerHTML and innerText to match
213
+ their DOM equivalents.
214
+
215
+ * Renamed SC.CollectionItem mixin to SC.Control mixin. SC.Control mixin now
216
+ provides some standard functionality for all interactive controls such as
217
+ handling selection states, enabled and focus states.
218
+
219
+ * Removed support for :resize_options property in view helper, since
220
+ auto-resizing is no longer supported in SC.View (it never worked right anyway
221
+ and was not functionally very usable.)
222
+
223
+ * innerText property now uses TextNodes, making it about 50% faster than
224
+ innerHTML on FireFox.
225
+
226
+ * Added view helpers for list_view, scroll_view, grid_view, source_list_view,
227
+ and table_view. Also refactored collection view helpers into their own file.
228
+
229
+ * [FIX] CollectionView is now able to render items in groups.
230
+
231
+ * [FIX] SC.ObjectController: Avoid unwanted commit when oldValue == null && newValue == ''.
232
+
233
+
1
234
  == 0.9.0 2008-03-08
2
235
 
3
236
  * 1 major enhancement:
data/Manifest.txt CHANGED
@@ -10,15 +10,9 @@ clients/sc_docs/controllers/docs.js
10
10
  clients/sc_docs/core.js
11
11
  clients/sc_docs/english.lproj/body.css
12
12
  clients/sc_docs/english.lproj/body.rhtml
13
- clients/sc_docs/english.lproj/controls.css
14
- clients/sc_docs/english.lproj/icons/small/next.png
15
- clients/sc_docs/english.lproj/icons/small/reset.png
16
- clients/sc_docs/english.lproj/images/gradients.png
17
- clients/sc_docs/english.lproj/images/indicator.gif
18
- clients/sc_docs/english.lproj/images/toolbar.png
19
13
  clients/sc_docs/english.lproj/no_docs.rhtml
20
14
  clients/sc_docs/english.lproj/strings.js
21
- clients/sc_docs/english.lproj/warning.rhtml
15
+ clients/sc_docs/english.lproj/tabs.rhtml
22
16
  clients/sc_docs/fixtures/doc.js
23
17
  clients/sc_docs/main.js
24
18
  clients/sc_docs/models/doc.js
@@ -40,15 +34,27 @@ clients/sc_test_runner/english.lproj/images/indicator.gif
40
34
  clients/sc_test_runner/english.lproj/images/toolbar.png
41
35
  clients/sc_test_runner/english.lproj/no_tests.rhtml
42
36
  clients/sc_test_runner/english.lproj/strings.js
43
- clients/sc_test_runner/english.lproj/warning.rhtml
44
37
  clients/sc_test_runner/fixtures/test.js
45
38
  clients/sc_test_runner/main.js
46
39
  clients/sc_test_runner/models/test.js
47
40
  clients/sc_test_runner/views/runner_frame.js
48
41
  clients/sc_test_runner/views/test_label.js
42
+ clients/view_builder/builders/builder.js
43
+ clients/view_builder/builders/button.js
44
+ clients/view_builder/controllers/document.js
45
+ clients/view_builder/core.js
46
+ clients/view_builder/english.lproj/body.css
47
+ clients/view_builder/english.lproj/body.rhtml
48
+ clients/view_builder/english.lproj/controls.css
49
+ clients/view_builder/english.lproj/strings.js
50
+ clients/view_builder/main.js
51
+ clients/view_builder/tests/controllers/document.rhtml
52
+ clients/view_builder/tests/views/builder.rhtml
53
+ clients/view_builder/views/builder.js
49
54
  config/hoe.rb
50
55
  config/requirements.rb
51
56
  frameworks/prototype/prototype.js
57
+ frameworks/sproutcore/animation/animation.js
52
58
  frameworks/sproutcore/controllers/array.js
53
59
  frameworks/sproutcore/controllers/collection.js
54
60
  frameworks/sproutcore/controllers/controller.js
@@ -60,9 +66,12 @@ frameworks/sproutcore/drag/drag_source.js
60
66
  frameworks/sproutcore/drag/drop_target.js
61
67
  frameworks/sproutcore/english.lproj/blank.gif
62
68
  frameworks/sproutcore/english.lproj/buttons.css
63
- frameworks/sproutcore/english.lproj/buttons.png
64
- frameworks/sproutcore/english.lproj/collections.css
65
- frameworks/sproutcore/english.lproj/images/buttons-sprite.png
69
+ frameworks/sproutcore/english.lproj/core.css
70
+ frameworks/sproutcore/english.lproj/icons.css
71
+ frameworks/sproutcore/english.lproj/images/indicator.gif
72
+ frameworks/sproutcore/english.lproj/images/sc-theme-sprite.png
73
+ frameworks/sproutcore/english.lproj/images/sc-theme-ysprite.png
74
+ frameworks/sproutcore/english.lproj/images/shared-icons.png
66
75
  frameworks/sproutcore/english.lproj/images/sproutcore-logo.png
67
76
  frameworks/sproutcore/english.lproj/images/sticky-note.png
68
77
  frameworks/sproutcore/english.lproj/inline_text_editor.css
@@ -86,7 +95,6 @@ frameworks/sproutcore/english.lproj/tests.css
86
95
  frameworks/sproutcore/english.lproj/theme.css
87
96
  frameworks/sproutcore/foundation/animator.js
88
97
  frameworks/sproutcore/foundation/application.js
89
- frameworks/sproutcore/foundation/array.js
90
98
  frameworks/sproutcore/foundation/benchmark.js
91
99
  frameworks/sproutcore/foundation/binding.js
92
100
  frameworks/sproutcore/foundation/date.js
@@ -96,7 +104,6 @@ frameworks/sproutcore/foundation/json.js
96
104
  frameworks/sproutcore/foundation/mock.js
97
105
  frameworks/sproutcore/foundation/node_descriptor.js
98
106
  frameworks/sproutcore/foundation/object.js
99
- frameworks/sproutcore/foundation/observable.js
100
107
  frameworks/sproutcore/foundation/page.js
101
108
  frameworks/sproutcore/foundation/path_module.js
102
109
  frameworks/sproutcore/foundation/responder.js
@@ -105,13 +112,26 @@ frameworks/sproutcore/foundation/run_loop.js
105
112
  frameworks/sproutcore/foundation/server.js
106
113
  frameworks/sproutcore/foundation/set.js
107
114
  frameworks/sproutcore/foundation/string.js
115
+ frameworks/sproutcore/foundation/timer.js
108
116
  frameworks/sproutcore/foundation/undo_manager.js
109
117
  frameworks/sproutcore/foundation/unittest.js
110
118
  frameworks/sproutcore/foundation/utils.js
111
119
  frameworks/sproutcore/globals/panels.js
112
120
  frameworks/sproutcore/globals/popups.js
113
121
  frameworks/sproutcore/globals/window.js
122
+ frameworks/sproutcore/lib/button_views.rb
123
+ frameworks/sproutcore/lib/collection_view.rb
124
+ frameworks/sproutcore/lib/core_views.rb
125
+ frameworks/sproutcore/lib/form_views.rb
114
126
  frameworks/sproutcore/lib/index.rhtml
127
+ frameworks/sproutcore/lib/menu_views.rb
128
+ frameworks/sproutcore/mixins/array.js
129
+ frameworks/sproutcore/mixins/control.js
130
+ frameworks/sproutcore/mixins/delegate_support.js
131
+ frameworks/sproutcore/mixins/observable.js
132
+ frameworks/sproutcore/mixins/scrollable.js
133
+ frameworks/sproutcore/mixins/selection_support.js
134
+ frameworks/sproutcore/mixins/validatable.js
115
135
  frameworks/sproutcore/models/collection.js
116
136
  frameworks/sproutcore/models/record.js
117
137
  frameworks/sproutcore/models/store.js
@@ -129,14 +149,28 @@ frameworks/sproutcore/tests/controllers/object.rhtml
129
149
  frameworks/sproutcore/tests/foundation/application.rhtml
130
150
  frameworks/sproutcore/tests/foundation/array.rhtml
131
151
  frameworks/sproutcore/tests/foundation/object.rhtml
152
+ frameworks/sproutcore/tests/foundation/timer/invalidate.rhtml
153
+ frameworks/sproutcore/tests/foundation/timer/invokeLater.rhtml
154
+ frameworks/sproutcore/tests/foundation/timer/isPaused.rhtml
155
+ frameworks/sproutcore/tests/foundation/timer/schedule.rhtml
132
156
  frameworks/sproutcore/tests/globals/window.rhtml
133
157
  frameworks/sproutcore/tests/panes/pane.rhtml
134
- frameworks/sproutcore/tests/views/collection.rhtml
158
+ frameworks/sproutcore/tests/views/checkbox.rhtml
159
+ frameworks/sproutcore/tests/views/collection/base.rhtml
160
+ frameworks/sproutcore/tests/views/collection/incremental_rendering.rhtml
161
+ frameworks/sproutcore/tests/views/image_cell.rhtml
135
162
  frameworks/sproutcore/tests/views/label_item.rhtml
136
163
  frameworks/sproutcore/tests/views/list.rhtml
164
+ frameworks/sproutcore/tests/views/list_item.rhtml
137
165
  frameworks/sproutcore/tests/views/popup_button.rhtml
138
- frameworks/sproutcore/tests/views/scroll.rhtml
166
+ frameworks/sproutcore/tests/views/slider.rhtml
167
+ frameworks/sproutcore/tests/views/text_cell.rhtml
139
168
  frameworks/sproutcore/tests/views/text_field.rhtml
169
+ frameworks/sproutcore/tests/views/view/clippingFrame.rhtml
170
+ frameworks/sproutcore/tests/views/view/frame.rhtml
171
+ frameworks/sproutcore/tests/views/view/innerFrame.rhtml
172
+ frameworks/sproutcore/tests/views/view/isVisibleInWindow.rhtml
173
+ frameworks/sproutcore/tests/views/view/scrollFrame.rhtml
140
174
  frameworks/sproutcore/validators/credit_card.js
141
175
  frameworks/sproutcore/validators/date.js
142
176
  frameworks/sproutcore/validators/email.js
@@ -144,45 +178,51 @@ frameworks/sproutcore/validators/not_empty.js
144
178
  frameworks/sproutcore/validators/number.js
145
179
  frameworks/sproutcore/validators/password.js
146
180
  frameworks/sproutcore/validators/validator.js
147
- frameworks/sproutcore/views/button.js
148
- frameworks/sproutcore/views/checkbox_field.js
149
- frameworks/sproutcore/views/collection/collection_item.js
181
+ frameworks/sproutcore/views/button/button.js
182
+ frameworks/sproutcore/views/button/checkbox.js
183
+ frameworks/sproutcore/views/button/disclosure.js
184
+ frameworks/sproutcore/views/button/radio.js
185
+ frameworks/sproutcore/views/collection/collection.js
150
186
  frameworks/sproutcore/views/collection/grid.js
151
187
  frameworks/sproutcore/views/collection/image_cell.js
152
188
  frameworks/sproutcore/views/collection/list.js
153
- frameworks/sproutcore/views/collection/text_cell.js
154
- frameworks/sproutcore/views/collection.js
189
+ frameworks/sproutcore/views/collection/source_list.js
190
+ frameworks/sproutcore/views/collection/table.js
155
191
  frameworks/sproutcore/views/container.js
156
192
  frameworks/sproutcore/views/error_explanation.js
157
- frameworks/sproutcore/views/field.js
193
+ frameworks/sproutcore/views/field/checkbox_field.js
194
+ frameworks/sproutcore/views/field/field.js
195
+ frameworks/sproutcore/views/field/radio_field.js
196
+ frameworks/sproutcore/views/field/select_field.js
197
+ frameworks/sproutcore/views/field/text_field.js
198
+ frameworks/sproutcore/views/field/textarea_field.js
158
199
  frameworks/sproutcore/views/filter_button.js
159
200
  frameworks/sproutcore/views/form.js
160
201
  frameworks/sproutcore/views/image.js
161
202
  frameworks/sproutcore/views/inline_text_editor.js
162
203
  frameworks/sproutcore/views/label.js
204
+ frameworks/sproutcore/views/list_item.js
163
205
  frameworks/sproutcore/views/menu_item.js
164
206
  frameworks/sproutcore/views/pagination.js
165
207
  frameworks/sproutcore/views/popup_button.js
166
208
  frameworks/sproutcore/views/popup_menu.js
167
209
  frameworks/sproutcore/views/progress.js
168
- frameworks/sproutcore/views/radio_field.js
169
210
  frameworks/sproutcore/views/radio_group.js
170
211
  frameworks/sproutcore/views/scroll.js
171
212
  frameworks/sproutcore/views/segmented.js
172
- frameworks/sproutcore/views/select_field.js
213
+ frameworks/sproutcore/views/slider.js
214
+ frameworks/sproutcore/views/source_list_group.js
173
215
  frameworks/sproutcore/views/spinner.js
216
+ frameworks/sproutcore/views/split.js
217
+ frameworks/sproutcore/views/split_divider.js
174
218
  frameworks/sproutcore/views/tab.js
175
- frameworks/sproutcore/views/text_field.js
176
- frameworks/sproutcore/views/textarea_field.js
177
219
  frameworks/sproutcore/views/toolbar.js
178
220
  frameworks/sproutcore/views/view.js
179
- frameworks/sproutcore/views/workspace.js
180
221
  generators/client/client_generator.rb
181
222
  generators/client/README
182
223
  generators/client/templates/core.js
183
224
  generators/client/templates/english.lproj/body.css
184
225
  generators/client/templates/english.lproj/body.rhtml
185
- generators/client/templates/english.lproj/controls.css
186
226
  generators/client/templates/english.lproj/strings.js
187
227
  generators/client/templates/main.js
188
228
  generators/client/USAGE
@@ -193,9 +233,6 @@ generators/controller/USAGE
193
233
  generators/framework/framework_generator.rb
194
234
  generators/framework/README
195
235
  generators/framework/templates/core.js
196
- generators/framework/templates/english.lproj/body.css
197
- generators/framework/templates/english.lproj/body.rhtml
198
- generators/framework/templates/english.lproj/controls.css
199
236
  generators/framework/templates/english.lproj/strings.js
200
237
  generators/framework/USAGE
201
238
  generators/language/language_generator.rb
@@ -258,10 +295,6 @@ lib/sproutcore/merb/bundle_controller.rb
258
295
  lib/sproutcore/merb/router.rb
259
296
  lib/sproutcore/merb.rb
260
297
  lib/sproutcore/version.rb
261
- lib/sproutcore/view_helpers/button_views.rb
262
- lib/sproutcore/view_helpers/core_views.rb
263
- lib/sproutcore/view_helpers/form_views.rb
264
- lib/sproutcore/view_helpers/menu_views.rb
265
298
  lib/sproutcore/view_helpers.rb
266
299
  lib/sproutcore.rb
267
300
  License.txt