1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /*
- Copyright (c) 2004-2012, The Dojo Foundation All Rights Reserved.
- Available via Academic Free License >= 2.1 OR the modified BSD license.
- see: http://dojotoolkit.org/license for details
- */
- if(!dojo._hasResource["dojox.grid._RowManager"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
- dojo._hasResource["dojox.grid._RowManager"] = true;
- dojo.provide("dojox.grid._RowManager");
- (function(){
- var setStyleText = function(inNode, inStyleText){
- if(inNode.style.cssText == undefined){
- inNode.setAttribute("style", inStyleText);
- }else{
- inNode.style.cssText = inStyleText;
- }
- };
- dojo.declare("dojox.grid._RowManager", null, {
- // Stores information about grid rows. Owned by grid and used internally.
- constructor: function(inGrid){
- this.grid = inGrid;
- },
- linesToEms: 2,
- overRow: -2,
- // styles
- prepareStylingRow: function(inRowIndex, inRowNode){
- return {
- index: inRowIndex,
- node: inRowNode,
- odd: Boolean(inRowIndex&1),
- selected: !!this.grid.selection.isSelected(inRowIndex),
- over: this.isOver(inRowIndex),
- customStyles: "",
- customClasses: "dojoxGridRow"
- };
- },
- styleRowNode: function(inRowIndex, inRowNode){
- var row = this.prepareStylingRow(inRowIndex, inRowNode);
- this.grid.onStyleRow(row);
- this.applyStyles(row);
- },
- applyStyles: function(inRow){
- var i = inRow;
- i.node.className = i.customClasses;
- var h = i.node.style.height;
- setStyleText(i.node, i.customStyles + ';' + (i.node._style||''));
- i.node.style.height = h;
- },
- updateStyles: function(inRowIndex){
- this.grid.updateRowStyles(inRowIndex);
- },
- // states and events
- setOverRow: function(inRowIndex){
- var last = this.overRow;
- this.overRow = inRowIndex;
- if((last!=this.overRow)&&(dojo.isString(last) || last >= 0)){
- this.updateStyles(last);
- }
- this.updateStyles(this.overRow);
- },
- isOver: function(inRowIndex){
- return (this.overRow == inRowIndex && !dojo.hasClass(this.grid.domNode, "dojoxGridColumnResizing"));
- }
- });
- })();
- }
|