sproutcore 0.9.0 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. data/Manifest.txt +42 -29
  2. data/README.txt +1 -1
  3. data/Rakefile +5 -0
  4. data/app_generators/sproutcore/sproutcore_generator.rb +4 -4
  5. data/app_generators/sproutcore/templates/sc-config.rb +72 -0
  6. data/bin/sc-build +2 -0
  7. data/clients/sc_docs/controllers/docs.js +1 -0
  8. data/clients/sc_docs/english.lproj/body.rhtml +5 -0
  9. data/clients/sc_docs/views/doc_frame.js +1 -1
  10. data/clients/sc_test_runner/controllers/runner.js +2 -2
  11. data/clients/sc_test_runner/english.lproj/body.rhtml +5 -0
  12. data/clients/sc_test_runner/main.js +12 -12
  13. data/clients/sc_test_runner/models/test.js +3 -0
  14. data/clients/sc_test_runner/views/test_label.js +1 -1
  15. data/config/hoe.rb +2 -0
  16. data/frameworks/sproutcore/controllers/array.js +132 -125
  17. data/frameworks/sproutcore/drag/drag.js +5 -2
  18. data/frameworks/sproutcore/english.lproj/buttons.css +64 -64
  19. data/frameworks/sproutcore/english.lproj/collections.css +82 -0
  20. data/frameworks/sproutcore/english.lproj/images/buttons-sprite.png +0 -0
  21. data/frameworks/sproutcore/english.lproj/images/sproutcore-logo.png +0 -0
  22. data/frameworks/sproutcore/english.lproj/images/sticky-note.png +0 -0
  23. data/frameworks/sproutcore/english.lproj/menu.css +1 -1
  24. data/frameworks/sproutcore/english.lproj/theme.css +13 -4
  25. data/frameworks/sproutcore/foundation/array.js +24 -2
  26. data/frameworks/sproutcore/foundation/benchmark.js +12 -5
  27. data/frameworks/sproutcore/foundation/observable.js +62 -1
  28. data/frameworks/sproutcore/foundation/utils.js +16 -0
  29. data/frameworks/sproutcore/tests/views/label_item.rhtml +21 -0
  30. data/frameworks/sproutcore/tests/views/list.rhtml +21 -0
  31. data/frameworks/sproutcore/tests/views/scroll.rhtml +21 -0
  32. data/frameworks/sproutcore/views/collection.js +401 -73
  33. data/frameworks/sproutcore/views/collection/collection_item.js +36 -0
  34. data/frameworks/sproutcore/views/collection/grid.js +149 -0
  35. data/frameworks/sproutcore/views/collection/image_cell.js +154 -0
  36. data/frameworks/sproutcore/views/collection/list.js +115 -0
  37. data/frameworks/sproutcore/views/collection/text_cell.js +128 -0
  38. data/frameworks/sproutcore/views/image.js +1 -1
  39. data/frameworks/sproutcore/views/label.js +6 -2
  40. data/frameworks/sproutcore/views/scroll.js +34 -0
  41. data/frameworks/sproutcore/views/view.js +12 -4
  42. data/generators/client/client_generator.rb +3 -11
  43. data/generators/client/templates/english.lproj/body.css +75 -0
  44. data/generators/client/templates/english.lproj/body.rhtml +17 -2
  45. data/generators/model/templates/fixture.js +32 -0
  46. data/lib/sproutcore/build_tools/html_builder.rb +29 -11
  47. data/lib/sproutcore/build_tools/resource_builder.rb +1 -1
  48. data/lib/sproutcore/bundle.rb +19 -7
  49. data/lib/sproutcore/library.rb +39 -21
  50. data/lib/sproutcore/merb/bundle_controller.rb +3 -8
  51. data/lib/sproutcore/version.rb +1 -1
  52. data/lib/sproutcore/view_helpers.rb +7 -5
  53. data/lib/sproutcore/view_helpers/core_views.rb +11 -3
  54. data/sc-config.rb +7 -0
  55. data/tasks/deployment.rake +15 -2
  56. metadata +44 -31
  57. data/app_generators/sproutcore/templates/environment.yml +0 -4
  58. data/environment.yml +0 -9
