Skip to content

Commit

Permalink
Revert "Reverting SC.SegmentedView to old render method"
Browse files Browse the repository at this point in the history
This reverts commit 590f667.
  • Loading branch information
Juan Pinzon committed Dec 4, 2010
1 parent 0425ac3 commit 3514d5d
Showing 1 changed file with 8 additions and 31 deletions.
39 changes: 8 additions & 31 deletions frameworks/desktop/views/segmented.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// Project: SproutCore - JavaScript Application Framework
// Copyright: ©2006-2010 Sprout Systems, Inc. and contributors.
// Portions ©2008-2010 Apple Inc. All rights reserved.
// License: Licened under MIT license (see license.js)
// License: Licensed under MIT license (see license.js)
// ==========================================================================

/**
Expand Down Expand Up @@ -285,35 +285,8 @@ SC.SegmentedView = SC.View.extend(SC.Control,

displayProperties: ['displayItems', 'value', 'activeIndex'],

createRenderer: function(theme) {
return theme.segmented();
},

updateRenderer: function(r) {
var items = this.get('displayItems'), value = this.get('value'), isArray = SC.isArray(value),
activeIndex = this.get("activeIndex"), item;
for (var idx = 0, len = items.length; idx < len; idx++) {
item = items[idx];

// change active
if (activeIndex == idx) item.isActive = YES;
else item.isActive = NO;

// chance selection
if (isArray ? value.indexOf(item.value) : value === item.value) {
item.isSelected = YES;
}
else item.isSelected = NO;
}

// set the attributes
r.attr({
segments: items,
align: this.get('align'),
layoutDirection: this.get('layoutDirection')
});
},

renderDelegateName: 'segmentedRenderDelegate',

// ..........................................................
// EVENT HANDLING
//
Expand All @@ -323,7 +296,11 @@ SC.SegmentedView = SC.View.extend(SC.Control,
event occurred.
*/
displayItemIndexForEvent: function(evt) {
if (this.renderer) return this.renderer.indexForEvent(evt);
var renderDelegate = this.get('renderDelegate');

if (renderDelegate && renderDelegate.indexForClientPosition) {
return renderDelegate.indexForClientPosition(this, this.$(), evt.clientX, evt.clientY);
}
},

keyDown: function(evt) {
Expand Down

0 comments on commit 3514d5d

Please sign in to comment.