aboutsummaryrefslogtreecommitdiff
path: root/includes/js/dojox/grid/_grid/selection.js
diff options
context:
space:
mode:
Diffstat (limited to 'includes/js/dojox/grid/_grid/selection.js')
-rw-r--r--includes/js/dojox/grid/_grid/selection.js215
1 files changed, 0 insertions, 215 deletions
diff --git a/includes/js/dojox/grid/_grid/selection.js b/includes/js/dojox/grid/_grid/selection.js
deleted file mode 100644
index 75229c0..0000000
--- a/includes/js/dojox/grid/_grid/selection.js
+++ /dev/null
@@ -1,215 +0,0 @@
-if(!dojo._hasResource['dojox.grid._grid.selection']){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
-dojo._hasResource['dojox.grid._grid.selection'] = true;
-dojo.provide('dojox.grid._grid.selection');
-
-dojo.declare("dojox.grid.selection",
- null,
- {
- // summary:
- // Manages row selection for grid. Owned by grid and used internally
- // for selection. Override to implement custom selection.
-
- constructor: function(inGrid){
- this.grid = inGrid;
- this.selected = [];
- },
-
- multiSelect: true,
- selected: null,
- updating: 0,
- selectedIndex: -1,
-
- onCanSelect: function(inIndex){
- return this.grid.onCanSelect(inIndex);
- },
-
- onCanDeselect: function(inIndex){
- return this.grid.onCanDeselect(inIndex);
- },
-
- onSelected: function(inIndex){
- return this.grid.onSelected(inIndex);
- },
-
- onDeselected: function(inIndex){
- return this.grid.onDeselected(inIndex);
- },
-
- //onSetSelected: function(inIndex, inSelect) { };
- onChanging: function(){
- },
-
- onChanged: function(){
- return this.grid.onSelectionChanged();
- },
-
- isSelected: function(inIndex){
- return this.selected[inIndex];
- },
-
- getFirstSelected: function(){
- for(var i=0, l=this.selected.length; i<l; i++){
- if(this.selected[i]){
- return i;
- }
- }
- return -1;
- },
-
- getNextSelected: function(inPrev){
- for(var i=inPrev+1, l=this.selected.length; i<l; i++){
- if(this.selected[i]){
- return i;
- }
- }
- return -1;
- },
-
- getSelected: function(){
- var result = [];
- for(var i=0, l=this.selected.length; i<l; i++){
- if(this.selected[i]){
- result.push(i);
- }
- }
- return result;
- },
-
- getSelectedCount: function(){
- var c = 0;
- for(var i=0; i<this.selected.length; i++){
- if(this.selected[i]){
- c++;
- }
- }
- return c;
- },
-
- beginUpdate: function(){
- if(this.updating == 0){
- this.onChanging();
- }
- this.updating++;
- },
-
- endUpdate: function(){
- this.updating--;
- if(this.updating == 0){
- this.onChanged();
- }
- },
-
- select: function(inIndex){
- this.unselectAll(inIndex);
- this.addToSelection(inIndex);
- },
-
- addToSelection: function(inIndex){
- inIndex = Number(inIndex);
- if(this.selected[inIndex]){
- this.selectedIndex = inIndex;
- }else{
- if(this.onCanSelect(inIndex) !== false){
- this.selectedIndex = inIndex;
- this.beginUpdate();
- this.selected[inIndex] = true;
- this.grid.onSelected(inIndex);
- //this.onSelected(inIndex);
- //this.onSetSelected(inIndex, true);
- this.endUpdate();
- }
- }
- },
-
- deselect: function(inIndex){
- inIndex = Number(inIndex);
- if(this.selectedIndex == inIndex){
- this.selectedIndex = -1;
- }
- if(this.selected[inIndex]){
- if(this.onCanDeselect(inIndex) === false){
- return;
- }
- this.beginUpdate();
- delete this.selected[inIndex];
- this.grid.onDeselected(inIndex);
- //this.onDeselected(inIndex);
- //this.onSetSelected(inIndex, false);
- this.endUpdate();
- }
- },
-
- setSelected: function(inIndex, inSelect){
- this[(inSelect ? 'addToSelection' : 'deselect')](inIndex);
- },
-
- toggleSelect: function(inIndex){
- this.setSelected(inIndex, !this.selected[inIndex])
- },
-
- insert: function(inIndex){
- this.selected.splice(inIndex, 0, false);
- if(this.selectedIndex >= inIndex){
- this.selectedIndex++;
- }
- },
-
- remove: function(inIndex){
- this.selected.splice(inIndex, 1);
- if(this.selectedIndex >= inIndex){
- this.selectedIndex--;
- }
- },
-
- unselectAll: function(inExcept){
- for(var i in this.selected){
- if((i!=inExcept)&&(this.selected[i]===true)){
- this.deselect(i);
- }
- }
- },
-
- shiftSelect: function(inFrom, inTo){
- var s = (inFrom >= 0 ? inFrom : inTo), e = inTo;
- if(s > e){
- e = s;
- s = inTo;
- }
- for(var i=s; i<=e; i++){
- this.addToSelection(i);
- }
- },
-
- clickSelect: function(inIndex, inCtrlKey, inShiftKey){
- this.beginUpdate();
- if(!this.multiSelect){
- this.select(inIndex);
- }else{
- var lastSelected = this.selectedIndex;
- if(!inCtrlKey){
- this.unselectAll(inIndex);
- }
- if(inShiftKey){
- this.shiftSelect(lastSelected, inIndex);
- }else if(inCtrlKey){
- this.toggleSelect(inIndex);
- }else{
- this.addToSelection(inIndex)
- }
- }
- this.endUpdate();
- },
-
- clickSelectEvent: function(e){
- this.clickSelect(e.rowIndex, e.ctrlKey, e.shiftKey);
- },
-
- clear: function(){
- this.beginUpdate();
- this.unselectAll();
- this.endUpdate();
- }
-
-});
-
-}