@@ -253,12 +253,14 @@ SC.Drag = SC.Object.extend(
253
253
  notifies it.
254
254
  */
255
255
  mouseDragged: function(evt) {
256
+
256
257
  // ignore duplicate calls.
257
258
  var loc = Event.pointerLocation(evt) ;
259
+
258
260
  if ((loc.x == this._lastLoc.x) && (loc.y == this._lastLoc.y)) return ;
259
261
  this._lastLoc = loc ;
260
262
  this.set('location', loc) ;
261
-
263
+
262
264
  this._positionGhostView(evt) ;
263
265
  var last = this._lastTarget ;
264
266
 
@@ -268,6 +270,7 @@ SC.Drag = SC.Object.extend(
268
270
  // last one or find one that will allow a drag operation
269
271
  var target = this._findDropTarget(evt) ; // deepest drop target
270
272
  var op = SC.DRAG_NONE ;
273
+
271
274
  while (target && (target != last) && (op == SC.DRAG_NONE)) {
272
275
 
273
276
  // make sure the drag source will permit a drop operation on the named target.
@@ -441,7 +444,6 @@ SC.Drag = SC.Object.extend(
441
444
 
442
445
  this._cachedDropTargets = ret ;
443
446
 
444
- console.log('ret: %@'.fmt(ret.join(','))) ;
445
447
  return ret ;
446
448
  },
447
449
 
@@ -454,6 +456,7 @@ SC.Drag = SC.Object.extend(
454
456
  var ret = null ;
455
457
  for(var idx=0;idx<dt.length;idx++) {
456
458
  var t = dt[idx] ;
459
+
457
460
  if(!t.get('isVisibleInWindow')) continue ;
458
461
 
459
462
  // get frame, converted to view.
@@ -1,4 +1,4 @@
1
-
1
+ /* @override http://localhost:4020/static/sproutcore/en/_cache/buttons-1205222977.css */
2
2
 
3
3
  /* @group Button Core */
4
4
 
@@ -33,14 +33,14 @@ a.regular,
33
33
  a.back {
34
34
  display: -moz-inline-box;
35
35
  display: inline-block;
36
- font-size: 12px;
36
+ font-size: 13px;
37
37
  height: 22px;
38
38
  min-width: 32px;
39
39
  padding-right: 20px;
40
40
  text-align: center;
41
41
  margin-left: 2px;
42
42
  margin-right: 2px ;
43
- background: transparent static_url('buttons.png') no-repeat scroll right -396px;
43
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -396px;
44
44
  }
45
45
 
46
46
  a.regular img,
@@ -51,14 +51,14 @@ a.back img {
51
51
  }
52
52
 
53
53
  a.regular span.button-inner {
54
- background: static_url('buttons.png') no-repeat 0 -132px;
54
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -132px;
55
55
  display: block ;
56
56
  height: 22px;
57
57
  position: relative ;
58
58
  }
59
59
 
60
60
  a.back span.button-inner {
61
- background: static_url('buttons.png') no-repeat 0 -264px;
61
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -264px;
62
62
  display: block ;
63
63
  height: 22px;
64
64
  position: relative ;
@@ -66,7 +66,7 @@ a.back span.button-inner {
66
66
 
67
67
  a.back span.label,
68
68
  a.regular span.label {
69
- background: transparent static_url('buttons.png') repeat-x left top;
69
+ background: transparent static_url('images/buttons-sprite.png') repeat-x left top;
70
70
  display: block ;
71
71
  font-weight: bold;
72
72
  text-align: center;
@@ -94,24 +94,24 @@ a.regular.sel,
94
94
  a.back.sel,
95
95
  a.regular.def,
96
96
  a.back.def {
97
- background: transparent static_url('buttons.png') no-repeat scroll right -440px;
97
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -440px;
98
98
  }
99
99
 
100
100
  a.regular.sel span.button-inner,
101
101
  a.regular.def span.button-inner {
102
- background: static_url('buttons.png') no-repeat 0 -176px;
102
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -176px;
103
103
  }
104
104
 
105
105
  a.back.sel span.button-inner,
106
106
  a.back.def span.button-inner {
107
- background: static_url('buttons.png') no-repeat 0 -308px;
107
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -308px;
108
108
  }
109
109
 
110
110
  a.regular.sel span.label,
111
111
  a.back.sel span.label,
112
112
  a.regular.def span.label,
113
113
  a.back.def span.label {
114
- background: static_url('buttons.png') repeat-x 0 -44px;
114
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -44px;
115
115
  }
116
116
 
117
117
  /* @end */
@@ -120,20 +120,20 @@ a.back.def span.label {
120
120
 
121
121
  a.regular.disabled,
122
122
  a.back.disabled {
123
- background: transparent static_url('buttons.png') no-repeat scroll right -484px;
123
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -484px;
124
124
  }
125
125
 
126
126
  a.regular.disabled span.button-inner {
127
- background: static_url('buttons.png') no-repeat 0 -220px;
127
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -220px;
128
128
  }
129
129
 
130
130
  a.back.disabled span.button-inner {
131
- background: static_url('buttons.png') no-repeat 0 -352px;
131
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -352px;
132
132
  }
133
133
 
134
134
  a.regular.disabled span.label,
135
135
  a.back.disabled span.label {
136
- background: static_url('buttons.png') repeat-x 0 -88px;
136
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -88px;
137
137
  color: #999;
138
138
  }
139
139
 
@@ -142,24 +142,24 @@ a.regular.sel.disabled,
142
142
  a.back.sel.disabled,
143
143
  a.regular.def.disabled,
144
144
  a.back.def.disabled {
145
- background: transparent static_url('buttons.png') no-repeat scroll right -506px;
145
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -506px;
146
146
  }
147
147
 
148
148
  a.regular.sel.disabled span.button-inner,
149
149
  a.regular.def.disabled span.button-inner {
150
- background: static_url('buttons.png') no-repeat 0 -242px;
150
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -242px;
151
151
  }
152
152
 
153
153
  a.back.sel.disabled span.button-inner,
154
154
  a.back.def.disabled span.button-inner {
155
- background: static_url('buttons.png') no-repeat 0 -374px;
155
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -374px;
156
156
  }
157
157
 
158
158
  a.regular.def.disabled span.label,
159
159
  a.back.def.disabled span.label,
160
160
  a.regular.sel.disabled span.label,
161
161
  a.back.sel.disabled span.label {
162
- background: static_url('buttons.png') repeat-x 0 -110px;
162
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -110px;
163
163
  color: #999;
164
164
  }
165
165
 
@@ -171,24 +171,24 @@ a.regular.sel.active,
171
171
  a.back.sel.active,
172
172
  a.regular.def.active,
173
173
  a.back.def.active {
174
- background: transparent static_url('buttons.png') no-repeat scroll right -462px;
174
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -462px;
175
175
  }
176
176
 
177
177
  a.regular.sel.active span.button-inner,
178
178
  a.regular.def.active span.button-inner {
179
- background: static_url('buttons.png') no-repeat 0 -198px;
179
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -198px;
180
180
  }
181
181
 
182
182
  a.back.sel.active span.button-inner,
183
183
  a.back.def.active span.button-inner {
184
- background: static_url('buttons.png') no-repeat 0 -330px;
184
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -330px;
185
185
  }
186
186
 
187
187
  a.regular.sel.active span.label,
188
188
  a.back.sel.active span.label,
189
189
  a.regular.def.active span.label,
190
190
  a.back.def.active span.label {
191
- background: static_url('buttons.png') repeat-x 0 -66px;
191
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -66px;
192
192
  }
193
193
 
194
194
  /* @end */
@@ -197,20 +197,20 @@ a.back.def.active span.label {
197
197
 
198
198
  a.regular.active,
199
199
  a.back.active {
200
- background: transparent static_url('buttons.png') no-repeat scroll right -418px;
200
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -418px;
201
201
  }
202
202
 
203
203
  a.regular.active span.button-inner {
204
- background: static_url('buttons.png') no-repeat 0 -154px;
204
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -154px;
205
205
  }
206
206
 
207
207
  a.back.active span.button-inner {
208
- background: static_url('buttons.png') no-repeat 0 -286px;
208
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -286px;
209
209
  }
210
210
 
211
211
  a.regular.active span.label,
212
212
  a.back.active span.label {
213
- background: static_url('buttons.png') repeat-x 0 -22px;
213
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -22px;
214
214
  }
215
215
 
216
216
  /* @end */
@@ -285,15 +285,15 @@ a.checkbox img.button {
285
285
  vertical-align: middle ;
286
286
  position: relative ;
287
287
  top: -1px;
288
- background: static_url('buttons.png') no-repeat 0 -708px;
288
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -708px;
289
289
  }
290
290
 
291
291
  a.checkbox.sel img.button {
292
- background: static_url('buttons.png') no-repeat -16px -724px;
292
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -724px;
293
293
  }
294
294
 
295
295
  a.checkbox.mixed img.button {
296
- background: static_url('buttons.png') no-repeat 0 -756px;
296
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -756px;
297
297
  }
298
298
 
299
299
 
@@ -307,15 +307,15 @@ a.checkbox.disabled {
307
307
  }
308
308
 
309
309
  a.checkbox.disabled img.button {
310
- background: static_url('buttons.png') no-repeat 0 -724px;
310
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -724px;
311
311
  }
312
312
 
313
313
  a.checkbox.sel.disabled img.button {
314
- background: static_url('buttons.png') no-repeat -16px -740px;
314
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -740px;
315
315
  }
316
316
 
317
317
  a.checkbox.mixed.disabled img.button {
318
- background: static_url('buttons.png') no-repeat 0 -772px;
318
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -772px;
319
319
  }
320
320
 
321
321
 
@@ -325,15 +325,15 @@ a.checkbox.mixed.disabled img.button {
325
325
  /* @group active */
326
326
 
327
327
  a.checkbox.active img.button {
328
- background: static_url('buttons.png') no-repeat -16px -708px;
328
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -708px;
329
329
  }
330
330
 
331
331
  a.checkbox.sel.active img.button {
332
- background: static_url('buttons.png') no-repeat 0 -740px;
332
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -740px;
333
333
  }
334
334
 
335
335
  a.checkbox.mixed.active img.button {
336
- background: static_url('buttons.png') no-repeat -16px -756px;
336
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -756px;
337
337
  }
338
338
 
339
339
 
@@ -357,15 +357,15 @@ a.radio img.button {
357
357
  vertical-align: middle ;
358
358
  position: relative ;
359
359
  top: -1px;
360
- background: static_url('buttons.png') no-repeat -16px -772px;
360
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -772px;
361
361
  }
362
362
 
363
363
  a.radio.sel img.button {
364
- background: static_url('buttons.png') no-repeat 0 -804px;
364
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -804px;
365
365
  }
366
366
 
367
367
  a.radio.mixed img.button {
368
- background: static_url('buttons.png') no-repeat -16px -820px;
368
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -820px;
369
369
  }
370
370
 
371
371
 
@@ -379,15 +379,15 @@ a.radio.disabled {
379
379
  }
380
380
 
381
381
  a.radio.disabled img.button {
382
- background: static_url('buttons.png') no-repeat -16px -788px;
382
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -788px;
383
383
  }
384
384
 
385
385
  a.radio.sel.disabled img.button {
386
- background: static_url('buttons.png') no-repeat 0px -820px;
386
+ background: static_url('images/buttons-sprite.png') no-repeat 0px -820px;
387
387
  }
388
388
 
389
389
  a.radio.mixed.disabled img.button {
390
- background: static_url('buttons.png') no-repeat -16px -836px;
390
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -836px;
391
391
  }
392
392
 
393
393
 
@@ -397,15 +397,15 @@ a.radio.mixed.disabled img.button {
397
397
  /* @group active */
398
398
 
399
399
  a.radio.active img.button {
400
- background: static_url('buttons.png') no-repeat 0px -788px;
400
+ background: static_url('images/buttons-sprite.png') no-repeat 0px -788px;
401
401
  }
402
402
 
403
403
  a.radio.sel.active img.button {
404
- background: static_url('buttons.png') no-repeat -16px -804px;
404
+ background: static_url('images/buttons-sprite.png') no-repeat -16px -804px;
405
405
  }
406
406
 
407
407
  a.radio.mixed.active img.button {
408
- background: static_url('buttons.png') no-repeat 0px -836px;
408
+ background: static_url('images/buttons-sprite.png') no-repeat 0px -836px;
409
409
  }
410
410
 
411
411
 
@@ -420,7 +420,7 @@ a.radio.mixed.active img.button {
420
420
  a.square {
421
421
  display: -moz-inline-box;
422
422
  display: inline-block;
423
- font-size: 12px;
423
+ font-size: 13px;
424
424
  height: 22px;
425
425
  text-align: center;
426
426
  margin: 0;
@@ -432,7 +432,7 @@ a.square span.button-inner {
432
432
  }
433
433
 
434
434
  a.square span.label {
435
- background: transparent static_url('buttons.png') repeat-x left top;
435
+ background: transparent static_url('images/buttons-sprite.png') repeat-x left top;
436
436
  display: block ;
437
437
  font-weight: bold;
438
438
  text-align: center;
@@ -450,7 +450,7 @@ a.square span.label {
450
450
 
451
451
  a.square.sel span.label,
452
452
  a.square.def span.label {
453
- background: static_url('buttons.png') repeat-x 0 -44px;
453
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -44px;
454
454
  }
455
455
 
456
456
  /* @end */
@@ -458,13 +458,13 @@ a.square.def span.label {
458
458
  /* @group disabled */
459
459
 
460
460
  a.square.disabled span.label {
461
- background: static_url('buttons.png') repeat-x 0 -88px;
461
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -88px;
462
462
  color: #999;
463
463
  }
464
464
 
465
465
  a.square.def.disabled span.label,
466
466
  a.square.sel.disabled span.label {
467
- background: static_url('buttons.png') repeat-x 0 -110px;
467
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -110px;
468
468
  color: #999;
469
469
  }
470
470
 
@@ -474,7 +474,7 @@ a.square.sel.disabled span.label {
474
474
 
475
475
  a.square.sel.active span.label,
476
476
  a.square.def.active span.label {
477
- background: static_url('buttons.png') repeat-x 0 -66px;
477
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -66px;
478
478
  }
479
479
 
480
480
  /* @end */
@@ -482,7 +482,7 @@ a.square.def.active span.label {
482
482
  /* @group active */
483
483
 
484
484
  a.square.active span.label {
485
- background: static_url('buttons.png') repeat-x 0 -22px;
485
+ background: static_url('images/buttons-sprite.png') repeat-x 0 -22px;
486
486
  }
487
487
 
488
488
  /* @end */
@@ -498,7 +498,7 @@ a.popup,
498
498
  a.dropdown {
499
499
  display: -moz-inline-box;
500
500
  display: inline-block;
501
- font-size: 12px;
501
+ font-size: 13px;
502
502
  height: 22px;
503
503
  min-width: 32px;
504
504
  padding-right: 32px;
@@ -508,24 +508,24 @@ a.dropdown {
508
508
  }
509
509
 
510
510
  a.dropdown {
511
- background: transparent static_url('buttons.png') no-repeat scroll right -528px;
511
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -528px;
512
512
  }
513
513
 
514
514
  a.popup {
515
- background: transparent static_url('buttons.png') no-repeat scroll right -594px;
515
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -594px;
516
516
  }
517
517
 
518
518
 
519
519
  a.dropdown span.button-inner,
520
520
  a.popup span.button-inner {
521
- background: static_url('buttons.png') no-repeat 0 -132px;
521
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -132px;
522
522
  display: block ;
523
523
  height: 22px;
524
524
  }
525
525
 
526
526
  a.dropdown span.label,
527
527
  a.popup span.label {
528
- background: transparent static_url('buttons.png') repeat-x left top;
528
+ background: transparent static_url('images/buttons-sprite.png') repeat-x left top;
529
529
  display: block ;
530
530
  font-weight: bold;
531
531
  text-align: left;
@@ -541,21 +541,21 @@ a.popup span.label {
541
541
  /* @group active */
542
542
 
543
543
  a.dropdown.active {
544
- background: transparent static_url('buttons.png') no-repeat scroll right -550px;
544
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -550px;
545
545
  }
546
546
 
547
547
  a.popup.active {
548
- background: transparent static_url('buttons.png') no-repeat scroll right -616px;
548
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -616px;
549
549
  }
550
550
 
551
551
  a.dropdown.active span.button-inner,
552
552
  a.popup.active span.button-inner {
553
- background: static_url('buttons.png') no-repeat 0 -154px;
553
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -154px;
554
554
  }
555
555
 
556
556
  a.dropdown.active span.label,
557
557
  a.popup.active span.label {
558
- background: transparent static_url('buttons.png') repeat-x left -22px;
558
+ background: transparent static_url('images/buttons-sprite.png') repeat-x left -22px;
559
559
  }
560
560
 
561
561
  /* @end */
@@ -563,21 +563,21 @@ a.popup.active span.label {
563
563
  /* @group disabled */
564
564
 
565
565
  a.dropdown.disabled {
566
- background: transparent static_url('buttons.png') no-repeat scroll right -572px;
566
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -572px;
567
567
  }
568
568
 
569
569
  a.popup.disabled {
570
- background: transparent static_url('buttons.png') no-repeat scroll right -638px;
570
+ background: transparent static_url('images/buttons-sprite.png') no-repeat scroll right -638px;
571
571
  }
572
572
 
573
573
  a.dropdown.disabled span.button-inner,
574
574
  a.popup.disabled span.button-inner {
575
- background: static_url('buttons.png') no-repeat 0 -220px;
575
+ background: static_url('images/buttons-sprite.png') no-repeat 0 -220px;
576
576
  }
577
577
 
578
578
  a.dropdown.disabled span.label,
579
579
  a.popup.disabled span.label {
580
- background: transparent static_url('buttons.png') repeat-x left -88px;
580
+ background: transparent static_url('images/buttons-sprite.png') repeat-x left -88px;
581
581
  color: #999;
582
582
  }
583
583