sproutcore 1.0.1049.pre.2 → 1.4.0.rc

Sign up to get free protection for your applications and to get access to all the features.
Files changed (552) hide show
  1. data/Rakefile +1 -1
  2. data/VERSION.yml +4 -4
  3. data/lib/Buildfile +1 -1
  4. data/lib/frameworks/sproutcore/Buildfile +13 -27
  5. data/lib/frameworks/sproutcore/apps/greenhouse/controllers/library.js +0 -42
  6. data/lib/frameworks/sproutcore/apps/greenhouse/controllers/view_configs.js +100 -0
  7. data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/app_page.js +1 -1
  8. data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/dialogs.js +33 -9
  9. data/lib/frameworks/sproutcore/apps/greenhouse/english.lproj/strings.js +5 -2
  10. data/lib/frameworks/sproutcore/apps/greenhouse/states/main.js +1 -0
  11. data/lib/frameworks/sproutcore/apps/greenhouse/states/modals.js +21 -11
  12. data/lib/frameworks/sproutcore/apps/welcome/controllers/targets.js +0 -7
  13. data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.css +6 -24
  14. data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.js +46 -36
  15. data/lib/frameworks/sproutcore/frameworks/animation/core.js +32 -50
  16. data/lib/frameworks/sproutcore/frameworks/animation/tests/core.js +2 -7
  17. data/lib/frameworks/sproutcore/frameworks/bootstrap/system/browser.js +1 -1
  18. data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +66 -42
  19. data/lib/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +4 -12
  20. data/lib/frameworks/sproutcore/frameworks/datastore/models/single_attribute.js +1 -1
  21. data/lib/frameworks/sproutcore/frameworks/{desktop/tests → datastore/tests/models}/datetime_recordattribute.js +0 -0
  22. data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/list_item.css +3 -27
  23. data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/touch-scroller.css +196 -0
  24. data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_fast_path.js +21 -8
  25. data/lib/frameworks/sproutcore/frameworks/desktop/panes/alert.js +3 -3
  26. data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +15 -19
  27. data/lib/frameworks/sproutcore/frameworks/desktop/panes/panel.js +22 -5
  28. data/lib/frameworks/sproutcore/frameworks/desktop/panes/picker.js +54 -12
  29. data/lib/frameworks/sproutcore/frameworks/desktop/panes/select_button.js +45 -18
  30. data/lib/frameworks/sproutcore/frameworks/desktop/system/drag.js +52 -32
  31. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/methods.js +3 -28
  32. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/ui.js +10 -30
  33. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/methods.js +17 -11
  34. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/date_field/ui.js +2 -1
  35. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/ui_simple.js +1 -1
  36. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list_item.js +20 -128
  37. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +39 -8
  38. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/methods.js +47 -23
  39. data/lib/frameworks/sproutcore/frameworks/desktop/views/button.js +90 -59
  40. data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +39 -29
  41. data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +15 -11
  42. data/lib/frameworks/sproutcore/frameworks/desktop/views/disclosure.js +16 -17
  43. data/lib/frameworks/sproutcore/frameworks/desktop/views/list_item.js +278 -457
  44. data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +5 -5
  45. data/lib/frameworks/sproutcore/frameworks/desktop/views/popup_button.js +101 -5
  46. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +87 -85
  47. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +278 -33
  48. data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +146 -60
  49. data/lib/frameworks/sproutcore/frameworks/desktop/views/select.js +80 -211
  50. data/lib/frameworks/sproutcore/frameworks/desktop/views/select_field.js +10 -1
  51. data/lib/frameworks/sproutcore/frameworks/desktop/views/slider.js +34 -33
  52. data/lib/frameworks/sproutcore/frameworks/desktop/views/split.js +248 -331
  53. data/lib/frameworks/sproutcore/frameworks/desktop/views/static_content.js +12 -1
  54. data/lib/frameworks/sproutcore/frameworks/desktop/views/web.js +1 -1
  55. data/lib/frameworks/sproutcore/frameworks/foundation/controllers/object.js +1 -1
  56. data/lib/frameworks/sproutcore/frameworks/foundation/core.js +2 -33
  57. data/lib/frameworks/sproutcore/frameworks/foundation/ext/run_loop.js +1 -1
  58. data/lib/frameworks/sproutcore/frameworks/foundation/license.js +11 -0
  59. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/button.js +6 -12
  60. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/content_display.js +9 -4
  61. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/control.js +1 -83
  62. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_text_field.js +7 -6
  63. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/selection_support.js +4 -2
  64. data/lib/frameworks/sproutcore/frameworks/foundation/panes/main.js +2 -1
  65. data/lib/frameworks/sproutcore/frameworks/foundation/panes/pane.js +107 -143
  66. data/lib/frameworks/sproutcore/frameworks/foundation/system/bundle.js +8 -4
  67. data/lib/frameworks/sproutcore/frameworks/foundation/system/core_query.js +4 -3
  68. data/lib/frameworks/sproutcore/frameworks/foundation/system/event.js +44 -33
  69. data/lib/frameworks/sproutcore/frameworks/foundation/system/exception_handler.js +85 -0
  70. data/lib/frameworks/sproutcore/frameworks/foundation/system/image_cache.js +9 -9
  71. data/lib/frameworks/sproutcore/frameworks/foundation/system/platform.js +114 -6
  72. data/lib/frameworks/sproutcore/frameworks/foundation/system/ready.js +37 -38
  73. data/lib/frameworks/sproutcore/frameworks/foundation/system/render_context.js +5 -33
  74. data/lib/frameworks/sproutcore/frameworks/foundation/system/response.js +17 -19
  75. data/lib/frameworks/sproutcore/frameworks/foundation/system/root_responder.js +311 -255
  76. data/lib/frameworks/sproutcore/frameworks/foundation/system/routes.js +3 -3
  77. data/lib/frameworks/sproutcore/frameworks/foundation/system/task_queue.js +10 -10
  78. data/lib/frameworks/sproutcore/frameworks/foundation/system/utils.js +53 -44
  79. data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/button/keyEquivalents.js +17 -16
  80. data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/staticLayout.js +0 -1
  81. data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/end.js +1 -1
  82. data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_style.js +3 -11
  83. data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/update.js +4 -2
  84. data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/timer/invokeLater.js +5 -7
  85. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/sendEvent.js +41 -0
  86. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/ui.js +2 -2
  87. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/clippingFrame.js +2 -2
  88. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/createLayer.js +2 -2
  89. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/layoutStyle.js +56 -118
  90. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/prepareContext.js +4 -12
  91. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/render.js +5 -48
  92. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayer.js +3 -3
  93. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/updateLayerLocation.js +2 -2
  94. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/viewDidResize.js +2 -24
  95. data/lib/frameworks/sproutcore/frameworks/foundation/validators/date_time.js +2 -0
  96. data/lib/frameworks/sproutcore/frameworks/foundation/views/field.js +3 -3
  97. data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +49 -21
  98. data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +85 -54
  99. data/lib/frameworks/sproutcore/frameworks/foundation/views/view.js +256 -1174
  100. data/lib/frameworks/sproutcore/frameworks/media/views/audio.js +81 -74
  101. data/lib/frameworks/sproutcore/frameworks/media/views/controls.js +2 -2
  102. data/lib/frameworks/sproutcore/frameworks/media/views/miniControls.js +1 -1
  103. data/lib/frameworks/sproutcore/frameworks/mobile/tests/views/button/ui.js +1 -8
  104. data/lib/frameworks/sproutcore/frameworks/mobile/views/button.js +1 -1
  105. data/lib/frameworks/sproutcore/frameworks/runtime/core.js +54 -25
  106. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +1 -11
  107. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +8 -5
  108. data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_queue.js +1 -1
  109. data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_set.js +24 -25
  110. data/lib/frameworks/sproutcore/frameworks/runtime/system/binding.js +9 -6
  111. data/lib/frameworks/sproutcore/frameworks/runtime/system/object.js +13 -6
  112. data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +26 -11
  113. data/lib/frameworks/sproutcore/frameworks/runtime/system/set.js +140 -33
  114. data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/guidFor.js +33 -0
  115. data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/object/base.js +48 -1
  116. data/lib/frameworks/sproutcore/frameworks/statechart/mixins/statechart.js +2 -3
  117. data/lib/frameworks/sproutcore/frameworks/testing/system/runner.js +1 -1
  118. data/lib/frameworks/sproutcore/themes/standard_theme/english.lproj/scroller.css +8 -4
  119. data/lib/sproutcore/helpers/entry_sorter.rb +14 -1
  120. data/sproutcore.gemspec +0 -2
  121. metadata +12 -443
  122. data/lib/frameworks/sproutcore/Gemfile +0 -8
  123. data/lib/frameworks/sproutcore/Gemfile.lock +0 -33
  124. data/lib/frameworks/sproutcore/apps/test_controls/Buildfile +0 -0
  125. data/lib/frameworks/sproutcore/apps/test_controls/controllers/categories.js +0 -108
  126. data/lib/frameworks/sproutcore/apps/test_controls/controllers/category.js +0 -31
  127. data/lib/frameworks/sproutcore/apps/test_controls/core.js +0 -29
  128. data/lib/frameworks/sproutcore/apps/test_controls/main.js +0 -14
  129. data/lib/frameworks/sproutcore/apps/test_controls/resources/buttons_page.js +0 -124
  130. data/lib/frameworks/sproutcore/apps/test_controls/resources/checkboxes_page.js +0 -45
  131. data/lib/frameworks/sproutcore/apps/test_controls/resources/flow_layout_page.js +0 -77
  132. data/lib/frameworks/sproutcore/apps/test_controls/resources/list_page.js +0 -40
  133. data/lib/frameworks/sproutcore/apps/test_controls/resources/loading.rhtml +0 -9
  134. data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.css +0 -54
  135. data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.js +0 -136
  136. data/lib/frameworks/sproutcore/apps/test_controls/resources/progress_page.js +0 -42
  137. data/lib/frameworks/sproutcore/apps/test_controls/resources/radio_page.js +0 -41
  138. data/lib/frameworks/sproutcore/apps/test_controls/resources/scroll_page.js +0 -76
  139. data/lib/frameworks/sproutcore/apps/test_controls/resources/segmented_page.js +0 -75
  140. data/lib/frameworks/sproutcore/apps/test_controls/resources/select_page.js +0 -60
  141. data/lib/frameworks/sproutcore/apps/test_controls/resources/sliders_page.js +0 -53
  142. data/lib/frameworks/sproutcore/apps/test_controls/resources/strings.js +0 -50
  143. data/lib/frameworks/sproutcore/apps/test_controls/resources/tab_page.js +0 -15
  144. data/lib/frameworks/sproutcore/apps/test_controls/resources/text_field_page.js +0 -40
  145. data/lib/frameworks/sproutcore/apps/welcome/english.lproj/images/main-bg.png +0 -0
  146. data/lib/frameworks/sproutcore/bin/edit_json.rb +0 -14
  147. data/lib/frameworks/sproutcore/bin/erubis +0 -14
  148. data/lib/frameworks/sproutcore/bin/prettify_json.rb +0 -14
  149. data/lib/frameworks/sproutcore/bin/rackup +0 -14
  150. data/lib/frameworks/sproutcore/bin/rake2thor +0 -14
  151. data/lib/frameworks/sproutcore/bin/sc-build +0 -14
  152. data/lib/frameworks/sproutcore/bin/sc-build-number +0 -14
  153. data/lib/frameworks/sproutcore/bin/sc-docs +0 -14
  154. data/lib/frameworks/sproutcore/bin/sc-gen +0 -14
  155. data/lib/frameworks/sproutcore/bin/sc-init +0 -14
  156. data/lib/frameworks/sproutcore/bin/sc-manifest +0 -14
  157. data/lib/frameworks/sproutcore/bin/sc-server +0 -14
  158. data/lib/frameworks/sproutcore/bin/sproutcore +0 -14
  159. data/lib/frameworks/sproutcore/bin/thin +0 -14
  160. data/lib/frameworks/sproutcore/bin/thor +0 -14
  161. data/lib/frameworks/sproutcore/frameworks/desktop/mixins/navigation_builder.js +0 -130
  162. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/button.js +0 -147
  163. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/checkbox.js +0 -87
  164. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/checkbox_control.js +0 -103
  165. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/disclosure.js +0 -82
  166. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/disclosure_control.js +0 -103
  167. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/image_button.js +0 -33
  168. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/list_item.js +0 -334
  169. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/masterDetail.js +0 -23
  170. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/panel.js +0 -34
  171. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/picker.js +0 -50
  172. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/segment.js +0 -79
  173. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/segmented.js +0 -172
  174. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/slider.js +0 -86
  175. data/lib/frameworks/sproutcore/frameworks/desktop/renderers/workspace.js +0 -22
  176. data/lib/frameworks/sproutcore/frameworks/desktop/views/file.js +0 -112
  177. data/lib/frameworks/sproutcore/frameworks/desktop/views/master_detail.js +0 -249
  178. data/lib/frameworks/sproutcore/frameworks/desktop/views/navigation.js +0 -237
  179. data/lib/frameworks/sproutcore/frameworks/desktop/views/navigation_bar.js +0 -181
  180. data/lib/frameworks/sproutcore/frameworks/desktop/views/workspace.js +0 -270
  181. data/lib/frameworks/sproutcore/frameworks/documentation/core.js +0 -0
  182. data/lib/frameworks/sproutcore/frameworks/forms/english.lproj/default_styles.css +0 -5
  183. data/lib/frameworks/sproutcore/frameworks/forms/english.lproj/strings.js +0 -15
  184. data/lib/frameworks/sproutcore/frameworks/forms/mixins/auto_hide.js +0 -85
  185. data/lib/frameworks/sproutcore/frameworks/forms/mixins/edit_mode.js +0 -43
  186. data/lib/frameworks/sproutcore/frameworks/forms/renderers/form.js +0 -24
  187. data/lib/frameworks/sproutcore/frameworks/forms/renderers/form_row.js +0 -24
  188. data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form.js +0 -15
  189. data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_checkbox_field.js +0 -15
  190. data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_field.js +0 -15
  191. data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_label.js +0 -15
  192. data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_radio_field.js +0 -15
  193. data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_row.js +0 -15
  194. data/lib/frameworks/sproutcore/frameworks/forms/tests/views/form_text_field.js +0 -15
  195. data/lib/frameworks/sproutcore/frameworks/forms/views/form.js +0 -266
  196. data/lib/frameworks/sproutcore/frameworks/forms/views/form_row.js +0 -188
  197. data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/images/sproutcore.png +0 -0
  198. data/lib/frameworks/sproutcore/frameworks/foundation/gestures/pinch.js +0 -81
  199. data/lib/frameworks/sproutcore/frameworks/foundation/gestures/swipe.js +0 -142
  200. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_mixin.js +0 -33
  201. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_resize.js +0 -74
  202. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +0 -415
  203. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/gestureable.js +0 -106
  204. data/lib/frameworks/sproutcore/frameworks/foundation/renderers/control.js +0 -122
  205. data/lib/frameworks/sproutcore/frameworks/foundation/renderers/image.js +0 -51
  206. data/lib/frameworks/sproutcore/frameworks/foundation/renderers/label.js +0 -96
  207. data/lib/frameworks/sproutcore/frameworks/foundation/renderers/renderer.js +0 -316
  208. data/lib/frameworks/sproutcore/frameworks/foundation/renderers/title.js +0 -108
  209. data/lib/frameworks/sproutcore/frameworks/foundation/renderers/view.js +0 -62
  210. data/lib/frameworks/sproutcore/frameworks/foundation/system/gesture.js +0 -245
  211. data/lib/frameworks/sproutcore/frameworks/foundation/system/theme.js +0 -108
  212. data/lib/frameworks/sproutcore/frameworks/foundation/tests/renderers/renderer/base.js +0 -170
  213. data/lib/frameworks/sproutcore/frameworks/foundation/tests/renderers/renderer/inheritance.js +0 -39
  214. data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/theme.js +0 -86
  215. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/pane/sendTouchEvent.js +0 -267
  216. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/animation.js +0 -321
  217. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/build.js +0 -85
  218. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/build_children.js +0 -89
  219. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/renderer.js +0 -443
  220. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/view/theme.js +0 -41
  221. data/lib/frameworks/sproutcore/frameworks/jquery/jquery.js +0 -6240
  222. data/lib/frameworks/sproutcore/frameworks/test +0 -77
  223. data/lib/frameworks/sproutcore/themes/ace/Buildfile +0 -0
  224. data/lib/frameworks/sproutcore/themes/ace/README.md +0 -161
  225. data/lib/frameworks/sproutcore/themes/ace/build +0 -2
  226. data/lib/frameworks/sproutcore/themes/ace/build-d +0 -2
  227. data/lib/frameworks/sproutcore/themes/ace/chance/README.md +0 -113
  228. data/lib/frameworks/sproutcore/themes/ace/chance/chance.rb +0 -203
  229. data/lib/frameworks/sproutcore/themes/ace/chance/lib/css.rb +0 -202
  230. data/lib/frameworks/sproutcore/themes/ace/chance/lib/slicedice.rb +0 -391
  231. data/lib/frameworks/sproutcore/themes/ace/chance/sc-theme.rb +0 -0
  232. data/lib/frameworks/sproutcore/themes/ace/chance/scripts/setup.rb +0 -126
  233. data/lib/frameworks/sproutcore/themes/ace/mockups/dark.png +0 -0
  234. data/lib/frameworks/sproutcore/themes/ace/mockups/dark.psd +0 -0
  235. data/lib/frameworks/sproutcore/themes/ace/mockups/light.png +0 -0
  236. data/lib/frameworks/sproutcore/themes/ace/mockups/light.psd +0 -0
  237. data/lib/frameworks/sproutcore/themes/ace/resources/images/1.png +0 -0
  238. data/lib/frameworks/sproutcore/themes/ace/resources/images/2.png +0 -0
  239. data/lib/frameworks/sproutcore/themes/ace/resources/images/3.png +0 -0
  240. data/lib/frameworks/sproutcore/themes/ace/resources/theme.css +0 -1832
  241. data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/images/1.png +0 -0
  242. data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/images/2.png +0 -0
  243. data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/images/3.png +0 -0
  244. data/lib/frameworks/sproutcore/themes/ace/scroll_test/resources/theme.css +0 -147
  245. data/lib/frameworks/sproutcore/themes/ace/scroll_test/scrollbars.html +0 -326
  246. data/lib/frameworks/sproutcore/themes/ace/src/body.css +0 -13
  247. data/lib/frameworks/sproutcore/themes/ace/src/collections/list.css +0 -4
  248. data/lib/frameworks/sproutcore/themes/ace/src/collections/list_item.css +0 -7
  249. data/lib/frameworks/sproutcore/themes/ace/src/collections/source_list/selection.png +0 -0
  250. data/lib/frameworks/sproutcore/themes/ace/src/collections/source_list/selection.psd +0 -0
  251. data/lib/frameworks/sproutcore/themes/ace/src/collections/source_list/source_list_view.css +0 -37
  252. data/lib/frameworks/sproutcore/themes/ace/src/containers/container.css +0 -3
  253. data/lib/frameworks/sproutcore/themes/ace/src/containers/masterdetail/master-detail.css +0 -26
  254. data/lib/frameworks/sproutcore/themes/ace/src/containers/split/split.css +0 -4
  255. data/lib/frameworks/sproutcore/themes/ace/src/containers/tab/tab.css +0 -9
  256. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button.js +0 -23
  257. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/active_button.png +0 -0
  258. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/active_button.psd +0 -0
  259. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/button_view.css +0 -53
  260. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/normal_button.png +0 -0
  261. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/normal_button.psd +0 -0
  262. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_active_button.png +0 -0
  263. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_active_button.psd +0 -0
  264. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_button.png +0 -0
  265. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/18px/selected_button.psd +0 -0
  266. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button.png +0 -0
  267. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button.psd +0 -0
  268. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_capsule.png +0 -0
  269. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_capsule.psd +0 -0
  270. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_pointer.png +0 -0
  271. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/active_button_pointer.psd +0 -0
  272. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/button_view.css +0 -144
  273. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button.png +0 -0
  274. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button.psd +0 -0
  275. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_capsule.png +0 -0
  276. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_capsule.psd +0 -0
  277. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_pointer.png +0 -0
  278. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/normal_button_pointer.psd +0 -0
  279. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button.png +0 -0
  280. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button.psd +0 -0
  281. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_capsule.png +0 -0
  282. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_capsule.psd +0 -0
  283. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_pointer.png +0 -0
  284. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_active_button_pointer.psd +0 -0
  285. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button.png +0 -0
  286. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button.psd +0 -0
  287. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_capsule.png +0 -0
  288. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_capsule.psd +0 -0
  289. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_pointer.png +0 -0
  290. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/24px/selected_button_pointer.psd +0 -0
  291. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button.png +0 -0
  292. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button.psd +0 -0
  293. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button_pointer.png +0 -0
  294. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/active_button_pointer.psd +0 -0
  295. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/button_view_30.css +0 -111
  296. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button.png +0 -0
  297. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button.psd +0 -0
  298. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button_pointer.png +0 -0
  299. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/normal_button_pointer.psd +0 -0
  300. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button.png +0 -0
  301. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button.psd +0 -0
  302. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button_pointer.png +0 -0
  303. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_active_button_pointer.psd +0 -0
  304. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button.png +0 -0
  305. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button.psd +0 -0
  306. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button_pointer.png +0 -0
  307. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/30px/selected_button_pointer.psd +0 -0
  308. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/active_button.png +0 -0
  309. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/active_button.psd +0 -0
  310. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/button_view.css +0 -57
  311. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/normal_button.png +0 -0
  312. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/normal_button.psd +0 -0
  313. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_active_button.png +0 -0
  314. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_active_button.psd +0 -0
  315. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_button.png +0 -0
  316. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/44px/selected_button.psd +0 -0
  317. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/button_view/button_view.css +0 -56
  318. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed.png +0 -0
  319. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed.psd +0 -0
  320. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed_active.png +0 -0
  321. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_closed_active.psd +0 -0
  322. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open.png +0 -0
  323. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open.psd +0 -0
  324. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open_active.png +0 -0
  325. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_open_active.psd +0 -0
  326. data/lib/frameworks/sproutcore/themes/ace/src/controls/buttons/disclosure_view/disclosure_view.css +0 -64
  327. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox.css +0 -25
  328. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked.png +0 -0
  329. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked.psd +0 -0
  330. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked_active.png +0 -0
  331. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_checked_active.psd +0 -0
  332. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed.png +0 -0
  333. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed.psd +0 -0
  334. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed_active.png +0 -0
  335. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_mixed_active.psd +0 -0
  336. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked.png +0 -0
  337. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked.psd +0 -0
  338. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked_active.png +0 -0
  339. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/14px/checkbox_unchecked_active.psd +0 -0
  340. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox.css +0 -25
  341. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked.png +0 -0
  342. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked.psd +0 -0
  343. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked_active.png +0 -0
  344. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_checked_active.psd +0 -0
  345. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed.png +0 -0
  346. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed.psd +0 -0
  347. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed_active.png +0 -0
  348. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_mixed_active.psd +0 -0
  349. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked.png +0 -0
  350. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked.psd +0 -0
  351. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked_active.png +0 -0
  352. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/16px/checkbox_unchecked_active.psd +0 -0
  353. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/checkbox.css +0 -4
  354. data/lib/frameworks/sproutcore/themes/ace/src/controls/checkboxes/checkbox_control.css +0 -31
  355. data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view.css +0 -70
  356. data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_content.png +0 -0
  357. data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_content.psd +0 -0
  358. data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_indeterminate_content.psd +0 -0
  359. data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_track.png +0 -0
  360. data/lib/frameworks/sproutcore/themes/ace/src/controls/progress/progress_view/progress_view_track.psd +0 -0
  361. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio.css +0 -61
  362. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_active.png +0 -0
  363. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_active.psd +0 -0
  364. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed.png +0 -0
  365. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed.psd +0 -0
  366. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed_active.png +0 -0
  367. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_mixed_active.psd +0 -0
  368. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected.png +0 -0
  369. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected.psd +0 -0
  370. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected_active.png +0 -0
  371. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_selected_active.psd +0 -0
  372. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_unselected.png +0 -0
  373. data/lib/frameworks/sproutcore/themes/ace/src/controls/radio/radio_unselected.psd +0 -0
  374. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/horizontal.css +0 -77
  375. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/thumb.png +0 -0
  376. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/thumb.psd +0 -0
  377. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows.png +0 -0
  378. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows.psd +0 -0
  379. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows_active.png +0 -0
  380. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/horizontal/track_and_arrows_active.psd +0 -0
  381. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical.psd +0 -0
  382. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/thumb.png +0 -0
  383. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/thumb.psd +0 -0
  384. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows.png +0 -0
  385. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows.psd +0 -0
  386. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows_active.png +0 -0
  387. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/track_and_arrows_active.psd +0 -0
  388. data/lib/frameworks/sproutcore/themes/ace/src/controls/scroll/vertical/vertical.css +0 -74
  389. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented.css +0 -92
  390. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_active.png +0 -0
  391. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_active.psd +0 -0
  392. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_normal.png +0 -0
  393. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_normal.psd +0 -0
  394. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected.png +0 -0
  395. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected.psd +0 -0
  396. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected_active.png +0 -0
  397. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/18px/segmented_selected_active.psd +0 -0
  398. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented.css +0 -87
  399. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_active.png +0 -0
  400. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_active.psd +0 -0
  401. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_normal.png +0 -0
  402. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_normal.psd +0 -0
  403. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected.png +0 -0
  404. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected.psd +0 -0
  405. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected_active.png +0 -0
  406. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/24px/segmented_selected_active.psd +0 -0
  407. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented.css +0 -93
  408. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_active.png +0 -0
  409. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_active.psd +0 -0
  410. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_normal.png +0 -0
  411. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_normal.psd +0 -0
  412. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected.png +0 -0
  413. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected.psd +0 -0
  414. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected_active.png +0 -0
  415. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/30px/segmented_selected_active.psd +0 -0
  416. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented.css +0 -101
  417. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_active.png +0 -0
  418. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_active.psd +0 -0
  419. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_normal.png +0 -0
  420. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_normal.psd +0 -0
  421. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected.png +0 -0
  422. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected.psd +0 -0
  423. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected_active.png +0 -0
  424. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/44px/segmented_selected_active.psd +0 -0
  425. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/segmented.css +0 -73
  426. data/lib/frameworks/sproutcore/themes/ace/src/controls/segmented/segmented.js +0 -0
  427. data/lib/frameworks/sproutcore/themes/ace/src/controls/select/active_select.png +0 -0
  428. data/lib/frameworks/sproutcore/themes/ace/src/controls/select/active_select.psd +0 -0
  429. data/lib/frameworks/sproutcore/themes/ace/src/controls/select/menu.png +0 -0
  430. data/lib/frameworks/sproutcore/themes/ace/src/controls/select/normal_select.png +0 -0
  431. data/lib/frameworks/sproutcore/themes/ace/src/controls/select/normal_select.psd +0 -0
  432. data/lib/frameworks/sproutcore/themes/ace/src/controls/select/select.css +0 -45
  433. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob.png +0 -0
  434. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob.psd +0 -0
  435. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob_active.png +0 -0
  436. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/knob_active.psd +0 -0
  437. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/14px/slider.css +0 -43
  438. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob.png +0 -0
  439. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob.psd +0 -0
  440. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob_active.png +0 -0
  441. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/knob_active.psd +0 -0
  442. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/16px/slider.css +0 -44
  443. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob.png +0 -0
  444. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob.psd +0 -0
  445. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob_active.png +0 -0
  446. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/knob_active.psd +0 -0
  447. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/slider.css +0 -44
  448. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/track.png +0 -0
  449. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/22px/track.psd +0 -0
  450. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/slider.css +0 -3
  451. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/slider.js +0 -27
  452. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/track.png +0 -0
  453. data/lib/frameworks/sproutcore/themes/ace/src/controls/slider/track.psd +0 -0
  454. data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch.psd +0 -0
  455. data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_handle.png +0 -0
  456. data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_handle.psd +0 -0
  457. data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_off.png +0 -0
  458. data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_off.psd +0 -0
  459. data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_on.png +0 -0
  460. data/lib/frameworks/sproutcore/themes/ace/src/controls/switch/24px/switch_on.psd +0 -0
  461. data/lib/frameworks/sproutcore/themes/ace/src/core/loading.css +0 -50
  462. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button.png +0 -0
  463. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button.psd +0 -0
  464. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_capsule.png +0 -0
  465. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_capsule.psd +0 -0
  466. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_pointer.png +0 -0
  467. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/active_button_pointer.psd +0 -0
  468. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/button_view.css +0 -142
  469. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button.png +0 -0
  470. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button.psd +0 -0
  471. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_capsule.png +0 -0
  472. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_capsule.psd +0 -0
  473. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_pointer.png +0 -0
  474. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/normal_button_pointer.psd +0 -0
  475. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button.png +0 -0
  476. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button.psd +0 -0
  477. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_capsule.png +0 -0
  478. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_capsule.psd +0 -0
  479. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_pointer.png +0 -0
  480. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_active_button_pointer.psd +0 -0
  481. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button.png +0 -0
  482. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button.psd +0 -0
  483. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_capsule.png +0 -0
  484. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_capsule.psd +0 -0
  485. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_pointer.png +0 -0
  486. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/24px/selected_button_pointer.psd +0 -0
  487. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button.png +0 -0
  488. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button.psd +0 -0
  489. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button_pointer.png +0 -0
  490. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/active_button_pointer.psd +0 -0
  491. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/button_view_30.css +0 -111
  492. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button.png +0 -0
  493. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button.psd +0 -0
  494. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button_pointer.png +0 -0
  495. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/normal_button_pointer.psd +0 -0
  496. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button.png +0 -0
  497. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button.psd +0 -0
  498. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button_pointer.png +0 -0
  499. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_active_button_pointer.psd +0 -0
  500. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button.png +0 -0
  501. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button.psd +0 -0
  502. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button_pointer.png +0 -0
  503. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/30px/selected_button_pointer.psd +0 -0
  504. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/button.css +0 -20
  505. data/lib/frameworks/sproutcore/themes/ace/src/dark/buttons/button.js +0 -3
  506. data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/form.js +0 -21
  507. data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/form_row.js +0 -24
  508. data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/iphone.css +0 -51
  509. data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/iphone.js +0 -14
  510. data/lib/frameworks/sproutcore/themes/ace/src/form/iphone/label.js +0 -32
  511. data/lib/frameworks/sproutcore/themes/ace/src/panels/pane.css +0 -3
  512. data/lib/frameworks/sproutcore/themes/ace/src/panels/panel.css +0 -70
  513. data/lib/frameworks/sproutcore/themes/ace/src/panels/panel.png +0 -0
  514. data/lib/frameworks/sproutcore/themes/ace/src/panels/panel.psd +0 -0
  515. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark.png +0 -0
  516. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark.psd +0 -0
  517. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark_active.png +0 -0
  518. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/checkmark_active.psd +0 -0
  519. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/down.png +0 -0
  520. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/down.psd +0 -0
  521. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu.css +0 -154
  522. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu.png +0 -0
  523. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu.psd +0 -0
  524. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu_item.png +0 -0
  525. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/menu_item.psd +0 -0
  526. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/up.png +0 -0
  527. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/menu/up.psd +0 -0
  528. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/picker.css +0 -0
  529. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/picker.js +0 -1
  530. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/picker.js +0 -14
  531. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.css +0 -271
  532. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.js +0 -5
  533. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.png +0 -0
  534. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover.psd +0 -0
  535. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_empty.png +0 -0
  536. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_empty.psd +0 -0
  537. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_notoolbar.png +0 -0
  538. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_notoolbar.psd +0 -0
  539. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers.png +0 -0
  540. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers.psd +0 -0
  541. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers_notoolbar.png +0 -0
  542. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_pointers_notoolbar.psd +0 -0
  543. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/popover_sourcelist.css +0 -5
  544. data/lib/frameworks/sproutcore/themes/ace/src/panels/picker/popover/workspace.js +0 -51
  545. data/lib/frameworks/sproutcore/themes/ace/src/theme.js +0 -12
  546. data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/selection.png +0 -0
  547. data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/toolbar.css +0 -8
  548. data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/toolbar.png +0 -0
  549. data/lib/frameworks/sproutcore/themes/ace/src/toolbars/normal/toolbar.psd +0 -0
  550. data/lib/frameworks/sproutcore/themes/ace/src/toolbars/panel_header/panel_header.png +0 -0
  551. data/lib/frameworks/sproutcore/themes/ace/src/toolbars/panel_header/panel_header.psd +0 -0
  552. data/lib/frameworks/sproutcore/themes/empty_theme/theme.js +0 -16
