define("dojox/grid/_RowSelector", [
"dojo/_base/declare",
"./_View"
], function(declare, _View){
return declare('dojox.grid._RowSelector', _View, {
// summary:
// Custom grid view. If used in a grid structure, provides a small selectable region for grid rows.
defaultWidth: "2em",
noscroll: true,
padBorderWidth: 2,
buildRendering: function(){
this.inherited('buildRendering', arguments);
this.scrollboxNode.style.overflow = "hidden";
this.headerNode.style.visibility = "hidden";
},
getWidth: function(){
return this.viewWidth || this.defaultWidth;
},
buildRowContent: function(inRowIndex, inRowNode){
var w = this.contentWidth || 0;
inRowNode.innerHTML = '
';
},
renderHeader: function(){
},
updateRow: function(){
},
resize: function(){
this.adaptHeight();
},
adaptWidth: function(){
// Only calculate this here - rather than every call to buildRowContent
if(!("contentWidth" in this) && this.contentNode && this.contentNode.offsetWidth > 0){
this.contentWidth = this.contentNode.offsetWidth - this.padBorderWidth;
}
},
// styling
doStyleRowNode: function(inRowIndex, inRowNode){
var n = [ "dojoxGridRowbar dojoxGridNonNormalizedCell" ];
if(this.grid.rows.isOver(inRowIndex)){
n.push("dojoxGridRowbarOver");
}
if(this.grid.selection.isSelected(inRowIndex)){
n.push("dojoxGridRowbarSelected");
}
inRowNode.className = n.join(" ");
},
// event handlers
domouseover: function(e){
this.grid.onMouseOverRow(e);
},
domouseout: function(e){
if(!this.isIntraRowEvent(e)){
this.grid.onMouseOutRow(e);
}
}
});
});