sproutcore 1.0.1037 → 1.0.1042
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +31 -0
- data/README.txt +3 -1
- data/Rakefile +11 -4
- data/VERSION.yml +3 -3
- data/buildtasks/build.rake +5 -0
- data/frameworks/sproutcore/Buildfile +3 -1
- data/frameworks/sproutcore/frameworks/animation/Buildfile +3 -0
- data/frameworks/sproutcore/frameworks/animation/LICENSE +25 -0
- data/frameworks/sproutcore/frameworks/animation/README.md +102 -0
- data/frameworks/sproutcore/frameworks/animation/core.js +934 -0
- data/frameworks/sproutcore/frameworks/animation/tests/core.js +65 -0
- data/frameworks/sproutcore/frameworks/datastore/models/record.js +28 -16
- data/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +5 -2
- data/frameworks/sproutcore/frameworks/datastore/system/many_array.js +4 -0
- data/frameworks/sproutcore/frameworks/datastore/system/query.js +27 -13
- data/frameworks/sproutcore/frameworks/datastore/system/record_array.js +36 -6
- data/frameworks/sproutcore/frameworks/datastore/system/store.js +7 -7
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record/storeDidChangeProperties.js +2 -1
- data/frameworks/sproutcore/frameworks/datastore/tests/models/record_attribute.js +13 -0
- data/frameworks/sproutcore/frameworks/debug/invoke_once_last_debugging.js +250 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/list_item.css +0 -12
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/menu_item_view.css +3 -6
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/panel.css +0 -8
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/picker.css +0 -4
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/segmented.css +1 -0
- data/frameworks/sproutcore/frameworks/desktop/english.lproj/well.css +0 -1
- data/frameworks/sproutcore/frameworks/desktop/mixins/border.js +1 -1
- data/frameworks/sproutcore/frameworks/desktop/panes/alert.js +2 -1
- data/frameworks/sproutcore/frameworks/desktop/panes/menu.js +11 -4
- data/frameworks/sproutcore/frameworks/desktop/panes/palette.js +2 -0
- data/frameworks/sproutcore/frameworks/desktop/panes/panel.js +1 -5
- data/frameworks/sproutcore/frameworks/desktop/panes/picker.js +24 -23
- data/frameworks/sproutcore/frameworks/desktop/panes/select_button.js +91 -60
- data/frameworks/sproutcore/frameworks/desktop/panes/sheet.js +124 -24
- data/frameworks/sproutcore/frameworks/desktop/system/drag.js +5 -5
- data/frameworks/sproutcore/frameworks/desktop/system/root_responder.js +33 -25
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/pane_page.js +41 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/select_button/methods.js +30 -1
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/select_button/ui.js +13 -0
- data/frameworks/sproutcore/frameworks/desktop/tests/panes/sheet/ui.js +27 -21
- data/frameworks/sproutcore/frameworks/desktop/tests/views/button/methods.js +81 -1
- data/frameworks/sproutcore/frameworks/desktop/tests/views/radio/methods.js +3 -4
- data/frameworks/sproutcore/frameworks/desktop/views/button.js +65 -36
- data/frameworks/sproutcore/frameworks/desktop/views/collection.js +4 -7
- data/frameworks/sproutcore/frameworks/desktop/views/disclosure.js +8 -4
- data/frameworks/sproutcore/frameworks/desktop/views/list.js +1 -1
- data/frameworks/sproutcore/frameworks/desktop/views/list_item.js +38 -5
- data/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +5 -1
- data/frameworks/sproutcore/frameworks/desktop/views/popup_button.js +4 -1
- data/frameworks/sproutcore/frameworks/desktop/views/progress.js +19 -13
- data/frameworks/sproutcore/frameworks/desktop/views/radio.js +30 -2
- data/frameworks/sproutcore/frameworks/desktop/views/scroll.js +2 -3
- data/frameworks/sproutcore/frameworks/desktop/views/segmented.js +14 -17
- data/frameworks/sproutcore/frameworks/desktop/views/select_field.js +5 -3
- data/frameworks/sproutcore/frameworks/desktop/views/slider.js +4 -2
- data/frameworks/sproutcore/frameworks/desktop/views/split.js +58 -59
- data/frameworks/sproutcore/frameworks/desktop/views/tab.js +2 -1
- data/frameworks/sproutcore/frameworks/desktop/views/well.js +1 -1
- data/frameworks/sproutcore/frameworks/foundation/core.js +6 -0
- data/frameworks/sproutcore/frameworks/foundation/english.lproj/view.css +2 -1
- data/frameworks/sproutcore/frameworks/foundation/mixins/button.js +33 -30
- data/frameworks/sproutcore/frameworks/foundation/mixins/inline_text_field.js +8 -4
- data/frameworks/sproutcore/frameworks/foundation/mixins/string.js +15 -10
- data/frameworks/sproutcore/frameworks/foundation/panes/pane.js +61 -12
- data/frameworks/sproutcore/frameworks/foundation/system/bundle.js +2 -1
- data/frameworks/sproutcore/frameworks/foundation/system/core_query.js +151 -131
- data/frameworks/sproutcore/frameworks/foundation/system/datetime.js +29 -23
- data/frameworks/sproutcore/frameworks/foundation/system/event.js +18 -10
- data/frameworks/sproutcore/frameworks/foundation/system/page.js +7 -5
- data/frameworks/sproutcore/frameworks/foundation/system/ready.js +1 -0
- data/frameworks/sproutcore/frameworks/foundation/system/render_context.js +9 -6
- data/frameworks/sproutcore/frameworks/foundation/system/request.js +41 -6
- data/frameworks/sproutcore/frameworks/foundation/system/response.js +89 -24
- data/frameworks/sproutcore/frameworks/foundation/system/routes.js +1 -1
- data/frameworks/sproutcore/frameworks/foundation/system/utils.js +0 -1
- data/frameworks/sproutcore/frameworks/foundation/tests/controllers/array/array_case.js +27 -8
- data/frameworks/sproutcore/frameworks/foundation/tests/system/core_query/jquery_core.js +6 -6
- data/frameworks/sproutcore/frameworks/foundation/tests/system/render_context/helpers_style.js +2 -2
- data/frameworks/sproutcore/frameworks/foundation/tests/system/request.js +65 -3
- data/frameworks/sproutcore/frameworks/foundation/tests/views/pane/append_remove.js +1 -1
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/convertLayouts.js +145 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/didAppendToDocument.js +48 -0
- data/frameworks/sproutcore/frameworks/foundation/tests/views/view/nextValidKeyView.js +91 -0
- data/frameworks/sproutcore/frameworks/foundation/validators/number.js +9 -5
- data/frameworks/sproutcore/frameworks/foundation/views/field.js +16 -14
- data/frameworks/sproutcore/frameworks/foundation/views/text_field.js +89 -67
- data/frameworks/sproutcore/frameworks/foundation/views/view.js +221 -73
- data/frameworks/sproutcore/frameworks/runtime/core.js +43 -22
- data/frameworks/sproutcore/frameworks/runtime/mixins/array.js +6 -0
- data/frameworks/sproutcore/frameworks/runtime/mixins/copyable.js +1 -1
- data/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +53 -34
- data/frameworks/sproutcore/frameworks/runtime/private/observer_set.js +7 -3
- data/frameworks/sproutcore/frameworks/runtime/system/binding.js +19 -19
- data/frameworks/sproutcore/frameworks/runtime/system/logger.js +132 -88
- data/frameworks/sproutcore/frameworks/runtime/system/object.js +15 -9
- data/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +6 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/observable.js +69 -0
- data/frameworks/sproutcore/frameworks/runtime/tests/system/logger.js +14 -2
- data/frameworks/sproutcore/license.js +3 -1
- data/frameworks/sproutcore/themes/standard_theme/Source/sc-theme-repeat-x.psd +0 -0
- data/frameworks/sproutcore/{frameworks/desktop → themes/standard_theme}/english.lproj/images/icons/mini_222222.png +0 -0
- data/frameworks/sproutcore/{frameworks/desktop → themes/standard_theme}/english.lproj/images/icons/mini_454545.png +0 -0
- data/frameworks/sproutcore/{frameworks/desktop → themes/standard_theme}/english.lproj/images/icons/mini_888888.png +0 -0
- data/frameworks/sproutcore/{frameworks/desktop → themes/standard_theme}/english.lproj/images/icons/mini_ffffff.png +0 -0
- data/frameworks/sproutcore/{frameworks/desktop → themes/standard_theme}/english.lproj/images/panels/sprite-x.png +0 -0
- data/frameworks/sproutcore/{frameworks/desktop → themes/standard_theme}/english.lproj/images/panels/sprite-y.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/images/sc-theme-repeat-x.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/images/sc-theme-ysprite.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/list_item.css +15 -1
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/menu_item_view.css +9 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panel.css +33 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/picker.css +17 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/radio.css +9 -6
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/tab.css +0 -4
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/well.css +36 -0
- data/gen/controller/templates/controllers/@filename@.js +1 -1
- data/lib/sproutcore/builders/minify.rb +45 -13
- data/lib/sproutcore/helpers/static_helper.rb +2 -2
- data/lib/sproutcore/models/manifest_entry.rb +42 -1
- data/lib/sproutcore/tools/build.rb +18 -2
- data/spec/lib/models/manifest_entry/hyperdomain_prefix.rb +34 -0
- data/vendor/yui-compressor/SCyuicompressor-2.4.2.jar +0 -0
- metadata +28 -22
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/background-fat.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/background-thin.jpg +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/bottom-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/bottom-left-corner.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/bottom-right-corner.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/left-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/overlay.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/right-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/top-edge.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/top-left-corner.png +0 -0
- data/frameworks/sproutcore/themes/standard_theme/english.lproj/panels/top-right-corner.png +0 -0
@@ -27,7 +27,7 @@ SC.BENCHMARK_OBJECTS = NO;
|
|
27
27
|
number of optimizations that can make init'ing a new object much faster
|
28
28
|
including:
|
29
29
|
|
30
|
-
-
|
30
|
+
- concatenating concatenatedProperties
|
31
31
|
- prepping a list of bindings, observers, and dependent keys
|
32
32
|
- caching local observers so they don't need to be manually constructed.
|
33
33
|
|
@@ -278,16 +278,16 @@ SC.mixin(SC.Object, /** @scope SC.Object */ {
|
|
278
278
|
/**
|
279
279
|
Creates a new instance of the class.
|
280
280
|
|
281
|
-
Unlike most frameworks, you do not pass
|
282
|
-
for an object. Instead, you pass a hash of
|
281
|
+
Unlike most frameworks, you do not pass parameters to the init function
|
282
|
+
for an object. Instead, you pass a hash of additional properties you
|
283
283
|
want to have assigned to the object when it is first created. This is
|
284
|
-
functionally like creating
|
284
|
+
functionally like creating an anonymous subclass of the receiver and then
|
285
285
|
instantiating it, but more efficient.
|
286
286
|
|
287
287
|
You can use create() like you would a normal constructor in a
|
288
288
|
class-based system, or you can use it to create highly customized
|
289
289
|
singleton objects such as controllers or app-level objects. This is
|
290
|
-
often more efficient than creating subclasses and
|
290
|
+
often more efficient than creating subclasses and then instantiating
|
291
291
|
them.
|
292
292
|
|
293
293
|
You can pass any hash of properties to this method, including mixins.
|
@@ -523,7 +523,7 @@ SC.Object.prototype = {
|
|
523
523
|
},
|
524
524
|
|
525
525
|
/**
|
526
|
-
Attemps to
|
526
|
+
Attemps to invoke the named method, passing the included two arguments.
|
527
527
|
Returns NO if the method is either not implemented or if the handler
|
528
528
|
returns NO (indicating that it did not handle the event). This method
|
529
529
|
is invoked to deliver actions from menu items and to deliver events.
|
@@ -657,7 +657,10 @@ SC.Object.prototype = {
|
|
657
657
|
too expensive to execute more than once, such as methods that update the
|
658
658
|
DOM.
|
659
659
|
|
660
|
-
|
660
|
+
Note that in development mode only, the object and method that call this
|
661
|
+
method will be recorded, for help in debugging scheduled code.
|
662
|
+
|
663
|
+
@param {Function|String} method method or method name
|
661
664
|
@returns {SC.Object} receiver
|
662
665
|
*/
|
663
666
|
invokeOnce: function(method) {
|
@@ -675,7 +678,7 @@ SC.Object.prototype = {
|
|
675
678
|
A simple example is setting the selection on a collection controller to a
|
676
679
|
newly created object. Because the collection controller won't have its
|
677
680
|
content collection updated until later in the run loop, setting the
|
678
|
-
selection immediately will have no
|
681
|
+
selection immediately will have no effect. In this situation, you could do
|
679
682
|
this instead:
|
680
683
|
|
681
684
|
{{{
|
@@ -695,6 +698,9 @@ SC.Object.prototype = {
|
|
695
698
|
You can call invokeLast as many times as you like and the method will
|
696
699
|
only be invoked once.
|
697
700
|
|
701
|
+
Note that in development mode only, the object and method that call this
|
702
|
+
method will be recorded, for help in debugging scheduled code.
|
703
|
+
|
698
704
|
@param {Funciton|String} method method or method name
|
699
705
|
@returns {SC.Object} receiver
|
700
706
|
*/
|
@@ -777,7 +783,7 @@ function findClassNames() {
|
|
777
783
|
|
778
784
|
searchObject(null, window, 2) ;
|
779
785
|
|
780
|
-
// Internet Explorer doesn'
|
786
|
+
// Internet Explorer doesn't loop over global variables...
|
781
787
|
/*if ( SC.browser.isIE ) {
|
782
788
|
searchObject('SC', SC, 2) ; // get names for the SC classes
|
783
789
|
|
@@ -98,6 +98,9 @@ SC.RunLoop = SC.Object.extend(/** @scope SC.RunLoop.prototype */ {
|
|
98
98
|
Usually you will not call this method directly but use invokeOnce()
|
99
99
|
defined on SC.Object.
|
100
100
|
|
101
|
+
Note that in development mode only, the object and method that call this
|
102
|
+
method will be recorded, for help in debugging scheduled code.
|
103
|
+
|
101
104
|
@param {Object} target
|
102
105
|
@param {Function} method
|
103
106
|
@returns {SC.RunLoop} receiver
|
@@ -125,6 +128,9 @@ SC.RunLoop = SC.Object.extend(/** @scope SC.RunLoop.prototype */ {
|
|
125
128
|
Usually you will not call this method directly but use invokeLast()
|
126
129
|
defined on SC.Object.
|
127
130
|
|
131
|
+
Note that in development mode only, the object and method that call this
|
132
|
+
method will be recorded, for help in debugging scheduled code.
|
133
|
+
|
128
134
|
@param {Object} target
|
129
135
|
@param {Function} method
|
130
136
|
@returns {SC.RunLoop} receiver
|
@@ -56,6 +56,75 @@ test("should call unknownProperty when value is undefined", function() {
|
|
56
56
|
equals(object.lastUnknownProperty, "unknown") ;
|
57
57
|
});
|
58
58
|
|
59
|
+
// ..........................................................
|
60
|
+
// SC.GET()
|
61
|
+
//
|
62
|
+
module("SC.get()", {
|
63
|
+
setup: function() {
|
64
|
+
objectA = SC.Object.create({
|
65
|
+
|
66
|
+
normal: 'value',
|
67
|
+
numberVal: 24,
|
68
|
+
toggleVal: true,
|
69
|
+
|
70
|
+
computed: function() { return 'value'; }.property(),
|
71
|
+
|
72
|
+
method: function() { return "value"; },
|
73
|
+
|
74
|
+
nullProperty: null,
|
75
|
+
|
76
|
+
unknownProperty: function(key, value) {
|
77
|
+
this.lastUnknownProperty = key ;
|
78
|
+
return "unknown" ;
|
79
|
+
}
|
80
|
+
|
81
|
+
});
|
82
|
+
|
83
|
+
objectB = {
|
84
|
+
normal: 'value',
|
85
|
+
|
86
|
+
nullProperty: null
|
87
|
+
};
|
88
|
+
}
|
89
|
+
});
|
90
|
+
|
91
|
+
test("should get normal properties on SC.Observable", function() {
|
92
|
+
equals(SC.get(objectA, 'normal'), 'value') ;
|
93
|
+
});
|
94
|
+
|
95
|
+
test("should call computed properties on SC.Observable and return their result", function() {
|
96
|
+
equals(SC.get(objectA, "computed"), "value") ;
|
97
|
+
});
|
98
|
+
|
99
|
+
test("should return the function for a non-computed property on SC.Observable", function() {
|
100
|
+
var value = SC.get(objectA, "method") ;
|
101
|
+
equals(SC.typeOf(value), SC.T_FUNCTION) ;
|
102
|
+
});
|
103
|
+
|
104
|
+
test("should return null when property value is null on SC.Observable", function() {
|
105
|
+
equals(SC.get(objectA, "nullProperty"), null) ;
|
106
|
+
});
|
107
|
+
|
108
|
+
test("should call unknownProperty when value is undefined on SC.Observable", function() {
|
109
|
+
equals(SC.get(object, "unknown"), "unknown") ;
|
110
|
+
equals(object.lastUnknownProperty, "unknown") ;
|
111
|
+
});
|
112
|
+
|
113
|
+
test("should get normal properties on standard objects", function() {
|
114
|
+
equals(SC.get(objectB, 'normal'), 'value');
|
115
|
+
});
|
116
|
+
|
117
|
+
test("should return null when property is null on standard objects", function() {
|
118
|
+
equals(SC.get(objectB, 'nullProperty'), null);
|
119
|
+
});
|
120
|
+
|
121
|
+
test("should return undefined if the provided object is null", function() {
|
122
|
+
equals(SC.get(null, 'key'), undefined);
|
123
|
+
});
|
124
|
+
|
125
|
+
test("should return undefined if the provided object is undefined", function() {
|
126
|
+
equals(SC.get(undefined, 'key'), undefined);
|
127
|
+
});
|
59
128
|
|
60
129
|
// ..........................................................
|
61
130
|
// SET()
|
@@ -13,6 +13,7 @@ function testConsole() {
|
|
13
13
|
return {
|
14
14
|
log: function() { return true; },
|
15
15
|
alert: function() { return true; },
|
16
|
+
debug: function() { return true; },
|
16
17
|
dir: function() { return true; },
|
17
18
|
dirxml: function() { return true; },
|
18
19
|
error: function() { return true; },
|
@@ -26,12 +27,13 @@ function testConsole() {
|
|
26
27
|
trace: function() { return true; },
|
27
28
|
warn: function() { return true; }
|
28
29
|
};
|
29
|
-
}
|
30
|
+
}
|
30
31
|
|
31
32
|
module("SC.Logger", {
|
32
33
|
setup: function() {
|
33
34
|
SC.Logger.set('reporter', testConsole());
|
34
35
|
|
36
|
+
SC.Logger.debugEnabled = true;
|
35
37
|
SC.Logger.format = true;
|
36
38
|
SC.Logger.fallBackOnLog = true;
|
37
39
|
SC.Logger.fallBackOnAlert = false;
|
@@ -58,6 +60,16 @@ test("log", function() {
|
|
58
60
|
equals(SC.Logger.log("test"), true, "Function is null -- fallBackOnAlert true");
|
59
61
|
});
|
60
62
|
|
63
|
+
test("debug", function() {
|
64
|
+
equals(SC.Logger.debug("Debug"), true, "Function is defined");
|
65
|
+
|
66
|
+
SC.Logger.get('reporter').debug = null;
|
67
|
+
equals(SC.Logger.debug("Debug"), true, "Function is null -- fallBackOnLog true");
|
68
|
+
|
69
|
+
SC.Logger.fallBackOnLog = false;
|
70
|
+
equals(SC.Logger.debug("Debug"), false, "Function is null -- fallBackOnLog false");
|
71
|
+
});
|
72
|
+
|
61
73
|
test("dir", function() {
|
62
74
|
equals(SC.Logger.dir({test:"string"}), true, "Function is defined");
|
63
75
|
|
@@ -162,4 +174,4 @@ test("_argumentsToString", function() {
|
|
162
174
|
|
163
175
|
SC.LOGGER_LOG_DELIMITER = "|";
|
164
176
|
equals(SC.Logger._argumentsToString.apply(SC.Logger, ["test", "test2"]), "test|test2", "Formatting using custom delimiter");
|
165
|
-
});
|
177
|
+
});
|
@@ -1,7 +1,7 @@
|
|
1
1
|
/*! @license
|
2
2
|
==========================================================================
|
3
3
|
SproutCore -- JavaScript Application Framework
|
4
|
-
copyright 2006-
|
4
|
+
copyright 2006-2009, Sprout Systems Inc., Apple Inc. and contributors.
|
5
5
|
|
6
6
|
Permission is hereby granted, free of charge, to any person obtaining a
|
7
7
|
copy of this software and associated documentation files (the "Software"),
|
@@ -21,6 +21,8 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
21
21
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
22
22
|
DEALINGS IN THE SOFTWARE.
|
23
23
|
|
24
|
+
SproutCore and the SproutCore logo are trademarks of Sprout Systems, Inc.
|
25
|
+
|
24
26
|
For more information about SproutCore, visit http://www.sproutcore.com
|
25
27
|
|
26
28
|
|
Binary file
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
Binary file
|
Binary file
|
@@ -65,4 +65,18 @@
|
|
65
65
|
}
|
66
66
|
|
67
67
|
|
68
|
-
/* @end */
|
68
|
+
/* @end */
|
69
|
+
|
70
|
+
/* @group Branch */
|
71
|
+
|
72
|
+
.sc-list-item-view .branch {
|
73
|
+
background-image: sc_static('icons/mini_454545');
|
74
|
+
background-position: -32px 0;
|
75
|
+
}
|
76
|
+
|
77
|
+
.sc-list-item-view.sel .branch,
|
78
|
+
.sc-list-item-view.active .branch {
|
79
|
+
background-image: sc_static('icons/mini_ffffff');
|
80
|
+
}
|
81
|
+
|
82
|
+
/* @end */
|
@@ -1,3 +1,12 @@
|
|
1
1
|
.sc-theme .sc-menu-item {
|
2
2
|
display:block !important;
|
3
|
+
}
|
4
|
+
|
5
|
+
.sc-menu-item div.checkbox {
|
6
|
+
background-image: sc_static('icons/mini_454545');
|
7
|
+
background-position: -66px -147px;
|
8
|
+
}
|
9
|
+
|
10
|
+
.sc-menu-item.focus div.checkbox {
|
11
|
+
background-image: sc_static('icons/mini_ffffff');
|
3
12
|
}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
/** SC.Panel Support */
|
2
|
+
|
3
|
+
.sc-theme .sc-pane.sc-panel > .top-right-edge {
|
4
|
+
background: static_url('images/panels/sprite-x.png') no-repeat -40px -120px;
|
5
|
+
}
|
6
|
+
|
7
|
+
.sc-theme .sc-pane.sc-panel > .top-left-edge {
|
8
|
+
background: static_url('images/panels/sprite-x.png') no-repeat 0px -120px;
|
9
|
+
}
|
10
|
+
|
11
|
+
.sc-theme .sc-pane.sc-panel > .bottom-left-edge {
|
12
|
+
background: static_url('images/panels/sprite-x.png') no-repeat 0px -160px;
|
13
|
+
}
|
14
|
+
|
15
|
+
.sc-theme .sc-pane.sc-panel > .bottom-right-edge {
|
16
|
+
background: static_url('images/panels/sprite-x.png') no-repeat -40px -160px;
|
17
|
+
}
|
18
|
+
|
19
|
+
.sc-theme .sc-pane.sc-panel > .top-edge {
|
20
|
+
background: static_url('images/panels/sprite-x.png') repeat-x 0px -230px;
|
21
|
+
}
|
22
|
+
|
23
|
+
.sc-theme .sc-pane.sc-panel > .bottom-edge {
|
24
|
+
background: static_url('images/panels/sprite-x.png') repeat-x 0px -210px;
|
25
|
+
}
|
26
|
+
|
27
|
+
.sc-theme .sc-pane.sc-panel > .left-edge {
|
28
|
+
background: static_url('images/panels/sprite-y.png') repeat-y 0px 0px;
|
29
|
+
}
|
30
|
+
|
31
|
+
.sc-theme .sc-pane.sc-panel > .right-edge {
|
32
|
+
background: static_url('images/panels/sprite-y.png') repeat-y -20px 0px;
|
33
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
/** SC.PickerPane Support */
|
2
|
+
|
3
|
+
.sc-theme .sc-pane.sc-panel.sc-picker .perfectRight {
|
4
|
+
background: static_url('images/panels/sprite-x.png') no-repeat 0px -30px;
|
5
|
+
}
|
6
|
+
|
7
|
+
.sc-theme .sc-pane.sc-panel.sc-picker .perfectLeft {
|
8
|
+
background: static_url('images/panels/sprite-x.png') no-repeat -30px -30px;
|
9
|
+
}
|
10
|
+
|
11
|
+
.sc-theme .sc-pane.sc-panel.sc-picker .perfectTop {
|
12
|
+
background: static_url('images/panels/sprite-x.png') no-repeat 0px -90px;
|
13
|
+
}
|
14
|
+
|
15
|
+
.sc-theme .sc-pane.sc-panel.sc-picker .perfectBottom {
|
16
|
+
background: static_url('images/panels/sprite-x.png') no-repeat 0px 0px;
|
17
|
+
}
|
@@ -118,32 +118,35 @@
|
|
118
118
|
|
119
119
|
.sc-theme .sc-radio-view .sc-radio-button.disabled span.button,
|
120
120
|
.sc-theme .sc-radio-view.disabled .sc-radio-button span.button,
|
121
|
-
.sc-theme .sc-radio-view.
|
121
|
+
.sc-theme .sc-radio-view.disabled .sc-radio-button.active:hover span.button,
|
122
|
+
.sc-theme .sc-radio-view .sc-radio-button.disabled.active:hover span.button {
|
122
123
|
background: static_url('images/sc-theme-repeat-x.png') no-repeat -16px -226px;
|
123
124
|
}
|
124
125
|
|
125
126
|
.sc-theme .sc-radio-view.disabled .sc-radio-button.sel span.button,
|
127
|
+
.sc-theme .sc-radio-view.disabled .sc-radio-button.sel.active:hover span.button,
|
126
128
|
.sc-theme .sc-radio-view .sc-radio-button.sel.disabled span.button,
|
127
|
-
.sc-theme .sc-radio-view
|
129
|
+
.sc-theme .sc-radio-view .sc-radio-button.sel.disabled.active:hover span.button {
|
128
130
|
background: static_url('images/sc-theme-repeat-x.png') no-repeat -16px -280px;
|
129
131
|
}
|
130
132
|
|
131
133
|
.sc-theme .sc-radio-view.disabled .sc-radio-button.mixed span.button,
|
132
134
|
.sc-theme .sc-radio-view .sc-radio-button.mixed.disabled span.button,
|
133
|
-
.sc-theme .sc-radio-view.
|
135
|
+
.sc-theme .sc-radio-view.disabled .sc-radio-button.mixed.active:hover span.button,
|
136
|
+
.sc-theme .sc-radio-view .sc-radio-button.mixed.disabled span.button {
|
134
137
|
background: static_url('images/sc-theme-repeat-x.png') no-repeat 0px -308px;
|
135
138
|
}
|
136
139
|
|
137
140
|
|
138
|
-
.sc-theme .sc-radio-view
|
141
|
+
.sc-theme .sc-radio-view .sc-radio-button.active:hover span.button {
|
139
142
|
background: static_url('images/sc-theme-repeat-x.png') no-repeat -32px -200px;
|
140
143
|
}
|
141
144
|
|
142
|
-
.sc-theme .sc-radio-view
|
145
|
+
.sc-theme .sc-radio-view .sc-radio-button.active.sel:hover span.button {
|
143
146
|
background: static_url('images/sc-theme-repeat-x.png') no-repeat 0px -226px;
|
144
147
|
}
|
145
148
|
|
146
|
-
.sc-theme .sc-radio-view
|
149
|
+
.sc-theme .sc-radio-view .sc-radio-button.mixed.active:hover span.button {
|
147
150
|
background: static_url('images/sc-theme-repeat-x.png') no-repeat -16px -308px;
|
148
151
|
}
|
149
152
|
|
@@ -0,0 +1,36 @@
|
|
1
|
+
.sc-theme .sc-well-view .top-right-edge {
|
2
|
+
background: static_url('images/sc-theme-repeat-x.png') no-repeat right -1646px;
|
3
|
+
}
|
4
|
+
|
5
|
+
.sc-theme .sc-well-view .top-left-edge {
|
6
|
+
background: static_url('images/sc-theme-repeat-x.png') no-repeat left -1646px;
|
7
|
+
}
|
8
|
+
|
9
|
+
.sc-theme .sc-well-view .bottom-left-edge {
|
10
|
+
background: static_url('images/sc-theme-repeat-x.png') no-repeat left -1657px;
|
11
|
+
}
|
12
|
+
|
13
|
+
.sc-theme .sc-well-view .bottom-right-edge {
|
14
|
+
background: static_url('images/sc-theme-repeat-x.png') no-repeat right -1657px;
|
15
|
+
}
|
16
|
+
|
17
|
+
.sc-theme .sc-well-view .top-edge {
|
18
|
+
background: static_url('images/sc-theme-repeat-x.png') repeat-x right -1668px;
|
19
|
+
}
|
20
|
+
|
21
|
+
.sc-theme .sc-well-view .bottom-edge {
|
22
|
+
background: static_url('images/sc-theme-repeat-x.png') repeat-x right -1680px;
|
23
|
+
}
|
24
|
+
|
25
|
+
.sc-theme .sc-well-view .left-edge {
|
26
|
+
background: static_url('images/sc-theme-ysprite.png') repeat-y -16px top;
|
27
|
+
}
|
28
|
+
|
29
|
+
.sc-theme .sc-well-view .right-edge {
|
30
|
+
background: static_url('images/sc-theme-ysprite.png') repeat-y -28px top;
|
31
|
+
}
|
32
|
+
|
33
|
+
.sc-theme .sc-well-view .content-background {
|
34
|
+
background: #57647f;
|
35
|
+
opacity:0.4;
|
36
|
+
}
|
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
@extends <%= base_class_name || 'SC.Object' %>
|
12
12
|
*/
|
13
|
-
<%= namespace_instance_name %> = <%= base_class_name || 'SC.
|
13
|
+
<%= namespace_instance_name %> = <%= base_class_name || 'SC.ObjectController' %>.create(
|
14
14
|
/** @scope <%= namespace_instance_name %>.prototype */ {
|
15
15
|
|
16
16
|
// TODO: Add your own code here.
|
@@ -33,22 +33,55 @@ module SC
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def build_css(dst_path)
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
36
|
+
a = Regexp.new('^'+MANIFEST.build_root)
|
37
|
+
if dst_path =~ a
|
38
|
+
$to_minify= $to_minify+" "+dst_path
|
39
|
+
FileUtils.mkdir_p(File.dirname(dst_path))
|
40
|
+
FileUtils.copy(entry.source_path, dst_path)
|
41
|
+
else
|
42
|
+
yui_root = File.expand_path(File.join(LIBPATH, '..', 'vendor', 'yui-compressor'))
|
43
|
+
jar_path = File.join(yui_root, 'yuicompressor-2.4.2.jar')
|
44
|
+
FileUtils.mkdir_p(File.dirname(dst_path)) # make sure loc exists...
|
45
|
+
filecompress = "java -jar " + jar_path + " --charset utf-8 --line-break 0 --nomunge --preserve-semi --disable-optimizations " + entry.source_path + " -o \"" + dst_path + "\" 2>&1"
|
46
|
+
SC.logger.info 'Compressing CSS with YUI .... '+ dst_path
|
47
|
+
SC.logger.debug `#{filecompress}`
|
42
48
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
49
|
+
if $?.exitstatus != 0
|
50
|
+
_report_error(output, entry.filename, entry.source_path)
|
51
|
+
SC.logger.fatal("!!!!YUI compressor failed, please check that your css code is valid.")
|
52
|
+
SC.logger.fatal("!!!!Failed compressing CSS... "+ dst_path)
|
53
|
+
end
|
47
54
|
end
|
48
55
|
end
|
49
56
|
|
50
57
|
# Minify some javascript by invoking the YUI compressor.
|
51
58
|
def build_javascript(dst_path)
|
59
|
+
a = Regexp.new('^'+MANIFEST.build_root)
|
60
|
+
if dst_path =~ a
|
61
|
+
$to_minify= $to_minify+" "+dst_path
|
62
|
+
FileUtils.mkdir_p(File.dirname(dst_path))
|
63
|
+
FileUtils.copy(entry.source_path, dst_path)
|
64
|
+
else
|
65
|
+
yui_root = File.expand_path(File.join(LIBPATH, '..', 'vendor', 'yui-compressor'))
|
66
|
+
jar_path = File.join(yui_root, 'yuicompressor-2.4.2.jar')
|
67
|
+
FileUtils.mkdir_p(File.dirname(dst_path)) # make sure loc exists...
|
68
|
+
filecompress = "java -jar " + jar_path + " --charset utf-8 --line-break 80 " + entry.source_path + " -o \"" + dst_path + "\" 2>&1"
|
69
|
+
SC.logger.info 'Compressing with YUI: '+ dst_path + "..."
|
70
|
+
|
71
|
+
output = `#{filecompress}` # It'd be nice to just read STDERR, but
|
72
|
+
# I can't find a reasonable, commonly-
|
73
|
+
# installed, works-on-all-OSes solution.
|
74
|
+
if $?.exitstatus != 0
|
75
|
+
_report_error(output, entry.filename, entry.source_path)
|
76
|
+
SC.logger.fatal("!!!!YUI compressor failed, please check that your js code is valid")
|
77
|
+
SC.logger.fatal("!!!!Failed compressing ... "+ dst_path)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
def build_inline_javascript(dst_path)
|
83
|
+
SC.logger.info 'Compressing inline Javascript with YUI: ' + dst_path + "..."
|
84
|
+
system(yui_command('--line-break 0', dst_path))
|
52
85
|
yui_root = File.expand_path(File.join(LIBPATH, '..', 'vendor', 'yui-compressor'))
|
53
86
|
jar_path = File.join(yui_root, 'yuicompressor-2.4.2.jar')
|
54
87
|
FileUtils.mkdir_p(File.dirname(dst_path)) # make sure loc exists...
|
@@ -56,14 +89,13 @@ module SC
|
|
56
89
|
SC.logger.info 'Compressing with YUI: '+ dst_path + "..."
|
57
90
|
|
58
91
|
output = `#{filecompress}` # It'd be nice to just read STDERR, but
|
59
|
-
|
60
|
-
|
92
|
+
# I can't find a reasonable, commonly-
|
93
|
+
# installed, works-on-all-OSes solution.
|
61
94
|
if $?.exitstatus != 0
|
62
95
|
_report_error(output, entry.filename, entry.source_path)
|
63
96
|
SC.logger.fatal("!!!!YUI compressor failed, please check that your js code is valid")
|
64
97
|
SC.logger.fatal("!!!!Failed compressing ... "+ dst_path)
|
65
98
|
end
|
66
|
-
|
67
99
|
end
|
68
100
|
|
69
101
|
|