@@ -234,9 +234,9 @@ SC.routes = SC.Object.create({
234
234
  }
235
235
 
236
236
  if (this.get('location') !== loc) {
237
- SC.RunLoop.begin();
238
- this.set('location', loc);
239
- SC.RunLoop.end();
237
+ SC.run(function() {
238
+ this.set('location', loc);
239
+ }, this);
240
240
  }
241
241
  },
242
242
 
@@ -47,7 +47,7 @@ SC.TaskQueue = SC.Task.extend({
47
47
  */
48
48
  hasTasks: function() {
49
49
  return this._tasks.length > 0;
50
- }.property("taskCount").cacheable(),
50
+ }.property('taskCount').cacheable(),
51
51
 
52
52
  /**
53
53
  Returns the number of tasks in the queue.
@@ -61,7 +61,7 @@ SC.TaskQueue = SC.Task.extend({
61
61
  */
62
62
  push: function(task) {
63
63
  this._tasks.push(task);
64
- this.notifyPropertyChange("taskCount");
64
+ this.notifyPropertyChange('taskCount');
65
65
  },
66
66
 
67
67
  /**
@@ -73,7 +73,7 @@ SC.TaskQueue = SC.Task.extend({
73
73
 
74
74
  // otherwise, return the first one in the queue
75
75
  var next = this._tasks.shift();
76
- this.notifyPropertyChange("taskCount");
76
+ this.notifyPropertyChange('taskCount');
77
77
  return next;
78
78
  },
79
79
 
@@ -83,20 +83,20 @@ SC.TaskQueue = SC.Task.extend({
83
83
  */
84
84
  _taskCountDidChange: function() {
85
85
  this._setupIdle();
86
- }.observes("taskCount"),
86
+ }.observes('taskCount'),
87
87
 
