/*
	Copyright (c) 2004-2008, 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.compat._data.fields"]){dojo._hasResource["dojox.grid.compat._data.fields"]=true;dojo.provide("dojox.grid.compat._data.fields");dojo.declare("dojox.grid.data.Mixer",null,{constructor:function(){this.defaultValue={};this.values=[];},count:function(){return this.values.length;},clear:function(){this.values=[];},build:function(_1){var _2=dojo.mixin({owner:this},this.defaultValue);_2.key=_1;this.values[_1]=_2;return _2;},getDefault:function(){return this.defaultValue;},setDefault:function(_3){for(var i=0,a;(a=arguments[i]);i++){dojo.mixin(this.defaultValue,a);}},get:function(_6){return this.values[_6]||this.build(_6);},_set:function(_7,_8){var v=this.get(_7);for(var i=1;i<arguments.length;i++){dojo.mixin(v,arguments[i]);}this.values[_7]=v;},set:function(){if(arguments.length<1){return;}var a=arguments[0];if(!dojo.isArray(a)){this._set.apply(this,arguments);}else{if(a.length&&a[0]["default"]){this.setDefault(a.shift());}for(var i=0,l=a.length;i<l;i++){this._set(i,a[i]);}}},insert:function(_e,_f){if(_e>=this.values.length){this.values[_e]=_f;}else{this.values.splice(_e,0,_f);}},remove:function(_10){this.values.splice(_10,1);},swap:function(_11,_12){dojox.grid.arraySwap(this.values,_11,_12);},move:function(_13,_14){dojox.grid.arrayMove(this.values,_13,_14);}});dojox.grid.data.compare=function(a,b){return (a>b?1:(a==b?0:-1));};dojo.declare("dojox.grid.data.Field",null,{constructor:function(_17){this.name=_17;this.compare=dojox.grid.data.compare;},na:dojox.grid.na});dojo.declare("dojox.grid.data.Fields",dojox.grid.data.Mixer,{constructor:function(_18){var _19=_18?_18:dojox.grid.data.Field;this.defaultValue=new _19();},indexOf:function(_1a){for(var i=0;i<this.values.length;i++){var v=this.values[i];if(v&&v.key==_1a){return i;}}return -1;}});}