sproutcore 1.5.0.pre.4 → 1.5.0.pre.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +6 -0
- data/VERSION.yml +1 -1
- data/lib/Buildfile +1 -1
- data/lib/buildtasks/build.rake +14 -6
- data/lib/buildtasks/manifest.rake +171 -72
- data/lib/frameworks/sproutcore/Buildfile +3 -5
- data/lib/frameworks/sproutcore/CHANGELOG.md +9 -0
- data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.js +2 -1
- data/lib/frameworks/sproutcore/apps/test_controls/resources/progress_page.js +7 -17
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/browser.js +7 -1
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/loader.js +14 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/browser.js +0 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/event.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +14 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template/collection.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +6 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/system/store.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/scrollable.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/alert.js +49 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +8 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/panel.js +46 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/button.js +32 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/checkbox.js +32 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/disclosure.js +31 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/progress.js +15 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/radio.js +28 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/segmented.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/slider.js +20 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/well.js +2 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/alert/ui.js +40 -34
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/menu/ui.js +35 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/panel/ui.js +43 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/ui.js +47 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/methods.js +6 -16
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/ui.js +21 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/disclosure/ui.js +41 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +128 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/radio/ui.js +93 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroll/ui.js +13 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroller.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/methods.js +47 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/ui.js +51 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/toolbar/method.js +33 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/toolbar/ui.js +29 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +28 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/disclosure.js +9 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/list_item.js +148 -134
- data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +18 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_scroll.js +30 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/views/progress.js +9 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/radio.js +52 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +36 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/slider.js +9 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/split.js +15 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/views/split_divider.js +1 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/views/tab.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/toolbar.js +7 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/well.js +1 -2
- data/lib/frameworks/sproutcore/frameworks/forms/views/form.js +3 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/bootstrap.rhtml +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_resize.js +0 -9
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/editable.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +2 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/canvas_image.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/label.js +25 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/system/chance.js +64 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/module.js +34 -27
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/editable/ui.js +42 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_text_field/ui.js +62 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/image/ui.js +0 -8
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/label/ui.js +12 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/ui.js +48 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/views/field.js +19 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/views/image.js +2 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +11 -5
- data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +152 -74
- data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_queue.js +12 -9
- data/lib/frameworks/sproutcore/frameworks/runtime/system/logger.js +1476 -176
- data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +0 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/logger.js +227 -32
- data/lib/frameworks/sproutcore/frameworks/statechart/system/state.js +11 -11
- data/lib/frameworks/sproutcore/frameworks/statechart/system/statechart.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/testing/system/runner.js +10 -0
- data/lib/frameworks/sproutcore/lib/index.rhtml +30 -8
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/18px/segmented.css +4 -4
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/24px/segmented.css +4 -4
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/30px/segmented.css +4 -4
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/44px/segmented.css +4 -4
- data/lib/frameworks/sproutcore/themes/ace/resources/segmented/segmented.css +4 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/slider.css +5 -1
- data/lib/frameworks/sproutcore/themes/ace/resources/slider/ace/slider.js +11 -3
- data/lib/frameworks/sproutcore/themes/ace/resources/well/well.css +7 -8
- data/lib/frameworks/sproutcore/themes/ace/resources/well/well.js +2 -4
- data/lib/gen/app/templates/apps/@target_name@/Buildfile +14 -0
- data/lib/gen/app/templates/apps/@target_name@/theme.js +27 -0
- data/lib/gen/html_app/templates/apps/@target_name@/resources/stylesheets/@target_name@.css +4 -0
- data/lib/gen/project/templates/@filename@/Buildfile +7 -2
- data/lib/gen/theme/templates/themes/@target_name@/Buildfile +3 -0
- data/lib/gen/theme/templates/themes/@target_name@/theme.js +23 -0
- data/lib/sproutcore/builders.rb +2 -0
- data/lib/sproutcore/builders/chance.rb +64 -0
- data/lib/sproutcore/builders/chance_file.rb +59 -0
- data/lib/sproutcore/builders/combine.rb +0 -45
- data/lib/sproutcore/builders/html.rb +1 -1
- data/lib/sproutcore/builders/minify.rb +5 -17
- data/lib/sproutcore/builders/module.rb +2 -2
- data/lib/sproutcore/builders/string_wrapper.rb +13 -15
- data/lib/sproutcore/helpers.rb +1 -1
- data/lib/sproutcore/helpers/minifier.rb +56 -0
- data/lib/sproutcore/helpers/static_helper.rb +86 -40
- data/lib/sproutcore/models/generator.rb +16 -0
- data/lib/sproutcore/models/manifest_entry.rb +8 -1
- data/lib/sproutcore/models/target.rb +101 -33
- data/lib/sproutcore/tools.rb +0 -7
- data/lib/sproutcore/tools/build.rb +2 -37
- data/spec/buildtasks/manifest/prepare_build_tasks/chance_spec.rb +100 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/combine_spec.rb +86 -9
- data/spec/buildtasks/manifest/prepare_build_tasks/css_spec.rb +1 -1
- data/spec/buildtasks/manifest/prepare_build_tasks/minify_spec.rb +1 -1
- data/spec/buildtasks/manifest/prepare_build_tasks/module_info_spec.rb +96 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/module_spec.rb +83 -0
- data/spec/buildtasks/manifest/prepare_build_tasks/packed_spec.rb +37 -4
- data/spec/buildtasks/manifest/spec_helper.rb +4 -0
- data/spec/fixtures/builder_tests/Buildfile +11 -9
- data/spec/fixtures/builder_tests/apps/chance_test/Buildfile +14 -0
- data/spec/fixtures/builder_tests/apps/chance_test/core.js +27 -0
- data/spec/fixtures/builder_tests/apps/chance_test/main.js +30 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/demo.css +6 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/last_file.css +7 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/loading.rhtml +9 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/main_page.js +24 -0
- data/spec/fixtures/builder_tests/apps/chance_test/resources/z_first_file.css +6 -0
- data/spec/fixtures/builder_tests/apps/chance_test/theme.js +27 -0
- data/spec/fixtures/builder_tests/apps/module_test/module.js +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/english.lproj/req_style_2.css +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/english.lproj/test.rhtml +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/javascript.js +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/lib/alt_layout.rhtml +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/deferred_module/req_js_2.js +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/dynamic_req_target_1/dynamic_req_js_1.js +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/dynamic_req_target_1/english.lproj/dynamic_req_style_1.css +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/inlined_module/README +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/english.lproj/req_style_1.css +0 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/english.lproj/strings.js +4 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/english.lproj/test.rhtml +1 -0
- data/spec/fixtures/builder_tests/apps/module_test/modules/required_target/req_js_1.js +0 -0
- data/spec/fixtures/helper_tests/apps/minifier_test/core.js +8 -0
- data/spec/fixtures/real_world/Buildfile +11 -1
- data/spec/fixtures/real_world/apps/account/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/calendar/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/contacts/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/contacts/modules/printing/README +0 -0
- data/spec/fixtures/real_world/apps/mail/modules/preferences/README +0 -0
- data/spec/fixtures/real_world/apps/mail/modules/printing/README +0 -0
- data/spec/fixtures/real_world/apps/photos/modules/email/README +0 -0
- data/spec/fixtures/real_world/apps/photos/modules/preferences/README +0 -0
- data/spec/lib/builders/chance_file_spec.rb +63 -0
- data/spec/lib/builders/chance_spec.rb +81 -0
- data/spec/lib/builders/module_spec.rb +133 -0
- data/spec/lib/helpers/minifier.rb +31 -0
- data/spec/lib/models/project/find_targets_for_spec.rb +1 -1
- data/vendor/chance/lib/chance/imagers/data_url.rb +68 -17
- data/vendor/chance/lib/chance/instance.rb +55 -30
- data/vendor/chance/lib/chance/parser.rb +1 -1
- data/vendor/chance/lib/chance/slicing.rb +39 -3
- metadata +52 -7
- data/lib/frameworks/sproutcore/frameworks/foundation/system/logger.js +0 -163
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/logger.js +0 -44
- data/spec/buildtasks/manifest/prepare_build_tasks/bundle_spec.rb +0 -254
- data/spec/fixtures/builder_tests/apps/bundle_test/bundle.js +0 -1
- data/spec/lib/builders/bundle_spec.rb +0 -295
@@ -43,7 +43,7 @@ $theme.sc-segment-view {
|
|
43
43
|
&.active {
|
44
44
|
.left { @include slice("segmented_active.png", $left: 100, $width: 8); }
|
45
45
|
.right { @include slice("segmented_active.png", $left: 92, $width: 8); }
|
46
|
-
.middle { @include slice("segmented_active.png", $left: 8, $width: 1); }
|
46
|
+
.middle { @include slice("segmented_active.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
47
47
|
}
|
48
48
|
|
49
49
|
&.active.sc-first-segment {
|
@@ -59,7 +59,7 @@ $theme.sc-segment-view {
|
|
59
59
|
&.sel {
|
60
60
|
.left { @include slice("segmented_selected.png", $left: 100, $width: 8); }
|
61
61
|
.right { @include slice("segmented_selected.png", $left: 92, $width: 8); }
|
62
|
-
.middle { @include slice("segmented_selected.png", $left: 8, $width: 1); }
|
62
|
+
.middle { @include slice("segmented_selected.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
63
63
|
}
|
64
64
|
|
65
65
|
&.sel.sc-first-segment {
|
@@ -75,7 +75,7 @@ $theme.sc-segment-view {
|
|
75
75
|
&.sel.active {
|
76
76
|
.left { @include slice("segmented_selected_active.png", $left: 100, $width: 8); }
|
77
77
|
.right { @include slice("segmented_selected_active.png", $left: 92, $width: 8); }
|
78
|
-
.middle { @include slice("segmented_selected_active.png", $left: 8, $width: 1); }
|
78
|
+
.middle { @include slice("segmented_selected_active.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
79
79
|
}
|
80
80
|
|
81
81
|
&.sel.active.sc-first-segment {
|
@@ -88,4 +88,4 @@ $theme.sc-segment-view {
|
|
88
88
|
|
89
89
|
}
|
90
90
|
|
91
|
-
}
|
91
|
+
}
|
@@ -43,7 +43,7 @@ $theme.sc-segment-view {
|
|
43
43
|
&.active {
|
44
44
|
.left { @include slice("segmented_active.png", $left: 100, $width: 8); }
|
45
45
|
.right { @include slice("segmented_active.png", $left: 92, $width: 8); }
|
46
|
-
.middle { @include slice("segmented_active.png", $left: 8, $width: 1); }
|
46
|
+
.middle { @include slice("segmented_active.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
47
47
|
}
|
48
48
|
|
49
49
|
&.active.sc-first-segment {
|
@@ -59,7 +59,7 @@ $theme.sc-segment-view {
|
|
59
59
|
&.sel {
|
60
60
|
.left { @include slice("segmented_selected.png", $left: 100, $width: 8); }
|
61
61
|
.right { @include slice("segmented_selected.png", $left: 92, $width: 8); }
|
62
|
-
.middle { @include slice("segmented_selected.png", $left: 8, $width: 1); }
|
62
|
+
.middle { @include slice("segmented_selected.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
63
63
|
}
|
64
64
|
|
65
65
|
&.sel.sc-first-segment {
|
@@ -75,7 +75,7 @@ $theme.sc-segment-view {
|
|
75
75
|
&.sel.active {
|
76
76
|
.left { @include slice("segmented_selected_active.png", $left: 100, $width: 8); }
|
77
77
|
.right { @include slice("segmented_selected_active.png", $left: 92, $width: 8); }
|
78
|
-
.middle { @include slice("segmented_selected_active.png", $left: 8, $width: 1); }
|
78
|
+
.middle { @include slice("segmented_selected_active.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
79
79
|
}
|
80
80
|
|
81
81
|
&.sel.active.sc-first-segment {
|
@@ -88,4 +88,4 @@ $theme.sc-segment-view {
|
|
88
88
|
|
89
89
|
}
|
90
90
|
|
91
|
-
}
|
91
|
+
}
|
@@ -45,7 +45,7 @@ $theme.sc-segment-view {
|
|
45
45
|
&.active {
|
46
46
|
.left { @include slice("segmented_active.png", $left: 100, $width: 8); }
|
47
47
|
.right { @include slice("segmented_active.png", $left: 92, $width: 8); }
|
48
|
-
.middle { @include slice("segmented_active.png", $left: 8, $width: 1); }
|
48
|
+
.middle { @include slice("segmented_active.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
49
49
|
}
|
50
50
|
|
51
51
|
&.active.sc-first-segment {
|
@@ -61,7 +61,7 @@ $theme.sc-segment-view {
|
|
61
61
|
&.sel {
|
62
62
|
.left { @include slice("segmented_selected.png", $left: 100, $width: 8); }
|
63
63
|
.right { @include slice("segmented_selected.png", $left: 92, $width: 8); }
|
64
|
-
.middle { @include slice("segmented_selected.png", $left: 8, $width: 1); }
|
64
|
+
.middle { @include slice("segmented_selected.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
65
65
|
|
66
66
|
.sc-button-label { color: white; text-shadow: 0px -1px 1px rgba(0,0,0,.7);}
|
67
67
|
}
|
@@ -79,7 +79,7 @@ $theme.sc-segment-view {
|
|
79
79
|
&.sel.active {
|
80
80
|
.left { @include slice("segmented_selected_active.png", $left: 100, $width: 8); }
|
81
81
|
.right { @include slice("segmented_selected_active.png", $left: 92, $width: 8); }
|
82
|
-
.middle { @include slice("segmented_selected_active.png", $left: 8, $width: 1); }
|
82
|
+
.middle { @include slice("segmented_selected_active.png", $left: 8, $width: 1, $repeat: repeat-x); }
|
83
83
|
}
|
84
84
|
|
85
85
|
&.sel.active.sc-first-segment {
|
@@ -92,4 +92,4 @@ $theme.sc-segment-view {
|
|
92
92
|
|
93
93
|
}
|
94
94
|
|
95
|
-
}
|
95
|
+
}
|
@@ -18,6 +18,10 @@ $theme.sc-segmented-view $theme.sc-segment-view {
|
|
18
18
|
overflow:hidden;
|
19
19
|
position: relative;
|
20
20
|
padding: 0px;
|
21
|
+
|
22
|
+
.ie7 & {
|
23
|
+
display: inline;
|
24
|
+
}
|
21
25
|
|
22
26
|
&.sc-first-segment { margin: 0px; padding: 0px ;}
|
23
27
|
&.sc-last-segment { margin: 0px; padding: 0px; }
|
@@ -39,9 +39,17 @@ SC.AceTheme.sliderRenderDelegate = SC.RenderDelegate.create({
|
|
39
39
|
update: function(dataSource, jquery) {
|
40
40
|
if (dataSource.didChangeFor('sliderRenderDelegate', 'value')) {
|
41
41
|
var handle = dataSource.get('renderState')._cachedHandle;
|
42
|
-
if (!handle)
|
43
|
-
|
44
|
-
|
42
|
+
if (!handle) {
|
43
|
+
handle = dataSource.get('renderState')._cachedHandle = jquery.find('.sc-handle');
|
44
|
+
}
|
45
|
+
|
46
|
+
var frame = dataSource.get('frame'), value = dataSource.get('value');
|
47
|
+
if (frame && SC.platform.supportsCSS3DTransforms) {
|
48
|
+
value = (value / 100) * frame.width;
|
49
|
+
handle[0].style.cssText = "-webkit-transform: translate3d(" + value + "px,0,0);";
|
50
|
+
} else {
|
51
|
+
handle.css('left', value + "%");
|
52
|
+
}
|
45
53
|
}
|
46
54
|
}
|
47
55
|
|
@@ -1,8 +1,7 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
}
|
1
|
+
$theme.well {
|
2
|
+
-sc-border-radius: 5px;
|
3
|
+
border: 1px solid #999;
|
4
|
+
-webkit-box-shadow: 1px 1px 1px rgba(255, 255, 255, .3);
|
5
|
+
overflow:hidden;
|
6
|
+
}
|
7
|
+
|
@@ -5,10 +5,8 @@
|
|
5
5
|
// License: Licensed under MIT license (see license.js)
|
6
6
|
// ==========================================================================
|
7
7
|
|
8
|
-
SC.AceTheme.
|
9
|
-
|
10
|
-
SC.AceTheme.Well.containerRenderDelegate = SC.RenderDelegate.create({
|
11
|
-
name: 'container',
|
8
|
+
SC.AceTheme.wellRenderDelegate = SC.RenderDelegate.create({
|
9
|
+
name: 'well',
|
12
10
|
render: function(dataSource, context) {
|
13
11
|
|
14
12
|
},
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# ===========================================================================
|
2
|
+
# Project: <%= namespace %>
|
3
|
+
# Copyright: ©<%= Time.now.year %> My Company, Inc.
|
4
|
+
# ===========================================================================
|
5
|
+
|
6
|
+
# This is your Buildfile for your app, <%= namespace %>. This tells SproutCore
|
7
|
+
# how to build your app. These settings override those in your project
|
8
|
+
# Buildfile, which contains default settings for all apps in your project.
|
9
|
+
#
|
10
|
+
# This line tells SproutCore's CSS preprocessor what class names to target.
|
11
|
+
# Since your app has a theme named '<%= css_name %>', and it is based on SproutCore's
|
12
|
+
# Ace theme (named 'ace'), it is set to 'ace.<%= css_name %>'.
|
13
|
+
config :<%= target_name %>, :css_theme => 'ace.<%= css_name %>'
|
14
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: <%= namespace %>
|
3
|
+
// Copyright: ©<%= Time.now.year %> My Company, Inc.
|
4
|
+
// ==========================================================================
|
5
|
+
/*globals <%= namespace %> */
|
6
|
+
|
7
|
+
// This is the theme that defines how your app renders.
|
8
|
+
//
|
9
|
+
// Your app is given its own theme so it is easier and less
|
10
|
+
// messy for you to override specific things just for your
|
11
|
+
// app.
|
12
|
+
//
|
13
|
+
// You don't have to create the whole theme on your own, though:
|
14
|
+
// your app's theme is based on SproutCore's Ace theme.
|
15
|
+
//
|
16
|
+
// NOTE: if you want to change the theme this one is based on, don't
|
17
|
+
// forget to change the :css_theme property in your buildfile.
|
18
|
+
<%= namespace %>.Theme = SC.AceTheme.create({
|
19
|
+
name: '<%= css_name %>'
|
20
|
+
});
|
21
|
+
|
22
|
+
// SproutCore needs to know that your app's theme exists
|
23
|
+
SC.Theme.addTheme(<%= namespace %>.Theme);
|
24
|
+
|
25
|
+
// Setting it as the default theme makes every pane SproutCore
|
26
|
+
// creates default to this theme unless otherwise specified.
|
27
|
+
SC.defaultTheme = '<%= css_name %>';
|
@@ -3,5 +3,10 @@
|
|
3
3
|
# Copyright: ©<%= Time.now.year %> My Company, Inc.
|
4
4
|
# ===========================================================================
|
5
5
|
|
6
|
-
#
|
7
|
-
|
6
|
+
# This is your Buildfile, which sets build settings for your project.
|
7
|
+
# For example, this tells SproutCore's build tools that your requires
|
8
|
+
# the SproutCore framework.
|
9
|
+
config :all, :required => :sproutcore
|
10
|
+
|
11
|
+
# In addition to this Buildfile, which gives settings for your entire project,
|
12
|
+
# each of your apps has its own Buildfile with settings specific to that app.
|
@@ -0,0 +1,23 @@
|
|
1
|
+
// ==========================================================================
|
2
|
+
// Project: <%= namespace %>
|
3
|
+
// Copyright: ©<%= Time.now.year %> My Company, Inc.
|
4
|
+
// ==========================================================================
|
5
|
+
/*globals <%= namespace %> */
|
6
|
+
|
7
|
+
// This is the JavaScript representation of your theme.
|
8
|
+
//
|
9
|
+
// You don't have to create the whole theme on your own, though:
|
10
|
+
// this theme is currently based on SproutCore's Ace theme.
|
11
|
+
//
|
12
|
+
// NOTE: if you want to change the theme this one is based on, don't
|
13
|
+
// forget to change the :css_theme property in your buildfile.
|
14
|
+
<%= namespace %> = SC.AceTheme.create({
|
15
|
+
name: '<%= css_name %>'
|
16
|
+
});
|
17
|
+
|
18
|
+
// To let apps use your theme, SproutCore must know where to find it.
|
19
|
+
SC.Theme.addTheme(<%= namespace %>);
|
20
|
+
|
21
|
+
// You do not need to set it as a default theme. Apps should set the
|
22
|
+
// SC.defaultTheme variable. Usually, apps will create their own theme
|
23
|
+
// and base it on yours.
|
data/lib/sproutcore/builders.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
require "sproutcore/builders/base"
|
2
2
|
require "sproutcore/builders/module"
|
3
|
+
require "sproutcore/builders/chance"
|
4
|
+
require "sproutcore/builders/chance_file"
|
3
5
|
require "sproutcore/builders/combine"
|
4
6
|
require "sproutcore/builders/html"
|
5
7
|
require "sproutcore/builders/javascript"
|
@@ -0,0 +1,64 @@
|
|
1
|
+
require "sproutcore/builders/base"
|
2
|
+
require "fileutils"
|
3
|
+
require "chance"
|
4
|
+
|
5
|
+
module SC
|
6
|
+
# This builder builds CSS using Chance.
|
7
|
+
class Builder::Chance < Builder::Base
|
8
|
+
|
9
|
+
def build(dst_path)
|
10
|
+
|
11
|
+
theme_name = entry.target.config[:css_theme]
|
12
|
+
|
13
|
+
chance = Chance::Instance.new({:theme => theme_name })
|
14
|
+
|
15
|
+
entries = entry.ordered_entries || entry.source_entries
|
16
|
+
|
17
|
+
entries.each do |entry|
|
18
|
+
src_path = entry.stage![:staging_path]
|
19
|
+
next unless File.exist?(src_path)
|
20
|
+
|
21
|
+
Chance.add_file src_path
|
22
|
+
chance.map_file(entry.filename, src_path)
|
23
|
+
end
|
24
|
+
|
25
|
+
chance.update
|
26
|
+
|
27
|
+
if chance.files["chance.css"]
|
28
|
+
css = chance.files["chance.css"]
|
29
|
+
css = rewrite_inline_code(css)
|
30
|
+
|
31
|
+
writeline dst_path, css
|
32
|
+
end
|
33
|
+
|
34
|
+
entry[:chance] = chance
|
35
|
+
end
|
36
|
+
|
37
|
+
# Rewrites any inline content such as static urls. Subclasseses can
|
38
|
+
# override this to rewrite any other inline content.
|
39
|
+
#
|
40
|
+
# The default will rewrite calls to static_url().
|
41
|
+
def rewrite_inline_code(code)
|
42
|
+
# look for sc_require, require or sc_resource. wrap in comment
|
43
|
+
code.gsub!(/url\s*\(\s*["']mhtml\:chance-mhtml\.txt!(.+?)["']\s*\)/) {|mhtml|
|
44
|
+
static_entry = entry.manifest.find_entry("__sc_chance_mhtml.txt")
|
45
|
+
|
46
|
+
if !static_entry
|
47
|
+
url = ''
|
48
|
+
else
|
49
|
+
url = static_entry.cacheable_url
|
50
|
+
end
|
51
|
+
|
52
|
+
"expression('url(\"mhtml:' + document.location.protocol + '//' + document.location.host + '" + url + "!" + $1 + "' + '\")')"
|
53
|
+
}
|
54
|
+
|
55
|
+
code.gsub!(/((sc_require|require|sc_resource)\(\s*['"].*["']\s*\)\s*\;)/, '/* \1 */')
|
56
|
+
replace_static_url(code)
|
57
|
+
code
|
58
|
+
end
|
59
|
+
|
60
|
+
def static_url(url=''); "url('#{url}')" ; end
|
61
|
+
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require "sproutcore/builders/base"
|
2
|
+
require "fileutils"
|
3
|
+
require "chance"
|
4
|
+
|
5
|
+
module SC
|
6
|
+
# This builder builds CSS using Chance.
|
7
|
+
class Builder::ChanceFile < Builder::Base
|
8
|
+
|
9
|
+
def build(dst_path)
|
10
|
+
entries = entry[:chance_entries] || [entry[:chance_entry]]
|
11
|
+
entries.each {|entry| entry.build! }
|
12
|
+
|
13
|
+
chance_file = entry[:chance_file]
|
14
|
+
|
15
|
+
src = entries.map {|entry|
|
16
|
+
chance = entry[:chance]
|
17
|
+
|
18
|
+
src = ""
|
19
|
+
src = chance.files[chance_file] unless chance.nil?
|
20
|
+
src = "" if src.nil?
|
21
|
+
|
22
|
+
src = rewrite_inline_code(src) if chance_file.end_with?("css")
|
23
|
+
|
24
|
+
src
|
25
|
+
}.join("\n")
|
26
|
+
|
27
|
+
writeline dst_path, src
|
28
|
+
end
|
29
|
+
|
30
|
+
# Rewrites any inline content such as static urls. Subclasseses can
|
31
|
+
# override this to rewrite any other inline content.
|
32
|
+
#
|
33
|
+
# The default will rewrite calls to static_url().
|
34
|
+
def rewrite_inline_code(code)
|
35
|
+
# look for sc_require, require or sc_resource. wrap in comment
|
36
|
+
code.gsub!(/mhtml\:chance-mhtml\.txt/) {|mhtml|
|
37
|
+
static_entry = entry.manifest.find_entry("__sc_chance_mhtml.txt")
|
38
|
+
|
39
|
+
if !static_entry
|
40
|
+
url = ''
|
41
|
+
else
|
42
|
+
url = static_entry.cacheable_url
|
43
|
+
end
|
44
|
+
|
45
|
+
url
|
46
|
+
}
|
47
|
+
|
48
|
+
code.gsub!(/((sc_require|require|sc_resource)\(\s*['"].*["']\s*\)\s*\;)/, '/* \1 */')
|
49
|
+
replace_static_url(code)
|
50
|
+
code
|
51
|
+
end
|
52
|
+
|
53
|
+
def static_url(url=''); "url('#{url}')" ; end
|
54
|
+
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
58
|
+
|
59
|
+
|
@@ -19,51 +19,6 @@ module SC
|
|
19
19
|
#
|
20
20
|
class Builder::Combine < Builder::Base
|
21
21
|
|
22
|
-
# override this method in subclasses to actually do build
|
23
|
-
def self.buildWithChance(entry, dst_path)
|
24
|
-
new(entry).buildWithChance(dst_path)
|
25
|
-
end
|
26
|
-
|
27
|
-
def buildWithChance(dst_path)
|
28
|
-
theme_name = entry.target.config[:css_theme]
|
29
|
-
|
30
|
-
chance = Chance::Instance.new({:theme => theme_name })
|
31
|
-
|
32
|
-
entries = entry.ordered_entries || entry.source_entries
|
33
|
-
|
34
|
-
entries.each do |entry|
|
35
|
-
src_path = entry[:source_path]
|
36
|
-
next unless File.exist?(src_path)
|
37
|
-
|
38
|
-
Chance.add_file src_path
|
39
|
-
chance.map_file(entry.filename, src_path)
|
40
|
-
end
|
41
|
-
|
42
|
-
chance.update
|
43
|
-
|
44
|
-
if chance.css
|
45
|
-
css = chance.css
|
46
|
-
css = rewrite_inline_code(css)
|
47
|
-
|
48
|
-
writeline dst_path, css
|
49
|
-
end
|
50
|
-
|
51
|
-
end
|
52
|
-
|
53
|
-
# Rewrites any inline content such as static urls. Subclasseses can
|
54
|
-
# override this to rewrite any other inline content.
|
55
|
-
#
|
56
|
-
# The default will rewrite calls to static_url().
|
57
|
-
def rewrite_inline_code(code)
|
58
|
-
# look for sc_require, require or sc_resource. wrap in comment
|
59
|
-
code.gsub!(/((sc_require|require|sc_resource)\(\s*['"].*["']\s*\)\s*\;)/, '/* \1 */')
|
60
|
-
replace_static_url(code)
|
61
|
-
code
|
62
|
-
end
|
63
|
-
|
64
|
-
def static_url(url=''); "url('#{url}')" ; end
|
65
|
-
|
66
|
-
|
67
22
|
def build(dst_path)
|
68
23
|
lines = []
|
69
24
|
entries = entry[:ordered_entries] || entry[:source_entries]
|