88
88
  /**
89
89
  Sets up the scheduled idling check if needed and applicable.
90
90
  @private
91
91
  */
92
92
  _setupIdle: function() {
93
- if (this.get("runWhenIdle") && !this._idleIsScheduled && this.get("taskCount") > 0) {
93
+ if (this.get('runWhenIdle') && !this._idleIsScheduled && this.get('taskCount') > 0) {
94
94
  var self = this;
95
95
  setTimeout(
96
96
  function(){
97
97
  self._idleEntry();
98
98
  },
99
- this.get("interval")
99
+ this.get('interval')
100
100
  );
101
101
  this._idleIsScheduled = YES;
102
102
  }
@@ -109,13 +109,13 @@ SC.TaskQueue = SC.Task.extend({
109
109
  _idleEntry: function() {
110
110
  this._idleIsScheduled = NO;
111
111
  var last = SC.RunLoop.lastRunLoopEnd;
112
- if (Date.now() - last > this.get("minimumIdleDuration")) {
112
+ if (Date.now() - last > this.get('minimumIdleDuration')) {
113
113
  // if no recent events (within < 1s)
114
114
  this.run();
115
115
  } else {
116
- SC.RunLoop.begin();
117
- this._setupIdle();
118
- SC.RunLoop.end();
116
+ SC.run(function() {
117
+ this._setupIdle();
118
+ }, this);
119
119
  SC.RunLoop.lastRunLoopEnd = last; // we were never here
120
120
  }
121
121
  },
@@ -23,7 +23,7 @@ SC.mixin( /** @scope SC */ {
23
23
 
24
24
  Use this method when you want to cause a file to be downloaded to a users
25
25
  desktop instead of having it display in the web browser. Note that your
26
- server must return a header indicating that the file is intended for
26
+ server must return a header indicating that the file is intended for
27
27
  download also.
28
28
  */
29
29
  download: function(path) {
@@ -50,7 +50,7 @@ SC.mixin( /** @scope SC */ {
50
50
  document.body.removeChild(document.getElementById(frameId));
51
51
  frameId = null;
52
52
  } ;
53
- var t = r.invokeLater(null, 2000);
53
+ r.invokeLater(null, 2000);
54
54
  }
55
55
  //remove possible IE7 leak
56
56
  tempDLIFrame = null;
@@ -267,14 +267,17 @@ SC.mixin( /** @scope SC */ {
267
267
  @param width {Number} The fixed width to assume the text will fill
268
268
  @param style {String} A CSS style declaration. E.g., 'font-weight: bold'
269
269
  @param classNames {Array} An array of class names that may affect the style
270
+ @param ignoreEscape {Boolean} To NOT html escape the string.
270
271
  @returns {Number} The height of the text given the passed parameters
271
272
  */
272
- heightForString: function(str, width, style, classNames) {
273
+ heightForString: function(str, width, style, classNames, ignoreEscape) {
273
274
  var elem = this._heightCalcElement, classes, height;
274
-
275
+
276
+ if(!ignoreEscape) str = SC.RenderContext.escapeHTML(str);
277
+
275
278
  // Coalesce the array of class names to one string, if the array exists
276
279
  classes = (classNames && SC.typeOf(classNames) === SC.T_ARRAY) ? classNames.join(' ') : '';
277
-
280
+
278
281
  if (!width) width = 100; // default to 100 pixels
279
282
 
280
283
  // Only create the offscreen element once, then cache it
@@ -299,18 +302,20 @@ SC.mixin( /** @scope SC */ {
299
302
  },
300
303
 
301
304
  /**
302
- Sets up a string measuring environment.
305
+ Sets up a string measuring environment.
303
306
 
304
- You may want to use this, in conjunction with teardownStringMeasurement and
305
- measureString, instead of metricsForString, if you will be measuring many strings
306
- with the same settings. It would be a lot more efficient, as it would only prepare
307
- and teardown once instead of several times.
307
+ You may want to use this, in conjunction with teardownStringMeasurement and
308
+ measureString, instead of metricsForString, if you will be measuring many
309
+ strings with the same settings. It would be a lot more efficient, as it
310
+ would only prepare and teardown once instead of several times.
308
311
 
309
- @param exampleElement The example element to grab styles from, or the style string to use.
310
- @param classNames {String} (Optional) Class names to add to the test element.
312
+ @param exampleElement The example element to grab styles from, or the style
313
+ string to use.
314
+ @param classNames {String} (Optional) Class names to add to the test element.
311
315
  */
312
316
  prepareStringMeasurement: function(exampleElement, classNames) {
313
- var element = this._metricsCalculationElement, classes, styles, style;
317
+ var element = this._metricsCalculationElement, classes, styles, style,
318
+ cqElem;
314
319
 
315
320
  // collect the class names
316
321
  classes = SC.A(classNames).join(' ');
@@ -320,7 +325,8 @@ SC.mixin( /** @scope SC */ {
320
325
  element = this._metricsCalculationElement = document.createElement("div");
321
326
  document.body.insertBefore(element, null);
322
327
  }
323
-
328
+
329
+ cqElem = SC.$(element);
324
330
  // two possibilities: example element or type string
325
331
  if (SC.typeOf(exampleElement) != SC.T_STRING) {
326
332
  var computed = null;
@@ -333,6 +339,7 @@ SC.mixin( /** @scope SC */ {
333
339
  // set (lovely cssText property here helps a lot—if it works. Unfortunately, only Safari supplies it.)
334
340
  style = computed.cssText;
335
341
 
342
+
336
343
  // if that didn't work (Safari-only?) go alternate route. This is SLOW code...
337
344
  if (!style || style.trim() === "") {
338
345
  // there is only one way to do it...
@@ -366,7 +373,7 @@ SC.mixin( /** @scope SC */ {
366
373
  else
367
374
  {
368
375
  // set style
369
- element.setAttribute("style", style + "; position:absolute; left: 0px; top: 0px; bottom: auto; right: auto; width: auto; height: auto;");
376
+ cqElem.attr("style", style + "; position:absolute; left: 0px; top: 0px; bottom: auto; right: auto; width: auto; height: auto;");
370
377
  }
371
378
 
372
379
  // clean up
@@ -376,7 +383,7 @@ SC.mixin( /** @scope SC */ {
376
383
  style = exampleElement;
377
384
 
378
385
  // set style
379
- element.setAttribute("style", style + "; position:absolute; left: 0px; top: 0px; bottom: auto; right: auto; width: auto; height: auto;");
386
+ cqElem.attr("style", style + "; position:absolute; left: 0px; top: 0px; bottom: auto; right: auto; width: auto; height: auto;");
380
387
  }
381
388
 
382
389
  element.className = classes;
@@ -384,13 +391,13 @@ SC.mixin( /** @scope SC */ {
384
391
  },
385
392
 
386
393
  /**
387
- Tears down the string measurement environment. Usually, this doesn't _have_
388
- to be called, but there are too many what ifs: for example, what if the measurement
389
- environment has a bright green background and is over 10,000px wide? Guess what: it will
390
- become visible on the screen.
394
+ Tears down the string measurement environment. Usually, this doesn't _have_
395
+ to be called, but there are too many what ifs: for example, what if the measurement
396
+ environment has a bright green background and is over 10,000px wide? Guess what: it will
397
+ become visible on the screen.
391
398
 
392
- So, generally, we tear the measurement environment down so that it doesn't cause issue.
393
- However, we keep the DOM element for efficiency.
399
+ So, generally, we tear the measurement environment down so that it doesn't cause issue.
400
+ However, we keep the DOM element for efficiency.
394
401
  */
395
402
  teardownStringMeasurement: function() {
396
403
  var element = this._metricsCalculationElement;
@@ -403,13 +410,16 @@ SC.mixin( /** @scope SC */ {
403
410
  },
404
411
 
405
412
  /**
406
- Measures a string in the prepared environment.
413
+ Measures a string in the prepared environment.
407
414
 
408
- An easier and simpler alternative (but less efficient for bulk measuring) is metricsForString.
415
+ An easier and simpler alternative (but less efficient for bulk measuring) is metricsForString.
409
416
 
410
- @param string {String} The string to measure.
417
+ @param string {String} The string to measure.
418
+ @param ignoreEscape {Boolean} To NOT html escape the string.
411
419
  */
412
- measureString: function(string) {
420
+ measureString: function(string, ignoreEscape) {
421
+ if(!ignoreEscape) string = SC.RenderContext.escapeHTML(string);
422
+
413
423
  var element = this._metricsCalculationElement;
414
424
  if (!element) {
415
425
  throw "measureString requires a string measurement environment to be set up. Did you mean metricsForString?";
@@ -429,19 +439,20 @@ SC.mixin( /** @scope SC */ {
429
439
  return result;
430
440
  },
431
441
 
432
-
433
442
  /**
434
- Given a string and an example element or style string, and an optional
435
- set of class names, calculates the width and height of that block of text.
443
+ Given a string and an example element or style string, and an optional
444
+ set of class names, calculates the width and height of that block of text.
436
445
 
437
- To constrain the width, set max-width on the exampleElement or in the style string.
446
+ To constrain the width, set max-width on the exampleElement or in the style string.
438
447
 
439
- @param string {String} The string to measure.
440
- @param exampleElement The example element to grab styles from, or the style string to use.
441
- @param classNames {String} (Optional) Class names to add to the test element.
448
+ @param string {String} The string to measure.
449
+ @param exampleElement The example element to grab styles from, or the style string to use.
450
+ @param classNames {String} (Optional) Class names to add to the test element.
451
+ @param ignoreEscape {Boolean} To NOT html escape the string.
442
452
  */
443
- metricsForString: function(string, exampleElement, classNames)
444
- {
453
+ metricsForString: function(string, exampleElement, classNames, ignoreEscape) {
454
+ if(!ignoreEscape) string = SC.RenderContext.escapeHTML(string);
455
+
445
456
  SC.prepareStringMeasurement(exampleElement, classNames);
446
457
  var result = SC.measureString(string);
447
458
  SC.teardownStringMeasurement();
@@ -609,12 +620,11 @@ SC.mixin( /** @scope SC */ {
609
620
  convertHexToHsv: function (hex) {
610
621
  var rgb = this.expandColor(hex),
611
622
  max = Math.max(Math.max(rgb[0], rgb[1]), rgb[2]),
612
- min = Math.min(Math.min(rgb[0], rgb[1]), rgb[2]);
613
-
614
- var h = (max == min) ? 0 : ((max == rgb[0]) ? ((rgb[1]-rgb[2])/(max-min)/6) : ((max == rgb[1]) ? ((rgb[2]-rgb[0])/(max-min)/6+1/3) : ((rgb[0]-rgb[1])/(max-min)/6+2/3)));
623
+ min = Math.min(Math.min(rgb[0], rgb[1]), rgb[2]),
624
+ s = (max === 0) ? 0 : (1 - min/max),
625
+ v = max/255,
626
+ h = (max == min) ? 0 : ((max == rgb[0]) ? ((rgb[1]-rgb[2])/(max-min)/6) : ((max == rgb[1]) ? ((rgb[2]-rgb[0])/(max-min)/6+1/3) : ((rgb[0]-rgb[1])/(max-min)/6+2/3)));
615
627
  h = (h < 0) ? (h + 1) : ((h > 1) ? (h - 1) : h);
616
- var s = (max === 0) ? 0 : (1 - min/max);
617
- var v = max/255;
618
628
  return [h, s, v];
619
629
  },
620
630
 
@@ -636,9 +646,8 @@ SC.mixin( /** @scope SC */ {
636
646
 
637
647
  // parse rgb color or 3-digit hex color to return a properly formatted 6-digit hex colour spec, or false
638
648
  parseColor: function(string) {
639
- var i=0, color = '#', match;
649
+ var i=0, color = '#', match, part;
640
650
  if(match = this.PARSE_COLOR_RGBRE.exec(string)) {
641
- var part;
642
651
  for (i=1; i<=3; i++) {
643
652
  part = Math.max(0, Math.min(255, parseInt(match[i],0)));
644
653
  color += this.toColorPart(part);
@@ -684,9 +693,9 @@ SC.mixin( /** @scope SC */ {
684
693
  // Convert double byte characters to standard Unicode. Considers only
685
694
  // conversions from zenkaku to hankaky roomaji
686
695
  uniJapaneseConvert: function (str){
687
- var nChar, cString= '', j;
696
+ var nChar, cString= '', j, jLen;
688
697
  //here we cycle through the characters in the current value
689
- for (j=0; j<str.length; j++){
698
+ for (j=0, jLen = str.length; j<jLen; j++){
690
699
  nChar = str.charCodeAt(j);
691
700
 
692
701
  //here we do the unicode conversion from zenkaku to hankaku roomaji
@@ -9,34 +9,34 @@
9
9
  // ..........................................................
10
10
  // performKeyEquivalent() - verify that return value is correct.
11
11
  //
12
- var view;
13
-
14
- module('SC.Button#performKeyEquivalent', {
15
- setup: function() {
16
- view = SC.View.create(SC.Button, {
17
- triggerAction: function() { return YES; }
18
- });
19
- view.set('title', 'hello world');
20
- view.set('keyEquivalent', 'return');
21
- },
12
+ var pane = SC.ControlTestPane.design()
13
+ .add("basic", SC.View.extend(SC.Button), {
14
+ triggerAction: function() { return YES; },
15
+ title:'hello world',
16
+ keyEquivalent: 'return'
17
+ });
22
18
 
23
- teardown: function() {
24
- view.destroy();
25
- view = null;
26
- }
27
- });
19
+ pane.show(); // add a test to show the test pane
20
+
21
+
22
+
23
+ module('SC.View#performKeyEquivalent', pane.standardSetup());
28
24
 
29
25
  test("handles matching key equivalent 'return'", function() {
26
+ var view = pane.view('basic');
30
27
  view.triggerAction = function(evt) { return YES; }; // act like we handled it if we get here
31
- ok(view.performKeyEquivalent('return'), "should return truthy value indicating it handled the key equivalent 'return'");
28
+ var u = view.pane();
29
+ ok(u.performKeyEquivalent('return'), "should return truthy value indicating it handled the key equivalent 'return'");
32
30
  });
33
31
 
34
32
  test("ignores non-matching key equivalent 'wrong_key'", function() {
33
+ var view = pane.view('basic');
35
34
  view.triggerAction = function(evt) { return YES; }; // act like we handled it if we get here (we shouldn't in this case)
36
35
  ok(!view.performKeyEquivalent('wrong_key'), "should return falsy value indicating it ignored the non-matching key equivalent 'wrong_key'");
37
36
  });
38
37
 
39
38
  test("triggers on return if isDefault is set and no keyEquivalent is set", function() {
39
+ var view = pane.view('basic');
40
40
  view.set('isDefault', YES);
41
41
  view.set('keyEquivalent', null);
42
42
  ok(view.performKeyEquivalent('return'), 'should be handled');
@@ -47,6 +47,7 @@ test("triggers on return if isDefault is set and no keyEquivalent is set", funct
47
47
 
48
48
 
49
49
  test("triggers on escape if isCancel is set and no keyEquivalent is set", function() {
50
+ var view = pane.view('basic');
50
51
  view.set('isCancel', YES);
51
52
  view.set('keyEquivalent', null);
52
53
  ok(view.performKeyEquivalent('escape'), 'should be handled');
@@ -140,4 +140,3 @@ test("Test SC.StaticLayout frame support", function() {
140
140
 
141
141
  ok(SC.typeOf(child.get('frame')) === SC.T_HASH, "View's frame property will be an object when useStaticLayout is YES and layer is attached to DOM.");
142
142
  });
143
-
@@ -39,7 +39,7 @@ test("should emit style in tag if opts.styles is defined", function() {
39
39
 
40
40
  test("should emit style with custom browser attributes", function() {
41
41
  context.styles({ mozColumnCount: '3', webkitColumnCount: '3', oColumnCount: '3', msColumnCount: '3' }).end();
42
- ok(context.get(0).match(/style=\"-moz-column-count: 3; -webkit-column-count: 3; -o-column-count: 3; -ms-column-count: 3\"/),
42
+ ok(context.get(0).match('<div style="-moz-column-count: 3px; -webkit-column-count: 3px; -o-column-count: 3px; -ms-column-count: 3px" >'),
43
43
  '<div> has style="-moz-column-count: 3; -webkit-column-count: 3, -o-column-count: 3, -ms-column-count: 3"');
44
44
  });
45
45
 
@@ -52,8 +52,9 @@ test("extracts styles from element on first retrieval", function() {
52
52
 
53
53
  var result = context.styles();
54
54
 
55
-
56
- same(result, { color: 'black', height: '20px', borderTop: '1px solid hotpink', WebkitColumnCount: '3' }, 'extracted style. This is failing in IE8 because it return styles like cOLOR.');
55
+ if(SC.browser.msie) same(result, { height: '20px', color: 'black', height: '20px', borderTop: 'hotpink 1px solid', WebkitColumnCount: '3' }, 'extracted style. This is failing in IE8 because it return styles like cOLOR.');
56
+ else if(SC.browser.mozilla) same(result, { color: 'black', height: '20px', borderTop: '1px solid hotpink' }, 'extracted style. This is failing in IE8 because it return styles like cOLOR.');
57
+ else same(result, { color: 'black', height: '20px', borderTop: '1px solid hotpink', WebkitColumnCount: '3' }, 'extracted style. This is failing in IE8 because it return styles like cOLOR.');
57
58
 
58
59
  equals(context.styles(), result, "should reuse same instance thereafter");
59
60
  });
@@ -98,12 +99,3 @@ test("css() should be an alias for addStyle()", function() {
98
99
  equals(SC.RenderContext.fn.css, SC.RenderContext.fn.addStyle, 'methods');
99
100
  });
100
101
 
101
- test("addStyle should remove properties that are part of combo properties", function(){
102
- SC.COMBO_STYLES = { foo: 'fooSub'.w() };
103
- context.styles({ foo: 'foo', fooSub: 'bar' });
104
- equals(context.styles().fooSub, 'bar', 'proper starting values');
105
- context.addStyle('foo', 'bar');
106
- equals(context.styles().foo, 'bar', 'foo has new value');
107
- equals(context.styles().fooSub, undefined, 'fooSub has no value');
108
- });
109
-
@@ -211,6 +211,8 @@ test("set styles handle custom browser attributes", function() {
211
211
  // sometimes, without one. Normalize it here.
212
212
  var style = SC.$(elem).attr("style");
213
213
  if (!style.match(/;$/)) style += ';' ;
214
-
215
- equals(style, "-moz-column-count: 3; -webkit-column-count: 3; -o-column-count: 3; -ms-column-count: 3;");
214
+ //Gecko completely ignores css attributes that it doesn't understand.
215
+ if(SC.browser.mozilla) equals(style, "-moz-column-count: 3;");
216
+ else if (SC.browser.msie) equals(style, "-webkit-column-count: 3; -moz-column-count: 3; -o-column-count: 3; -ms-column-count: 3;");
217
+ else equals(style, "-moz-column-count: 3; -webkit-column-count: 3; -o-column-count: 3; -ms-column-count: 3;");
216
218
  });
@@ -77,11 +77,11 @@ test("should invoke method string immediately if no time passed", function() {
77
77
  test("should automatically bind with arguments if passed", function() {
78
78
  SC.RunLoop.begin() ;
79
79
  var fired = NO ;
80
- var g1 = null, g2 = null ; target = null ;
80
+ var g1 = null, g2 = null ;
81
81
 
82
82
  var o = SC.Object.create({
83
83
  func: function(arg1, arg2) {
84
- g1 = arg1 ; g2 = arg2 ; fired = YES ; target = this ;
84
+ g1 = arg1 ; g2 = arg2 ; fired = YES ;
85
85
  }
86
86
  });
87
87
  o.invokeLater('func', 200, 'ARG1', 'ARG2') ;
@@ -96,7 +96,6 @@ test("should automatically bind with arguments if passed", function() {
96
96
  equals(YES, fired, 'did not fire') ;
97
97
  equals(g1, 'ARG1', 'arg1') ;
98
98
  equals(g2, 'ARG2', 'arg2') ;
99
- equals(target, o, 'target') ;
100
99
  window.start() ; // starts the test runner
101
100
  } ;
102
101
 
@@ -176,11 +175,11 @@ test("should invoke function immediately if no time passed", function() {
176
175
  test("should automatically bind with arguments if passed", function() {
177
176
  SC.RunLoop.begin() ;
178
177
  var fired = NO ;
179
- var g1 = null, g2 = null ; target = null ;
178
+ var g1 = null, g2 = null ;
180
179
 
181
180
  var o = SC.Object.create() ;
182
181
  var func = function(arg1, arg2) {
183
- g1 = arg1 ; g2 = arg2 ; fired = YES ; target = this ;
182
+ g1 = arg1 ; g2 = arg2 ; fired = YES ;
184
183
  } ;
185
184
  func.invokeLater(o, 200, 'ARG1', 'ARG2') ;
186
185
  SC.RunLoop.end() ;
@@ -193,8 +192,7 @@ test("should automatically bind with arguments if passed", function() {
193
192
  }
194
193
  equals(YES, fired, 'did not fire') ;
195
194
  equals(g1, 'ARG1', 'arg1') ;
196
- equals(g2, 'ARG2', 'arg2') ;
197
- equals(target, o, 'target') ;
195
+ equals(g2, 'ARG2', 'arg2') ;
198
196
  window.start() ; // starts the test runner
199
197
  } ;
200
198
 
@@ -18,6 +18,7 @@ module("SC.Pane#sendEvent", {
18
18
  defaultResponder = SC.Object.create({ defaultEvent: handler });
19
19
  pane = SC.Pane.create({
20
20
  defaultResponder: defaultResponder,
21
+ paneEvent: handler,
21
22
  childViews: [SC.View.extend({
22
23
  fooEvent: handler,
23
24
  childViews: [SC.View.extend({
@@ -162,4 +163,44 @@ test("when invoked with target = null", function() {
162
163
  equals(callCount, 0, 'should not invoke handler');
163
164
  equals(handler, null, 'should return no responder');
164
165
 
166
+ // test event handler on pane itself
167
+ callCount = 0;
168
+ handler = pane.sendEvent('paneEvent', evt);
169
+ equals(callCount, 1, 'should invoke handler on pane');
170
+ equals(handler, pane, 'should return pane as responder that handled event');
171
+
172
+ });
173
+
174
+ test("when invoked with target = null, no default or first responder", function() {
175
+ var handler ;
176
+
177
+ // no first or default responder
178
+ pane.set('firstResponder', null);
179
+ pane.set('defaultResponder', null);
180
+
181
+ // test event handler on child view of target
182
+ callCount = 0;
183
+ handler = pane.sendEvent('barEvent', evt);
184
+ equals(callCount, 0, 'should not invoke handler');
185
+ equals(handler, null, 'should return no responder');
186
+
187
+ // test event handler on target
188
+ callCount = 0;
189
+ handler = pane.sendEvent('fooEvent', evt);
190
+ equals(callCount, 0, 'should not invoke handler');
191
+ equals(handler, null, 'should return no responder');
192
+
193
+ // test unhandled event handler
194
+ callCount = 0;
195
+ handler = pane.sendEvent('imaginary', evt);
196
+ equals(callCount, 0, 'should not invoke handler');
197
+ equals(handler, null, 'should return no responder');
198
+
199
+ // test event handler on pane itself
200
+ callCount = 0;
201
+ handler = pane.sendEvent('paneEvent', evt);
202
+ equals(callCount, 1, 'should invoke handler on pane');
203
+ equals(handler, pane, 'should return pane as responder that handled event');
204
+
165
205
  });
206
+