From 1c5685d68f1b73270fb814fe04cbb490eb90ba5f Mon Sep 17 00:00:00 2001 From: mensonge Date: Fri, 14 Nov 2008 15:39:19 +0000 Subject: Minor fix: Remove DOJO library (60Mo) replaced by link to Google CDN (online DOJO library) git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@159 b3834d28-1941-0410-a4f8-b48e95affb8f --- includes/js/dojox/grid/_grid/Grid.css | 201 -------- .../js/dojox/grid/_grid/Grid.css.commented.css | 258 ---------- includes/js/dojox/grid/_grid/Grid_rtl.css | 8 - .../js/dojox/grid/_grid/Grid_rtl.css.commented.css | 10 - includes/js/dojox/grid/_grid/builder.js | 522 --------------------- includes/js/dojox/grid/_grid/cell.js | 66 --- includes/js/dojox/grid/_grid/drag.js | 113 ----- includes/js/dojox/grid/_grid/edit.js | 238 ---------- includes/js/dojox/grid/_grid/focus.js | 207 -------- .../dojox/grid/_grid/images/grid_dx_gradient.gif | Bin 267 -> 0 bytes .../js/dojox/grid/_grid/images/grid_sort_down.gif | Bin 49 -> 0 bytes .../js/dojox/grid/_grid/images/grid_sort_up.gif | Bin 48 -> 0 bytes .../dojox/grid/_grid/images/tabEnabled_rotated.png | Bin 94 -> 0 bytes .../dojox/grid/_grid/images/tabHover_rotated.png | Bin 106 -> 0 bytes includes/js/dojox/grid/_grid/layout.js | 75 --- includes/js/dojox/grid/_grid/lib.js | 254 ---------- includes/js/dojox/grid/_grid/nihiloGrid.css | 211 --------- .../dojox/grid/_grid/nihiloGrid.css.commented.css | 275 ----------- includes/js/dojox/grid/_grid/publicEvents.js | 451 ------------------ includes/js/dojox/grid/_grid/rowbar.js | 53 --- includes/js/dojox/grid/_grid/rows.js | 66 --- includes/js/dojox/grid/_grid/scroller.js | 489 ------------------- includes/js/dojox/grid/_grid/selection.js | 215 --------- includes/js/dojox/grid/_grid/soriaGrid.css | 212 --------- .../dojox/grid/_grid/soriaGrid.css.commented.css | 276 ----------- includes/js/dojox/grid/_grid/tundraGrid.css | 215 --------- .../dojox/grid/_grid/tundraGrid.css.commented.css | 281 ----------- includes/js/dojox/grid/_grid/view.js | 336 ------------- includes/js/dojox/grid/_grid/views.js | 277 ----------- 29 files changed, 5309 deletions(-) delete mode 100644 includes/js/dojox/grid/_grid/Grid.css delete mode 100644 includes/js/dojox/grid/_grid/Grid.css.commented.css delete mode 100644 includes/js/dojox/grid/_grid/Grid_rtl.css delete mode 100644 includes/js/dojox/grid/_grid/Grid_rtl.css.commented.css delete mode 100644 includes/js/dojox/grid/_grid/builder.js delete mode 100644 includes/js/dojox/grid/_grid/cell.js delete mode 100644 includes/js/dojox/grid/_grid/drag.js delete mode 100644 includes/js/dojox/grid/_grid/edit.js delete mode 100644 includes/js/dojox/grid/_grid/focus.js delete mode 100644 includes/js/dojox/grid/_grid/images/grid_dx_gradient.gif delete mode 100644 includes/js/dojox/grid/_grid/images/grid_sort_down.gif delete mode 100644 includes/js/dojox/grid/_grid/images/grid_sort_up.gif delete mode 100644 includes/js/dojox/grid/_grid/images/tabEnabled_rotated.png delete mode 100644 includes/js/dojox/grid/_grid/images/tabHover_rotated.png delete mode 100644 includes/js/dojox/grid/_grid/layout.js delete mode 100644 includes/js/dojox/grid/_grid/lib.js delete mode 100644 includes/js/dojox/grid/_grid/nihiloGrid.css delete mode 100644 includes/js/dojox/grid/_grid/nihiloGrid.css.commented.css delete mode 100644 includes/js/dojox/grid/_grid/publicEvents.js delete mode 100644 includes/js/dojox/grid/_grid/rowbar.js delete mode 100644 includes/js/dojox/grid/_grid/rows.js delete mode 100644 includes/js/dojox/grid/_grid/scroller.js delete mode 100644 includes/js/dojox/grid/_grid/selection.js delete mode 100644 includes/js/dojox/grid/_grid/soriaGrid.css delete mode 100644 includes/js/dojox/grid/_grid/soriaGrid.css.commented.css delete mode 100644 includes/js/dojox/grid/_grid/tundraGrid.css delete mode 100644 includes/js/dojox/grid/_grid/tundraGrid.css.commented.css delete mode 100644 includes/js/dojox/grid/_grid/view.js delete mode 100644 includes/js/dojox/grid/_grid/views.js (limited to 'includes/js/dojox/grid/_grid') diff --git a/includes/js/dojox/grid/_grid/Grid.css b/includes/js/dojox/grid/_grid/Grid.css deleted file mode 100644 index 655be54..0000000 --- a/includes/js/dojox/grid/_grid/Grid.css +++ /dev/null @@ -1,201 +0,0 @@ -.dojoxGrid { - position: relative; - background-color: #EBEADB; - font-family: Geneva, Arial, Helvetica, sans-serif; - -moz-outline-style: none; - outline: none; - overflow: hidden; - height: 0; -} -.dojoxGrid table { - padding: 0; -} -.dojoxGrid td { - -moz-outline: none; -} -.dojoxGrid-master-header { - position: relative; -} -.dojoxGrid-master-view { - position: relative; -} -.dojoxGrid-view { - position: absolute; - overflow: hidden; -} -.dojoxGrid-header { - position: absolute; - overflow: hidden; -} -.dojoxGrid-header { - background-color: #E8E1CF; -} -.dojoxGrid-header table { - text-align: center; -} -.dojoxGrid-header .dojoxGrid-cell-content { - text-align: center; -} -.dojoxGrid-header .dojoxGrid-cell { - border: 1px solid; - border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; - background: url(images/grid_dx_gradient.gif) #E8E1CF top repeat-x; - padding-bottom: 2px; -} -.dojoxGrid-header .dojoxGrid-cell-over { - background-image: none; - background-color: white; - border-bottom-color: #FEBE47; - margin-bottom: 0; - padding-bottom: 0; - border-bottom-width: 3px; -} -.dojoxGrid-sort-down { - background: url(images/grid_sort_down.gif) left no-repeat; - padding-left:16px; - margin-left:4px; -} -.dojoxGrid-sort-up { - background: url(images/grid_sort_up.gif) left no-repeat; - padding-left:16px; - margin-left:4px; -} -.dojoxGrid-scrollbox { - position: relative; - overflow: scroll; - background-color: white; - width: 100%; -} -.dojoxGrid-content { - position: relative; - overflow: hidden; - -moz-outline-style: none; - outline: none; -} -.dojoxGrid-rowbar { - border: 1px solid; - border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; - border-top: none; - background: url(images/grid_dx_gradient.gif) #E8E1CF top repeat-x; -} -.dojoxGrid-rowbar-inner { - border-top: 1px solid #F6F4EB; -} -.dojoxGrid-rowbar-over { - background-image: none; - background-color: white; - border-top-color: #FEBE47; - border-bottom-color: #FEBE47; -} -.dojoxGrid-rowbar-selected { - background-color: #D9E8F9; - background-image: none; - - background-position: center; - background-repeat: no-repeat; -} -.dojoxGrid-row { - position: relative; - width: 9000em; -} -.dojoxGrid-row { - - border: 1px solid #E8E4D8; - border-color: #F8F7F1; - - border-left: none; - border-right: none; - background-color: white; - border-top: none; -} -.dojoxGrid-row-over { - border-top-color: #FEBE47; - border-bottom-color: #FEBE47; - - - -} -.dojoxGrid-row-odd { - background-color: #FFFDF3; - -} -.dojoxGrid-row-selected { - background-color: #D9E8F9; -} -.dojoxGrid-row-table { - table-layout: fixed; - width: 0; -} -.dojoxGrid-invisible { - visibility: hidden; -} -.Xdojo-ie .dojoxGrid-invisible { - display: none; -} -.dojoxGrid-invisible td, .dojoxGrid-header .dojoxGrid-invisible td { - border-top-width: 0; - border-bottom-width: 0; - padding-top: 0; - padding-bottom: 0; - height: 0; - overflow: hidden; -} -.dojoxGrid-cell { - border: 1px solid; - border-color: #EBEADB; - border-right-color: #D5CDB5; - padding: 3px 3px 3px 3px; - text-align: left; - overflow: hidden; -} -.dojoxGrid-cell-focus { - border: 1px dashed blue; -} -.dojoxGrid-cell-over { - border: 1px dotted #FEBE47; -} -.dojoxGrid-cell-focus.dojoxGrid-cell-over { - border: 1px dotted green; -} -.dojoxGrid-cell-clip { - width: 100%; - overflow: hidden; - white-space:nowrap; - text-overflow: ellipsis; -} -.dojoxGrid-row-editing td { - background-color: #F4FFF4; -} -.dojoxGrid-row-inserting td { - background-color: #F4FFF4; -} -.dojoxGrid-row-inflight td { - background-color: #F2F7B7; -} -.dojoxGrid-row-error td { - background-color: #F8B8B6; -} -.dojoxGrid-input, .dojoxGrid-select, .dojoxGrid-textarea { - margin: 0; - padding: 0; - border-style: none; - width: 100%; - font-size: 100%; - font-family: inherit; -} -.dojoxGrid-hidden-focus { - position: absolute; - left: -1000px; - top: -1000px; - height: 0px, width: 0px; -} -.gridArrowButtonChar { - display:none !important; -} -.dijit_a11y .gridArrowButtonChar { - display:inline !important; -} -.dijit_a11y .dojoxGrid-sort-down, .dijit_a11y .dojoxGrid-sort-up { - margin-left: 0; - padding-left: 0; -} diff --git a/includes/js/dojox/grid/_grid/Grid.css.commented.css b/includes/js/dojox/grid/_grid/Grid.css.commented.css deleted file mode 100644 index 227ffa3..0000000 --- a/includes/js/dojox/grid/_grid/Grid.css.commented.css +++ /dev/null @@ -1,258 +0,0 @@ -.dojoxGrid { - position: relative; - background-color: #EBEADB; - font-family: Geneva, Arial, Helvetica, sans-serif; - -moz-outline-style: none; - outline: none; - overflow: hidden; - height: 0; -} - -.dojoxGrid table { - padding: 0; -} - -.dojoxGrid td { - -moz-outline: none; -} - -/* master header */ - -.dojoxGrid-master-header { - position: relative; -} - -/* master view */ - -.dojoxGrid-master-view { - position: relative; -} - -/* views */ - -.dojoxGrid-view { - position: absolute; - overflow: hidden; -} - -/* header */ - -.dojoxGrid-header { - position: absolute; - overflow: hidden; -} - -.dojoxGrid-header { - background-color: #E8E1CF; -} - -.dojoxGrid-header table { - text-align: center; -} - -.dojoxGrid-header .dojoxGrid-cell-content { - text-align: center; -} - -.dojoxGrid-header .dojoxGrid-cell { - border: 1px solid; - border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; - background: url(images/grid_dx_gradient.gif) #E8E1CF top repeat-x; - padding-bottom: 2px; -} - -.dojoxGrid-header .dojoxGrid-cell-over { - background-image: none; - background-color: white; - border-bottom-color: #FEBE47; - margin-bottom: 0; - padding-bottom: 0; - border-bottom-width: 3px; -} - -.dojoxGrid-sort-down { - background: url(images/grid_sort_down.gif) left no-repeat; - padding-left:16px; - margin-left:4px; -} - -.dojoxGrid-sort-up { - background: url(images/grid_sort_up.gif) left no-repeat; - padding-left:16px; - margin-left:4px; -} - -/* content */ - -.dojoxGrid-scrollbox { - position: relative; - overflow: scroll; - background-color: white; - width: 100%; -} - -.dojoxGrid-content { - position: relative; - overflow: hidden; - -moz-outline-style: none; - outline: none; -} - -/* rowbar */ - -.dojoxGrid-rowbar { - border: 1px solid; - border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; - border-top: none; - background: url(images/grid_dx_gradient.gif) #E8E1CF top repeat-x; -} - -.dojoxGrid-rowbar-inner { - border-top: 1px solid #F6F4EB; -} - -.dojoxGrid-rowbar-over { - background-image: none; - background-color: white; - border-top-color: #FEBE47; - border-bottom-color: #FEBE47; -} - -.dojoxGrid-rowbar-selected { - background-color: #D9E8F9; - background-image: none; - /*background-image: url(images/grid_green_dot.gif);*/ - background-position: center; - background-repeat: no-repeat; -} - -/* rows */ - -.dojoxGrid-row { - position: relative; - width: 9000em; -} - -.dojoxGrid-row { - /*border: 1px solid #E8E4D8;*/ - border: 1px solid #E8E4D8; - border-color: #F8F7F1; - /*padding: 0 0 1px 0;*/ - border-left: none; - border-right: none; - background-color: white; - border-top: none; -} - -.dojoxGrid-row-over { - border-top-color: #FEBE47; - border-bottom-color: #FEBE47; - /*border-bottom-width: 2px; - padding-bottom: 0;*/ - /*background-color: #FFDD9D;*/ - /*background-color: #FDFDFD;*/ -} - -.dojoxGrid-row-odd { - background-color: #FFFDF3; - /*background-color: #F9F7E8;*/ -} - -.dojoxGrid-row-selected { - background-color: #D9E8F9; -} - -.dojoxGrid-row-table { - table-layout: fixed; - width: 0; -} - -.dojoxGrid-invisible { - visibility: hidden; -} - -.Xdojo-ie .dojoxGrid-invisible { - display: none; -} - -.dojoxGrid-invisible td, .dojoxGrid-header .dojoxGrid-invisible td { - border-top-width: 0; - border-bottom-width: 0; - padding-top: 0; - padding-bottom: 0; - height: 0; - overflow: hidden; -} - -/* cells */ - -.dojoxGrid-cell { - border: 1px solid; - border-color: #EBEADB; - border-right-color: #D5CDB5; - padding: 3px 3px 3px 3px; - text-align: left; - overflow: hidden; -} - -.dojoxGrid-cell-focus { - border: 1px dashed blue; -} - -.dojoxGrid-cell-over { - border: 1px dotted #FEBE47; -} - -.dojoxGrid-cell-focus.dojoxGrid-cell-over { - border: 1px dotted green; -} - -.dojoxGrid-cell-clip { - width: 100%; - overflow: hidden; - white-space:nowrap; - text-overflow: ellipsis; -} - -/* editing */ - -.dojoxGrid-row-editing td { - background-color: #F4FFF4; -} - -.dojoxGrid-row-inserting td { - background-color: #F4FFF4; -} -.dojoxGrid-row-inflight td { - background-color: #F2F7B7; -} -.dojoxGrid-row-error td { - background-color: #F8B8B6; -} - -.dojoxGrid-input, .dojoxGrid-select, .dojoxGrid-textarea { - margin: 0; - padding: 0; - border-style: none; - width: 100%; - font-size: 100%; - font-family: inherit; -} - -.dojoxGrid-hidden-focus { - position: absolute; - left: -1000px; - top: -1000px; - height: 0px, width: 0px; -} - -.gridArrowButtonChar { - display:none !important; -} -.dijit_a11y .gridArrowButtonChar { - display:inline !important; -} -.dijit_a11y .dojoxGrid-sort-down, .dijit_a11y .dojoxGrid-sort-up { - margin-left: 0; - padding-left: 0; -} diff --git a/includes/js/dojox/grid/_grid/Grid_rtl.css b/includes/js/dojox/grid/_grid/Grid_rtl.css deleted file mode 100644 index 88ab215..0000000 --- a/includes/js/dojox/grid/_grid/Grid_rtl.css +++ /dev/null @@ -1,8 +0,0 @@ -.dijitRtl .dojoxGrid-header table { -} -.dj_ie .dijitRtl .dojoxGrid-header table { - float:none; -} -.dijitRtl .dojoxGrid-content { - float:left; -} diff --git a/includes/js/dojox/grid/_grid/Grid_rtl.css.commented.css b/includes/js/dojox/grid/_grid/Grid_rtl.css.commented.css deleted file mode 100644 index c240b4c..0000000 --- a/includes/js/dojox/grid/_grid/Grid_rtl.css.commented.css +++ /dev/null @@ -1,10 +0,0 @@ -.dijitRtl .dojoxGrid-header table { -} - -.dj_ie .dijitRtl .dojoxGrid-header table { - float:none; -} - -.dijitRtl .dojoxGrid-content { - float:left; -} diff --git a/includes/js/dojox/grid/_grid/builder.js b/includes/js/dojox/grid/_grid/builder.js deleted file mode 100644 index dccf7e2..0000000 --- a/includes/js/dojox/grid/_grid/builder.js +++ /dev/null @@ -1,522 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.builder"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.builder"] = true; -dojo.provide("dojox.grid._grid.builder"); -dojo.require("dojox.grid._grid.drag"); - -dojo.declare("dojox.grid.Builder", - null, - { - // summary: - // Base class to produce html for grid content. - // Also provide event decoration, providing grid related information inside the event object - // passed to grid events. - constructor: function(inView){ - this.view = inView; - this.grid = inView.grid; - }, - - view: null, - // boilerplate HTML - _table: '', - - // generate starting tags for a cell - generateCellMarkup: function(inCell, inMoreStyles, inMoreClasses, isHeader){ - var result = [], html; - if (isHeader){ - html = [ '' : ''); - for(var i=0, cell, m, cc, cs; (cell=row[i]); i++){ - m = cell.markup, cc = cell.customClasses = [], cs = cell.customStyles = []; - // content (format can fill in cc and cs as side-effects) - m[5] = cell.format(inDataIndex); - // classes - m[1] = cc.join(' '); - // styles - m[3] = cs.join(';'); - // in-place concat - html.push.apply(html, m); - } - html.push(''); - } - html.push('
'); - // result[4] => td postfix - result.push(html.join('')); - // SLOT: result[5] => content - result.push(''); - // result[6] => td closes - result.push(''); - return result; // Array - }, - - // cell finding - isCellNode: function(inNode){ - return Boolean(inNode && inNode.getAttribute && inNode.getAttribute("idx")); - }, - - getCellNodeIndex: function(inCellNode){ - return inCellNode ? Number(inCellNode.getAttribute("idx")) : -1; - }, - - getCellNode: function(inRowNode, inCellIndex){ - for(var i=0, row; row=dojox.grid.getTr(inRowNode.firstChild, i); i++){ - for(var j=0, cell; cell=row.cells[j]; j++){ - if(this.getCellNodeIndex(cell) == inCellIndex){ - return cell; - } - } - } - }, - - findCellTarget: function(inSourceNode, inTopNode){ - var n = inSourceNode; - while(n && (!this.isCellNode(n) || (dojox.grid.gridViewTag in n.offsetParent.parentNode && n.offsetParent.parentNode[dojox.grid.gridViewTag] != this.view.id)) && (n!=inTopNode)){ - n = n.parentNode; - } - return n!=inTopNode ? n : null - }, - - // event decoration - baseDecorateEvent: function(e){ - e.dispatch = 'do' + e.type; - e.grid = this.grid; - e.sourceView = this.view; - e.cellNode = this.findCellTarget(e.target, e.rowNode); - e.cellIndex = this.getCellNodeIndex(e.cellNode); - e.cell = (e.cellIndex >= 0 ? this.grid.getCell(e.cellIndex) : null); - }, - - // event dispatch - findTarget: function(inSource, inTag){ - var n = inSource; - while(n && (n!=this.domNode) && (!(inTag in n) || (dojox.grid.gridViewTag in n && n[dojox.grid.gridViewTag] != this.view.id))){ - n = n.parentNode; - } - return (n != this.domNode) ? n : null; - }, - - findRowTarget: function(inSource){ - return this.findTarget(inSource, dojox.grid.rowIndexTag); - }, - - isIntraNodeEvent: function(e){ - try{ - return (e.cellNode && e.relatedTarget && dojo.isDescendant(e.relatedTarget, e.cellNode)); - }catch(x){ - // e.relatedTarget has permission problem in FF if it's an input: https://bugzilla.mozilla.org/show_bug.cgi?id=208427 - return false; - } - }, - - isIntraRowEvent: function(e){ - try{ - var row = e.relatedTarget && this.findRowTarget(e.relatedTarget); - return !row && (e.rowIndex==-1) || row && (e.rowIndex==row.gridRowIndex); - }catch(x){ - // e.relatedTarget on INPUT has permission problem in FF: https://bugzilla.mozilla.org/show_bug.cgi?id=208427 - return false; - } - }, - - dispatchEvent: function(e){ - if(e.dispatch in this){ - return this[e.dispatch](e); - } - }, - - // dispatched event handlers - domouseover: function(e){ - if(e.cellNode && (e.cellNode!=this.lastOverCellNode)){ - this.lastOverCellNode = e.cellNode; - this.grid.onMouseOver(e); - } - this.grid.onMouseOverRow(e); - }, - - domouseout: function(e){ - if(e.cellNode && (e.cellNode==this.lastOverCellNode) && !this.isIntraNodeEvent(e, this.lastOverCellNode)){ - this.lastOverCellNode = null; - this.grid.onMouseOut(e); - if(!this.isIntraRowEvent(e)){ - this.grid.onMouseOutRow(e); - } - } - }, - - domousedown: function(e){ - if (e.cellNode) - this.grid.onMouseDown(e); - this.grid.onMouseDownRow(e) - } - -}); - -dojo.declare("dojox.grid.contentBuilder", - dojox.grid.Builder, - { - // summary: - // Produces html for grid data content. Owned by grid and used internally - // for rendering data. Override to implement custom rendering. - update: function(){ - this.prepareHtml(); - }, - - // cache html for rendering data rows - prepareHtml: function(){ - var defaultGet=this.grid.get, rows=this.view.structure.rows; - for(var j=0, row; (row=rows[j]); j++){ - for(var i=0, cell; (cell=row[i]); i++){ - cell.get = cell.get || (cell.value == undefined) && defaultGet; - cell.markup = this.generateCellMarkup(cell, cell.cellStyles, cell.cellClasses, false); - } - } - }, - - // time critical: generate html using cache and data source - generateHtml: function(inDataIndex, inRowIndex){ - var - html = [ this._table ], - v = this.view, - obr = v.onBeforeRow, - rows = v.structure.rows; - - obr && obr(inRowIndex, rows); - for(var j=0, row; (row=rows[j]); j++){ - if(row.hidden || row.header){ - continue; - } - html.push(!row.invisible ? '
'); - return html.join(''); // String - }, - - decorateEvent: function(e){ - e.rowNode = this.findRowTarget(e.target); - if(!e.rowNode){return false}; - e.rowIndex = e.rowNode[dojox.grid.rowIndexTag]; - this.baseDecorateEvent(e); - e.cell = this.grid.getCell(e.cellIndex); - return true; // Boolean - } - -}); - -dojo.declare("dojox.grid.headerBuilder", - dojox.grid.Builder, - { - // summary: - // Produces html for grid header content. Owned by grid and used internally - // for rendering data. Override to implement custom rendering. - - bogusClickTime: 0, - overResizeWidth: 4, - minColWidth: 1, - - // FIXME: isn't this getting mixed from dojox.grid.Builder, -1 character? - _table: ''); - dojox.grid.fire(this.view, "onBeforeRow", [-1, rows]); - for(var j=0, row; (row=rows[j]); j++){ - if(row.hidden){ - continue; - } - html.push(!row.invisible ? '' : ''); - for(var i=0, cell, markup; (cell=row[i]); i++){ - cell.customClasses = []; - cell.customStyles = []; - markup = this.generateCellMarkup(cell, cell.headerStyles, cell.headerClasses, true); - // content - markup[5] = (inValue != undefined ? inValue : inGetValue(cell)); - // styles - markup[3] = cell.customStyles.join(';'); - // classes - markup[1] = cell.customClasses.join(' '); //(cell.customClasses ? ' ' + cell.customClasses : ''); - html.push(markup.join('')); - } - html.push(''); - } - html.push('
'); - return html.join(''); - }, - - // event helpers - getCellX: function(e){ - var x = e.layerX; - if(dojo.isMoz){ - var n = dojox.grid.ascendDom(e.target, dojox.grid.makeNotTagName("th")); - x -= (n && n.offsetLeft) || 0; - var t = e.sourceView.getScrollbarWidth(); - if(!dojo._isBodyLtr() && e.sourceView.headerNode.scrollLeft < t) - x -= t; - //x -= getProp(ascendDom(e.target, mkNotTagName("td")), "offsetLeft") || 0; - } - var n = dojox.grid.ascendDom(e.target, function(){ - if(!n || n == e.cellNode){ - return false; - } - // Mozilla 1.8 (FF 1.5) has a bug that makes offsetLeft = -parent border width - // when parent has border, overflow: hidden, and is positioned - // handle this problem here ... not a general solution! - x += (n.offsetLeft < 0 ? 0 : n.offsetLeft); - return true; - }); - return x; - }, - - // event decoration - decorateEvent: function(e){ - this.baseDecorateEvent(e); - e.rowIndex = -1; - e.cellX = this.getCellX(e); - return true; - }, - - // event handlers - // resizing - prepareResize: function(e, mod){ - var i = dojox.grid.getTdIndex(e.cellNode); - e.cellNode = (i ? e.cellNode.parentNode.cells[i+mod] : null); - e.cellIndex = (e.cellNode ? this.getCellNodeIndex(e.cellNode) : -1); - return Boolean(e.cellNode); - }, - - canResize: function(e){ - if(!e.cellNode || e.cellNode.colSpan > 1){ - return false; - } - var cell = this.grid.getCell(e.cellIndex); - return !cell.noresize && !cell.isFlex(); - }, - - overLeftResizeArea: function(e){ - if(dojo._isBodyLtr()){ - return (e.cellIndex>0) && (e.cellX < this.overResizeWidth) && this.prepareResize(e, -1); - } - return t = e.cellNode && (e.cellX < this.overResizeWidth); - }, - - overRightResizeArea: function(e){ - if(dojo._isBodyLtr()){ - return e.cellNode && (e.cellX >= e.cellNode.offsetWidth - this.overResizeWidth); - } - return (e.cellIndex>0) && (e.cellX >= e.cellNode.offsetWidth - this.overResizeWidth) && this.prepareResize(e, -1); - }, - - domousemove: function(e){ - //console.log(e.cellIndex, e.cellX, e.cellNode.offsetWidth); - var c = (this.overRightResizeArea(e) ? 'e-resize' : (this.overLeftResizeArea(e) ? 'w-resize' : '')); - if(c && !this.canResize(e)){ - c = 'not-allowed'; - } - e.sourceView.headerNode.style.cursor = c || ''; //'default'; - if (c) - dojo.stopEvent(e); - }, - - domousedown: function(e){ - if(!dojox.grid.drag.dragging){ - if((this.overRightResizeArea(e) || this.overLeftResizeArea(e)) && this.canResize(e)){ - this.beginColumnResize(e); - }else{ - this.grid.onMouseDown(e); - this.grid.onMouseOverRow(e); - } - //else{ - // this.beginMoveColumn(e); - //} - } - }, - - doclick: function(e) { - if (new Date().getTime() < this.bogusClickTime) { - dojo.stopEvent(e); - return true; - } - }, - - // column resizing - beginColumnResize: function(e){ - dojo.stopEvent(e); - var spanners = [], nodes = this.tableMap.findOverlappingNodes(e.cellNode); - for(var i=0, cell; (cell=nodes[i]); i++){ - spanners.push({ node: cell, index: this.getCellNodeIndex(cell), width: cell.offsetWidth }); - //console.log("spanner: " + this.getCellNodeIndex(cell)); - } - var drag = { - scrollLeft: e.sourceView.headerNode.scrollLeft, - view: e.sourceView, - node: e.cellNode, - index: e.cellIndex, - w: e.cellNode.clientWidth, - spanners: spanners - }; - //console.log(drag.index, drag.w); - dojox.grid.drag.start(e.cellNode, dojo.hitch(this, 'doResizeColumn', drag), dojo.hitch(this, 'endResizeColumn', drag), e); - }, - - doResizeColumn: function(inDrag, inEvent){ - var isLtr = dojo._isBodyLtr(); - if(isLtr){ - var w = inDrag.w + inEvent.deltaX; - }else{ - var w = inDrag.w - inEvent.deltaX; - } - if(w >= this.minColWidth){ - for(var i=0, s, sw; (s=inDrag.spanners[i]); i++){ - if(isLtr){ - sw = s.width + inEvent.deltaX; - }else{ - sw = s.width - inEvent.deltaX; - } - s.node.style.width = sw + 'px'; - inDrag.view.setColWidth(s.index, sw); - //console.log('setColWidth', '#' + s.index, sw + 'px'); - } - inDrag.node.style.width = w + 'px'; - inDrag.view.setColWidth(inDrag.index, w); - if(!isLtr){ - inDrag.view.headerNode.scrollLeft = (inDrag.scrollLeft - inEvent.deltaX); - } - } - if(inDrag.view.flexCells && !inDrag.view.testFlexCells()){ - var t = dojox.grid.findTable(inDrag.node); - t && (t.style.width = ''); - } - }, - - endResizeColumn: function(inDrag){ - this.bogusClickTime = new Date().getTime() + 30; - setTimeout(dojo.hitch(inDrag.view, "update"), 50); - } - -}); - -dojo.declare("dojox.grid.tableMap", - null, - { - // summary: - // Maps an html table into a structure parsable for information about cell row and col spanning. - // Used by headerBuilder - constructor: function(inRows){ - this.mapRows(inRows); - }, - - map: null, - - mapRows: function(inRows){ - // summary: Map table topography - - //console.log('mapRows'); - // # of rows - var rowCount = inRows.length; - if(!rowCount){ - return; - } - // map which columns and rows fill which cells - this.map = [ ]; - for(var j=0, row; (row=inRows[j]); j++){ - this.map[j] = []; - } - for(var j=0, row; (row=inRows[j]); j++){ - for(var i=0, x=0, cell, colSpan, rowSpan; (cell=row[i]); i++){ - while (this.map[j][x]){x++}; - this.map[j][x] = { c: i, r: j }; - rowSpan = cell.rowSpan || 1; - colSpan = cell.colSpan || 1; - for(var y=0; y dgdrag.hysteresis; -} - -dgdrag.mousemove = function(inEvent){ - inEvent = dojo.fixEvent(inEvent); - dojo.stopEvent(inEvent); - dgdrag.calcDelta(inEvent); - if((!dgdrag.started)&&(dgdrag.hasMoved(inEvent))){ - dgdrag.events.start(inEvent); - dgdrag.started = true; - } - if(dgdrag.started){ - dgdrag.events.drag(inEvent); - } -} - -dgdrag.mouseup = function(inEvent){ - //console.debug("dojox.grid.drag.mouseup"); - dojo.stopEvent(dojo.fixEvent(inEvent)); - dgdrag.end(); -} - -dgdrag.click = function(inEvent){ - dojo.stopEvent(dojo.fixEvent(inEvent)); - //dgdrag.end(); -} - -})(); -// end closure - -} diff --git a/includes/js/dojox/grid/_grid/edit.js b/includes/js/dojox/grid/_grid/edit.js deleted file mode 100644 index d918423..0000000 --- a/includes/js/dojox/grid/_grid/edit.js +++ /dev/null @@ -1,238 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.edit"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.edit"] = true; -dojo.provide("dojox.grid._grid.edit"); - -dojo.declare("dojox.grid.edit", null, { - // summary: - // Controls grid cell editing process. Owned by grid and used internally for editing. - constructor: function(inGrid){ - // inGrid: dojox.Grid - // The dojox.Grid this editor should be attached to - this.grid = inGrid; - this.connections = []; - if(dojo.isIE){ - this.connections.push(dojo.connect(document.body, "onfocus", dojo.hitch(this, "_boomerangFocus"))); - } - }, - - info: {}, - - destroy: function(){ - dojo.forEach(this.connections,dojo.disconnect); - }, - - cellFocus: function(inCell, inRowIndex){ - // summary: - // Invoke editing when cell is focused - // inCell: cell object - // Grid cell object - // inRowIndex: Integer - // Grid row index - if(this.grid.singleClickEdit || this.isEditRow(inRowIndex)){ - // if same row or quick editing, edit - this.setEditCell(inCell, inRowIndex); - }else{ - // otherwise, apply any pending row edits - this.apply(); - } - // if dynamic or static editing... - if(this.isEditing() || (inCell && (inCell.editor||0).alwaysOn)){ - // let the editor focus itself as needed - this._focusEditor(inCell, inRowIndex); - } - }, - - rowClick: function(e){ - if(this.isEditing() && !this.isEditRow(e.rowIndex)){ - this.apply(); - } - }, - - styleRow: function(inRow){ - if(inRow.index == this.info.rowIndex){ - inRow.customClasses += ' dojoxGrid-row-editing'; - } - }, - - dispatchEvent: function(e){ - var c = e.cell, ed = c && c.editor; - return ed && ed.dispatchEvent(e.dispatch, e); - }, - - // Editing - isEditing: function(){ - // summary: - // Indicates editing state of the grid. - // returns: Boolean - // True if grid is actively editing - return this.info.rowIndex !== undefined; - }, - - isEditCell: function(inRowIndex, inCellIndex){ - // summary: - // Indicates if the given cell is being edited. - // inRowIndex: Integer - // Grid row index - // inCellIndex: Integer - // Grid cell index - // returns: Boolean - // True if given cell is being edited - return (this.info.rowIndex === inRowIndex) && (this.info.cell.index == inCellIndex); - }, - - isEditRow: function(inRowIndex){ - // summary: - // Indicates if the given row is being edited. - // inRowIndex: Integer - // Grid row index - // returns: Boolean - // True if given row is being edited - return this.info.rowIndex === inRowIndex; - }, - - setEditCell: function(inCell, inRowIndex){ - // summary: - // Set the given cell to be edited - // inRowIndex: Integer - // Grid row index - // inCell: Object - // Grid cell object - if(!this.isEditCell(inRowIndex, inCell.index) && this.grid.canEdit(inCell, inRowIndex)){ - this.start(inCell, inRowIndex, this.isEditRow(inRowIndex) || inCell.editor); - } - }, - - _focusEditor: function(inCell, inRowIndex){ - dojox.grid.fire(inCell.editor, "focus", [inRowIndex]); - }, - - focusEditor: function(){ - if(this.isEditing()){ - this._focusEditor(this.info.cell, this.info.rowIndex); - } - }, - - // implement fix for focus boomerang effect on IE - _boomerangWindow: 500, - _shouldCatchBoomerang: function(){ - return this._catchBoomerang > new Date().getTime(); - }, - _boomerangFocus: function(){ - //console.log("_boomerangFocus"); - if(this._shouldCatchBoomerang()){ - // make sure we don't utterly lose focus - this.grid.focus.focusGrid(); - // let the editor focus itself as needed - this.focusEditor(); - // only catch once - this._catchBoomerang = 0; - } - }, - _doCatchBoomerang: function(){ - // give ourselves a few ms to boomerang IE focus effects - if(dojo.isIE){this._catchBoomerang = new Date().getTime() + this._boomerangWindow;} - }, - // end boomerang fix API - - start: function(inCell, inRowIndex, inEditing){ - this.grid.beginUpdate(); - this.editorApply(); - if(this.isEditing() && !this.isEditRow(inRowIndex)){ - this.applyRowEdit(); - this.grid.updateRow(inRowIndex); - } - if(inEditing){ - this.info = { cell: inCell, rowIndex: inRowIndex }; - this.grid.doStartEdit(inCell, inRowIndex); - this.grid.updateRow(inRowIndex); - }else{ - this.info = {}; - } - this.grid.endUpdate(); - // make sure we don't utterly lose focus - this.grid.focus.focusGrid(); - // let the editor focus itself as needed - this._focusEditor(inCell, inRowIndex); - // give ourselves a few ms to boomerang IE focus effects - this._doCatchBoomerang(); - }, - - _editorDo: function(inMethod){ - var c = this.info.cell - //c && c.editor && c.editor[inMethod](c, this.info.rowIndex); - c && c.editor && c.editor[inMethod](this.info.rowIndex); - }, - - editorApply: function(){ - this._editorDo("apply"); - }, - - editorCancel: function(){ - this._editorDo("cancel"); - }, - - applyCellEdit: function(inValue, inCell, inRowIndex){ - if(this.grid.canEdit(inCell, inRowIndex)){ - this.grid.doApplyCellEdit(inValue, inRowIndex, inCell.fieldIndex); - } - }, - - applyRowEdit: function(){ - this.grid.doApplyEdit(this.info.rowIndex); - }, - - apply: function(){ - // summary: - // Apply a grid edit - if(this.isEditing()){ - this.grid.beginUpdate(); - this.editorApply(); - this.applyRowEdit(); - this.info = {}; - this.grid.endUpdate(); - this.grid.focus.focusGrid(); - this._doCatchBoomerang(); - } - }, - - cancel: function(){ - // summary: - // Cancel a grid edit - if(this.isEditing()){ - this.grid.beginUpdate(); - this.editorCancel(); - this.info = {}; - this.grid.endUpdate(); - this.grid.focus.focusGrid(); - this._doCatchBoomerang(); - } - }, - - save: function(inRowIndex, inView){ - // summary: - // Save the grid editing state - // inRowIndex: Integer - // Grid row index - // inView: Object - // Grid view - var c = this.info.cell; - if(this.isEditRow(inRowIndex) && (!inView || c.view==inView) && c.editor){ - c.editor.save(c, this.info.rowIndex); - } - }, - - restore: function(inView, inRowIndex){ - // summary: - // Restores the grid editing state - // inRowIndex: Integer - // Grid row index - // inView: Object - // Grid view - var c = this.info.cell; - if(this.isEditRow(inRowIndex) && c.view == inView && c.editor){ - c.editor.restore(c, this.info.rowIndex); - } - } -}); - -} diff --git a/includes/js/dojox/grid/_grid/focus.js b/includes/js/dojox/grid/_grid/focus.js deleted file mode 100644 index 8761042..0000000 --- a/includes/js/dojox/grid/_grid/focus.js +++ /dev/null @@ -1,207 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.focus"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.focus"] = true; -dojo.provide("dojox.grid._grid.focus"); - -// focus management -dojo.declare("dojox.grid.focus", null, { - // summary: - // Controls grid cell focus. Owned by grid and used internally for focusing. - // Note: grid cell actually receives keyboard input only when cell is being edited. - constructor: function(inGrid){ - this.grid = inGrid; - this.cell = null; - this.rowIndex = -1; - dojo.connect(this.grid.domNode, "onfocus", this, "doFocus"); - }, - tabbingOut: false, - focusClass: "dojoxGrid-cell-focus", - focusView: null, - initFocusView: function(){ - this.focusView = this.grid.views.getFirstScrollingView(); - }, - isFocusCell: function(inCell, inRowIndex){ - // summary: - // states if the given cell is focused - // inCell: object - // grid cell object - // inRowIndex: int - // grid row index - // returns: - // true of the given grid cell is focused - return (this.cell == inCell) && (this.rowIndex == inRowIndex); - }, - isLastFocusCell: function(){ - return (this.rowIndex == this.grid.rowCount-1) && (this.cell.index == this.grid.layout.cellCount-1); - }, - isFirstFocusCell: function(){ - return (this.rowIndex == 0) && (this.cell.index == 0); - }, - isNoFocusCell: function(){ - return (this.rowIndex < 0) || !this.cell; - }, - _focusifyCellNode: function(inBork){ - var n = this.cell && this.cell.getNode(this.rowIndex); - if(n){ - dojo.toggleClass(n, this.focusClass, inBork); - if (inBork){ - this.scrollIntoView(); - try{ - if(!this.grid.edit.isEditing()) - dojox.grid.fire(n, "focus"); - }catch(e){} - } - } - }, - scrollIntoView: function() { - if(!this.cell){ - return; - } - var - c = this.cell, - s = c.view.scrollboxNode, - sr = { - w: s.clientWidth, - l: s.scrollLeft, - t: s.scrollTop, - h: s.clientHeight - }, - n = c.getNode(this.rowIndex), - r = c.view.getRowNode(this.rowIndex), - rt = this.grid.scroller.findScrollTop(this.rowIndex); - // place cell within horizontal view - if(n.offsetLeft + n.offsetWidth > sr.l + sr.w){ - s.scrollLeft = n.offsetLeft + n.offsetWidth - sr.w; - }else if(n.offsetLeft < sr.l){ - s.scrollLeft = n.offsetLeft; - } - // place cell within vertical view - if(rt + r.offsetHeight > sr.t + sr.h){ - this.grid.setScrollTop(rt + r.offsetHeight - sr.h); - }else if(rt < sr.t){ - this.grid.setScrollTop(rt); - } - }, - styleRow: function(inRow){ - return; - }, - setFocusIndex: function(inRowIndex, inCellIndex){ - // summary: - // focuses the given grid cell - // inRowIndex: int - // grid row index - // inCellIndex: int - // grid cell index - this.setFocusCell(this.grid.getCell(inCellIndex), inRowIndex); - }, - setFocusCell: function(inCell, inRowIndex){ - // summary: - // focuses the given grid cell - // inCell: object - // grid cell object - // inRowIndex: int - // grid row index - if(inCell && !this.isFocusCell(inCell, inRowIndex)){ - this.tabbingOut = false; - this.focusGridView(); - this._focusifyCellNode(false); - this.cell = inCell; - this.rowIndex = inRowIndex; - this._focusifyCellNode(true); - } - // even if this cell isFocusCell, the document focus may need to be rejiggered - // call opera on delay to prevent keypress from altering focus - if(dojo.isOpera){ - setTimeout(dojo.hitch(this.grid, 'onCellFocus', this.cell, this.rowIndex), 1); - }else{ - this.grid.onCellFocus(this.cell, this.rowIndex); - } - }, - next: function(){ - // summary: - // focus next grid cell - var row=this.rowIndex, col=this.cell.index+1, cc=this.grid.layout.cellCount-1, rc=this.grid.rowCount-1; - if(col > cc){ - col = 0; - row++; - } - if(row > rc){ - col = cc; - row = rc; - } - this.setFocusIndex(row, col); - }, - previous: function(){ - // summary: - // focus previous grid cell - var row=(this.rowIndex || 0), col=(this.cell.index || 0) - 1; - if(col < 0){ - col = this.grid.layout.cellCount-1; - row--; - } - if(row < 0){ - row = 0; - col = 0; - } - this.setFocusIndex(row, col); - }, - move: function(inRowDelta, inColDelta) { - // summary: - // focus grid cell based on position relative to current focus - // inRowDelta: int - // vertical distance from current focus - // inColDelta: int - // horizontal distance from current focus - var - rc = this.grid.rowCount-1, - cc = this.grid.layout.cellCount-1, - r = this.rowIndex, - i = this.cell.index, - row = Math.min(rc, Math.max(0, r+inRowDelta)), - col = Math.min(cc, Math.max(0, i+inColDelta)); - this.setFocusIndex(row, col); - if(inRowDelta){ - this.grid.updateRow(r); - } - }, - previousKey: function(e){ - if(this.isFirstFocusCell()){ - this.tabOut(this.grid.domNode); - }else{ - dojo.stopEvent(e); - this.previous(); - } - }, - nextKey: function(e) { - if(this.isLastFocusCell()){ - this.tabOut(this.grid.lastFocusNode); - }else{ - dojo.stopEvent(e); - this.next(); - } - }, - tabOut: function(inFocusNode){ - this.tabbingOut = true; - inFocusNode.focus(); - }, - focusGridView: function(){ - dojox.grid.fire(this.focusView, "focus"); - }, - focusGrid: function(inSkipFocusCell){ - this.focusGridView(); - this._focusifyCellNode(true); - }, - doFocus: function(e){ - // trap focus only for grid dom node - if(e && e.target != e.currentTarget){ - return; - } - // do not focus for scrolling if grid is about to blur - if(!this.tabbingOut && this.isNoFocusCell()){ - // establish our virtual-focus, if necessary - this.setFocusIndex(0, 0); - } - this.tabbingOut = false; - } -}); - -} diff --git a/includes/js/dojox/grid/_grid/images/grid_dx_gradient.gif b/includes/js/dojox/grid/_grid/images/grid_dx_gradient.gif deleted file mode 100644 index 57f67ba..0000000 Binary files a/includes/js/dojox/grid/_grid/images/grid_dx_gradient.gif and /dev/null differ diff --git a/includes/js/dojox/grid/_grid/images/grid_sort_down.gif b/includes/js/dojox/grid/_grid/images/grid_sort_down.gif deleted file mode 100644 index 7a73f82..0000000 Binary files a/includes/js/dojox/grid/_grid/images/grid_sort_down.gif and /dev/null differ diff --git a/includes/js/dojox/grid/_grid/images/grid_sort_up.gif b/includes/js/dojox/grid/_grid/images/grid_sort_up.gif deleted file mode 100644 index 9452da0..0000000 Binary files a/includes/js/dojox/grid/_grid/images/grid_sort_up.gif and /dev/null differ diff --git a/includes/js/dojox/grid/_grid/images/tabEnabled_rotated.png b/includes/js/dojox/grid/_grid/images/tabEnabled_rotated.png deleted file mode 100644 index e326abd..0000000 Binary files a/includes/js/dojox/grid/_grid/images/tabEnabled_rotated.png and /dev/null differ diff --git a/includes/js/dojox/grid/_grid/images/tabHover_rotated.png b/includes/js/dojox/grid/_grid/images/tabHover_rotated.png deleted file mode 100644 index 1a30e10..0000000 Binary files a/includes/js/dojox/grid/_grid/images/tabHover_rotated.png and /dev/null differ diff --git a/includes/js/dojox/grid/_grid/layout.js b/includes/js/dojox/grid/_grid/layout.js deleted file mode 100644 index 128f486..0000000 --- a/includes/js/dojox/grid/_grid/layout.js +++ /dev/null @@ -1,75 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.layout"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.layout"] = true; -dojo.provide("dojox.grid._grid.layout"); -dojo.require("dojox.grid._grid.cell"); - -dojo.declare("dojox.grid.layout", null, { - // summary: - // Controls grid cell layout. Owned by grid and used internally. - constructor: function(inGrid){ - this.grid = inGrid; - }, - // flat array of grid cells - cells: [], - // structured array of grid cells - structure: null, - // default cell width - defaultWidth: '6em', - // methods - setStructure: function(inStructure){ - this.fieldIndex = 0; - this.cells = []; - var s = this.structure = []; - for(var i=0, viewDef, rows; (viewDef=inStructure[i]); i++){ - s.push(this.addViewDef(viewDef)); - } - this.cellCount = this.cells.length; - }, - addViewDef: function(inDef){ - this._defaultCellProps = inDef.defaultCell || {}; - return dojo.mixin({}, inDef, {rows: this.addRowsDef(inDef.rows || inDef.cells)}); - }, - addRowsDef: function(inDef){ - var result = []; - for(var i=0, row; inDef && (row=inDef[i]); i++){ - result.push(this.addRowDef(i, row)); - } - return result; - }, - addRowDef: function(inRowIndex, inDef){ - var result = []; - for(var i=0, def, cell; (def=inDef[i]); i++){ - cell = this.addCellDef(inRowIndex, i, def); - result.push(cell); - this.cells.push(cell); - } - return result; - }, - addCellDef: function(inRowIndex, inCellIndex, inDef){ - var w = 0; - if(inDef.colSpan > 1){ - w = 0; - }else if(!isNaN(inDef.width)){ - w = inDef.width + "em"; - }else{ - w = inDef.width || this.defaultWidth; - } - // fieldIndex progresses linearly from the last indexed field - // FIXME: support generating fieldIndex based a text field name (probably in Grid) - var fieldIndex = inDef.field != undefined ? inDef.field : (inDef.get ? -1 : this.fieldIndex); - if((inDef.field != undefined) || !inDef.get){ - this.fieldIndex = (inDef.field > -1 ? inDef.field : this.fieldIndex) + 1; - } - return new dojox.grid.cell( - dojo.mixin({}, this._defaultCellProps, inDef, { - grid: this.grid, - subrow: inRowIndex, - layoutIndex: inCellIndex, - index: this.cells.length, - fieldIndex: fieldIndex, - unitWidth: w - })); - } -}); - -} diff --git a/includes/js/dojox/grid/_grid/lib.js b/includes/js/dojox/grid/_grid/lib.js deleted file mode 100644 index 3644dbc..0000000 --- a/includes/js/dojox/grid/_grid/lib.js +++ /dev/null @@ -1,254 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.lib"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.lib"] = true; -dojo.provide("dojox.grid._grid.lib"); -// summary: grid utility library -dojo.mixin(dojox.grid,{ - - na: '...', - - nop: function(){ - // summary: a null function? - }, - - getTdIndex: function(td){ - return td.cellIndex >=0 ? td.cellIndex : dojo.indexOf(td.parentNode.cells, td); - }, - - getTrIndex: function(tr){ - return tr.rowIndex >=0 ? tr.rowIndex : dojo.indexOf(tr.parentNode.childNodes, tr); - }, - - getTr: function(rowOwner, index){ - return rowOwner && ((rowOwner.rows||0)[index] || rowOwner.childNodes[index]); - }, - - getTd: function(rowOwner, rowIndex, cellIndex){ - return (dojox.grid.getTr(inTable, rowIndex)||0)[cellIndex]; - }, - - findTable: function(node){ - for (var n=node; n && n.tagName!='TABLE'; n=n.parentNode); - return n; - }, - - ascendDom: function(inNode, inWhile){ - for (var n=inNode; n && inWhile(n); n=n.parentNode); - return n; - }, - - makeNotTagName: function(inTagName){ - var name = inTagName.toUpperCase(); - return function(node){ return node.tagName != name; }; - }, - - fire: function(ob, ev, args){ - var fn = ob && ev && ob[ev]; - return fn && (args ? fn.apply(ob, args) : ob[ev]()); - }, - - // from lib.js - setStyleText: function(inNode, inStyleText){ - if(inNode.style.cssText == undefined){ - inNode.setAttribute("style", inStyleText); - }else{ - inNode.style.cssText = inStyleText; - } - }, - - getStyleText: function(inNode, inStyleText){ - return (inNode.style.cssText == undefined ? inNode.getAttribute("style") : inNode.style.cssText); - }, - - setStyle: function(inElement, inStyle, inValue){ - if(inElement && inElement.style[inStyle] != inValue){ - inElement.style[inStyle] = inValue; - } - }, - - setStyleHeightPx: function(inElement, inHeight){ - if(inHeight >= 0){ - dojox.grid.setStyle(inElement, 'height', inHeight + 'px'); - } - }, - - mouseEvents: [ 'mouseover', 'mouseout', /*'mousemove',*/ 'mousedown', 'mouseup', 'click', 'dblclick', 'contextmenu' ], - - keyEvents: [ 'keyup', 'keydown', 'keypress' ], - - funnelEvents: function(inNode, inObject, inMethod, inEvents){ - var evts = (inEvents ? inEvents : dojox.grid.mouseEvents.concat(dojox.grid.keyEvents)); - for (var i=0, l=evts.length; i'; - }, - renderHeader: function(){ - }, - resize: function(){ - this.adaptHeight(); - }, - adaptWidth: function(){ - }, - // styling - doStyleRowNode: function(inRowIndex, inRowNode){ - var n = [ "dojoxGrid-rowbar" ]; - if(this.grid.rows.isOver(inRowIndex)){ - n.push("dojoxGrid-rowbar-over"); - } - if(this.grid.selection.isSelected(inRowIndex)){ - n.push("dojoxGrid-rowbar-selected"); - } - inRowNode.className = n.join(" "); - }, - // event handlers - domouseover: function(e){ - this.grid.onMouseOverRow(e); - }, - domouseout: function(e){ - if(!this.isIntraRowEvent(e)){ - this.grid.onMouseOutRow(e); - } - } -}); - -} diff --git a/includes/js/dojox/grid/_grid/rows.js b/includes/js/dojox/grid/_grid/rows.js deleted file mode 100644 index 37ecbcb..0000000 --- a/includes/js/dojox/grid/_grid/rows.js +++ /dev/null @@ -1,66 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.rows"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.rows"] = true; -dojo.provide("dojox.grid._grid.rows"); - -dojo.declare("dojox.grid.rows", null, { - // Stores information about grid rows. Owned by grid and used internally. - constructor: function(inGrid){ - this.grid = inGrid; - }, - linesToEms: 2, - defaultRowHeight: 1, // lines - overRow: -2, - // metrics - getHeight: function(inRowIndex){ - return ''; - }, - getDefaultHeightPx: function(){ - // summmary: - // retrieves the default row height - // returns: int, default row height - return 32; - //return Math.round(this.defaultRowHeight * this.linesToEms * this.grid.contentPixelToEmRatio); - }, - // 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: "dojoxGrid-row" - } - }, - styleRowNode: function(inRowIndex, inRowNode){ - var row = this.prepareStylingRow(inRowIndex, inRowNode); - this.grid.onStyleRow(row); - this.applyStyles(row); - }, - applyStyles: function(inRow){ - with(inRow){ - node.className = customClasses; - var h = node.style.height; - dojox.grid.setStyleText(node, customStyles + ';' + (node._style||'')); - 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)&&(last >=0)){ - this.updateStyles(last); - } - this.updateStyles(this.overRow); - }, - isOver: function(inRowIndex){ - return (this.overRow == inRowIndex); - } -}); - -} diff --git a/includes/js/dojox/grid/_grid/scroller.js b/includes/js/dojox/grid/_grid/scroller.js deleted file mode 100644 index d331367..0000000 --- a/includes/js/dojox/grid/_grid/scroller.js +++ /dev/null @@ -1,489 +0,0 @@ -if(!dojo._hasResource['dojox.grid._grid.scroller']){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource['dojox.grid._grid.scroller'] = true; -dojo.provide('dojox.grid._grid.scroller'); - -dojo.declare('dojox.grid.scroller.base', null, { - // summary: - // virtual scrollbox, abstract class - // Content must in /rows/ - // Rows are managed in contiguous sets called /pages/ - // There are a fixed # of rows per page - // The minimum rendered unit is a page - constructor: function(){ - this.pageHeights = []; - this.stack = []; - }, - // specified - rowCount: 0, // total number of rows to manage - defaultRowHeight: 10, // default height of a row - keepRows: 100, // maximum number of rows that should exist at one time - contentNode: null, // node to contain pages - scrollboxNode: null, // node that controls scrolling - // calculated - defaultPageHeight: 0, // default height of a page - keepPages: 10, // maximum number of pages that should exists at one time - pageCount: 0, - windowHeight: 0, - firstVisibleRow: 0, - lastVisibleRow: 0, - // private - page: 0, - pageTop: 0, - // init - init: function(inRowCount, inKeepRows, inRowsPerPage){ - switch(arguments.length){ - case 3: this.rowsPerPage = inRowsPerPage; - case 2: this.keepRows = inKeepRows; - case 1: this.rowCount = inRowCount; - } - this.defaultPageHeight = this.defaultRowHeight * this.rowsPerPage; - //this.defaultPageHeight = this.defaultRowHeight * Math.min(this.rowsPerPage, this.rowCount); - this.pageCount = Math.ceil(this.rowCount / this.rowsPerPage); - this.setKeepInfo(this.keepRows); - this.invalidate(); - if(this.scrollboxNode){ - this.scrollboxNode.scrollTop = 0; - this.scroll(0); - this.scrollboxNode.onscroll = dojo.hitch(this, 'onscroll'); - } - }, - setKeepInfo: function(inKeepRows){ - this.keepRows = inKeepRows; - this.keepPages = !this.keepRows ? this.keepRows : Math.max(Math.ceil(this.keepRows / this.rowsPerPage), 2); - }, - // updating - invalidate: function(){ - this.invalidateNodes(); - this.pageHeights = []; - this.height = (this.pageCount ? (this.pageCount - 1)* this.defaultPageHeight + this.calcLastPageHeight() : 0); - this.resize(); - }, - updateRowCount: function(inRowCount){ - this.invalidateNodes(); - this.rowCount = inRowCount; - // update page count, adjust document height - oldPageCount = this.pageCount; - this.pageCount = Math.ceil(this.rowCount / this.rowsPerPage); - if(this.pageCount < oldPageCount){ - for(var i=oldPageCount-1; i>=this.pageCount; i--){ - this.height -= this.getPageHeight(i); - delete this.pageHeights[i] - } - }else if(this.pageCount > oldPageCount){ - this.height += this.defaultPageHeight * (this.pageCount - oldPageCount - 1) + this.calcLastPageHeight(); - } - this.resize(); - }, - // abstract interface - pageExists: function(inPageIndex){ - }, - measurePage: function(inPageIndex){ - }, - positionPage: function(inPageIndex, inPos){ - }, - repositionPages: function(inPageIndex){ - }, - installPage: function(inPageIndex){ - }, - preparePage: function(inPageIndex, inPos, inReuseNode){ - }, - renderPage: function(inPageIndex){ - }, - removePage: function(inPageIndex){ - }, - pacify: function(inShouldPacify){ - }, - // pacification - pacifying: false, - pacifyTicks: 200, - setPacifying: function(inPacifying){ - if(this.pacifying != inPacifying){ - this.pacifying = inPacifying; - this.pacify(this.pacifying); - } - }, - startPacify: function(){ - this.startPacifyTicks = new Date().getTime(); - }, - doPacify: function(){ - var result = (new Date().getTime() - this.startPacifyTicks) > this.pacifyTicks; - this.setPacifying(true); - this.startPacify(); - return result; - }, - endPacify: function(){ - this.setPacifying(false); - }, - // default sizing implementation - resize: function(){ - if(this.scrollboxNode){ - this.windowHeight = this.scrollboxNode.clientHeight; - } - dojox.grid.setStyleHeightPx(this.contentNode, this.height); - }, - calcLastPageHeight: function(){ - if(!this.pageCount){ - return 0; - } - var lastPage = this.pageCount - 1; - var lastPageHeight = ((this.rowCount % this.rowsPerPage)||(this.rowsPerPage)) * this.defaultRowHeight; - this.pageHeights[lastPage] = lastPageHeight; - return lastPageHeight; - }, - updateContentHeight: function(inDh){ - this.height += inDh; - this.resize(); - }, - updatePageHeight: function(inPageIndex){ - if(this.pageExists(inPageIndex)){ - var oh = this.getPageHeight(inPageIndex); - var h = (this.measurePage(inPageIndex))||(oh); - this.pageHeights[inPageIndex] = h; - if((h)&&(oh != h)){ - this.updateContentHeight(h - oh) - this.repositionPages(inPageIndex); - } - } - }, - rowHeightChanged: function(inRowIndex){ - this.updatePageHeight(Math.floor(inRowIndex / this.rowsPerPage)); - }, - // scroller core - invalidateNodes: function(){ - while(this.stack.length){ - this.destroyPage(this.popPage()); - } - }, - createPageNode: function(){ - var p = document.createElement('div'); - p.style.position = 'absolute'; - //p.style.width = '100%'; - p.style[dojo._isBodyLtr() ? "left" : "right"] = '0'; - return p; - }, - getPageHeight: function(inPageIndex){ - var ph = this.pageHeights[inPageIndex]; - return (ph !== undefined ? ph : this.defaultPageHeight); - }, - // FIXME: this is not a stack, it's a FIFO list - pushPage: function(inPageIndex){ - return this.stack.push(inPageIndex); - }, - popPage: function(){ - return this.stack.shift(); - }, - findPage: function(inTop){ - var i = 0, h = 0; - for(var ph = 0; i= inTop){ - break; - } - } - this.page = i; - this.pageTop = h; - }, - buildPage: function(inPageIndex, inReuseNode, inPos){ - this.preparePage(inPageIndex, inReuseNode); - this.positionPage(inPageIndex, inPos); - // order of operations is key below - this.installPage(inPageIndex); - this.renderPage(inPageIndex); - // order of operations is key above - this.pushPage(inPageIndex); - }, - needPage: function(inPageIndex, inPos){ - var h = this.getPageHeight(inPageIndex), oh = h; - if(!this.pageExists(inPageIndex)){ - this.buildPage(inPageIndex, this.keepPages&&(this.stack.length >= this.keepPages), inPos); - h = this.measurePage(inPageIndex) || h; - this.pageHeights[inPageIndex] = h; - if(h && (oh != h)){ - this.updateContentHeight(h - oh) - } - }else{ - this.positionPage(inPageIndex, inPos); - } - return h; - }, - onscroll: function(){ - this.scroll(this.scrollboxNode.scrollTop); - }, - scroll: function(inTop){ - this.startPacify(); - this.findPage(inTop); - var h = this.height; - var b = this.getScrollBottom(inTop); - for(var p=this.page, y=this.pageTop; (p= 0 ? inTop + this.windowHeight : -1); - }, - // events - processNodeEvent: function(e, inNode){ - var t = e.target; - while(t && (t != inNode) && t.parentNode && (t.parentNode.parentNode != inNode)){ - t = t.parentNode; - } - if(!t || !t.parentNode || (t.parentNode.parentNode != inNode)){ - return false; - } - var page = t.parentNode; - e.topRowIndex = page.pageIndex * this.rowsPerPage; - e.rowIndex = e.topRowIndex + dojox.grid.indexInParent(t); - e.rowTarget = t; - return true; - }, - processEvent: function(e){ - return this.processNodeEvent(e, this.contentNode); - }, - dummy: 0 -}); - -dojo.declare('dojox.grid.scroller', dojox.grid.scroller.base, { - // summary: - // virtual scroller class, makes no assumption about shape of items being scrolled - constructor: function(){ - this.pageNodes = []; - }, - // virtual rendering interface - renderRow: function(inRowIndex, inPageNode){ - }, - removeRow: function(inRowIndex){ - }, - // page node operations - getDefaultNodes: function(){ - return this.pageNodes; - }, - getDefaultPageNode: function(inPageIndex){ - return this.getDefaultNodes()[inPageIndex]; - }, - positionPageNode: function(inNode, inPos){ - inNode.style.top = inPos + 'px'; - }, - getPageNodePosition: function(inNode){ - return inNode.offsetTop; - }, - repositionPageNodes: function(inPageIndex, inNodes){ - var last = 0; - for(var i=0; i=0 && inBottom>inScrollBottom; i--, row--){ - inBottom -= rows[i].offsetHeight; - } - return row + 1; - }, - getLastVisibleRow: function(inPage, inBottom, inScrollBottom){ - if(!this.pageExists(inPage)){ - return 0; - } - return this.getLastVisibleRowNodes(inPage, inBottom, inScrollBottom, this.getDefaultNodes()); - }, - findTopRowForNodes: function(inScrollTop, inNodes){ - var rows = dojox.grid.divkids(inNodes[this.page]); - for(var i=0,l=rows.length,t=this.pageTop,h; i= inScrollTop){ - this.offset = h - (t - inScrollTop); - return i + this.page * this.rowsPerPage; - } - } - return -1; - }, - findScrollTopForNodes: function(inRow, inNodes){ - var rowPage = Math.floor(inRow / this.rowsPerPage); - var t = 0; - for(var i=0; i= 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(); - } - -}); - -} diff --git a/includes/js/dojox/grid/_grid/soriaGrid.css b/includes/js/dojox/grid/_grid/soriaGrid.css deleted file mode 100644 index f244030..0000000 --- a/includes/js/dojox/grid/_grid/soriaGrid.css +++ /dev/null @@ -1,212 +0,0 @@ -.soria .dojoxGrid { - position: relative; - background-color: #e9e9e9; - font-size: 0.85em; - -moz-outline-style: none; - outline: none; - overflow: hidden; - height: 0; -} -.soria .dojoxGrid table { - padding: 0; -} -.soria .dojoxGrid td { - -moz-outline: none; -} -.soria .dojoxGrid-master-header { - position: relative; -} -.soria .dojoxGrid-master-view { - position: relative; -} -.soria .dojoxGrid-view { - position: absolute; - overflow: hidden; -} -.soria .dojoxGrid-header { - position: absolute; - overflow: hidden; -} -.soria .dojoxGrid-header { - background-color: #e9e9e9; -} -.soria .dojoxGrid-header table { - text-align: center; -} -.soria .dojoxGrid-header .dojoxGrid-cell-content { - text-align: center; -} -.soria .dojoxGrid-header .dojoxGrid-cell { - border: 1px solid transparent; - - border-color: white #ACA899 #919191 white; - background: url(../../../dijit/themes/soria/images/titleBar.png) #e9e9e9 repeat-x top; - padding-bottom: 2px; - color: #000 !important; -} -.soria .dojoxGrid-header .dojoxGrid-cell-over { - background: url(../../../dijit/themes/soria/images/titleBarActive.png) #e9e9e9 repeat-x top; -} -.soria .dojoxGrid-sort-down { - background: url(images/grid_sort_down.gif) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} -.soria .dojoxGrid-sort-up { - background: url(images/grid_sort_up.gif) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} -.soria .gridArrowButtonChar { - display:none !important; -} -.dijit_a11y .gridArrowButtonChar { - display:inline !important; -} -.soria .dojoxGrid-scrollbox { - position: relative; - overflow: scroll; - background-color: #fefefe; - width: 100%; -} -.soria .dojoxGrid-content { - position: relative; - overflow: hidden; - -moz-outline-style: none; - outline: none; -} -.soria .dojoxGrid-rowbar { - border: none; - - background: url(images/titleBar.png) #e9e9e9 repeat-y right; - border-right: 1px solid #cccccc; - padding: 0px; -} -.soria .dojoxGrid-rowbar-inner { - border: none; - border-bottom: 1px solid #cccccc; -} -.soria .dojoxGrid-rowbar-over { - background: url(images/titleBarActive.png) #e9e9e9 repeat-y right; -} -.soria .dojoxGrid-rowbar-selected { - background-color: #D9E8F9; - background-image: none; - background: url(../../../dijit/themes/soria/images/titleBar.png) #dddddd repeat-x top; - border-right: 1px solid #cccccc; - background-position: center; - background-repeat: no-repeat; -} -.soria .dojoxGrid-row { - position: relative; - width: 9000em; -} -.soria .dojoxGrid-row { - border: none; - border-left: none; - border-right: none; - background-color: white; - border-top: none; -} -.soria .dojoxGrid-row-over { - border-top-color: #cccccc; - border-bottom-color: #cccccc; -} -.soria .dojoxGrid-row-over .dojoxGrid-cell { - background-color: #60a1ea; - color:#fff; -} -.soria .dojoxGrid-row-odd { - background-color: #f2f5f9; - -} -.soria .dojoxGrid-row-selected { - background-color: #aec7e3; -} -.soria .dojoxGrid-row-table { - table-layout: fixed; - width: 0; - border-collapse: collapse; -} -.soria .dojoxGrid-invisible { - visibility: hidden; -} -.soria .Xdojo-ie .dojoxGrid-invisible { - display: none; -} -.soria .dojoxGrid-invisible td, .dojoxGrid-header .dojoxGrid-invisible td { - border-top-width: 0; - border-bottom-width: 0; - padding-top: 0; - padding-bottom: 0; - height: 0; - overflow: hidden; -} -.soria .dojoxGrid-cell { - border: 1px dotted #D5CDB5; - padding: 3px 3px 3px 3px; - text-align: left; - overflow: hidden; -} -.dj_ie6 .soria .dojoxGrid-cell { - border: 1px solid white; - border-right: 1px solid #D5CDB5; -} -.soria .dojoxGrid-cell-focus { - border: 1px dotted #a6a6a6; -} -.soria .dojoxGrid-cell-over { - border: 1px dotted #a6a6a6; -} -.soria .dojoxGrid-cell-focus.dojoxGrid-cell-over { - border: 1px dotted #595959; -} -.soria .dojoxGrid-cell-clip { - width: 100%; - overflow: hidden; - white-space:nowrap; - text-overflow: ellipsis; -} -.soria .dojoxGrid-row-editing td { - - background-color: #60a1ea; - -} -.soria .dojoxGrid-row-inserting td { - background-color: #F4FFF4; -} -.soria .dojoxGrid-row-inflight td { - background-color: #F2F7B7; -} -.soria .dojoxGrid-row-error td { - background-color: #F8B8B6; -} -.soria .dojoxGrid-input, -.soria .dojoxGrid-select, -.soria .dojoxGrid-textarea { - margin: 0; - padding: 0px; - border-style: none; - width: 100%; - font-size: 100%; - font-family: inherit; -} -.dojoxGrid-hidden-focus { - position: absolute; - left: -1000px; - top: -1000px; - height: 0px, width: 0px; -} -.dijit_a11y .dojoxGrid-rowbar-selected { - border-top: 1px solid white; - border-bottom: 1px dashed black; - border-top: 0; - background: none; -} -.dijit_a11y .dojoxGrid-rowbar-selected .dojoxGrid-rowbar-inner { - border: 0; - border-top: 1px solid white; -} -.dijit_a11y .dojoxGrid-row-selected { - border-bottom: 1px dashed black; -} diff --git a/includes/js/dojox/grid/_grid/soriaGrid.css.commented.css b/includes/js/dojox/grid/_grid/soriaGrid.css.commented.css deleted file mode 100644 index 06263ad..0000000 --- a/includes/js/dojox/grid/_grid/soriaGrid.css.commented.css +++ /dev/null @@ -1,276 +0,0 @@ -.soria .dojoxGrid { - position: relative; - background-color: #e9e9e9; - font-size: 0.85em; /* inherit font-family from dojo.css */ - -moz-outline-style: none; - outline: none; - overflow: hidden; - height: 0; -} - -.soria .dojoxGrid table { - padding: 0; -} - -.soria .dojoxGrid td { - -moz-outline: none; -} - -/* master header */ - -.soria .dojoxGrid-master-header { - position: relative; -} - -/* master view */ - -.soria .dojoxGrid-master-view { - position: relative; -} - -/* views */ - -.soria .dojoxGrid-view { - position: absolute; - overflow: hidden; -} - -/* header */ - -.soria .dojoxGrid-header { - position: absolute; - overflow: hidden; -} - -.soria .dojoxGrid-header { - background-color: #e9e9e9; -} - -.soria .dojoxGrid-header table { - text-align: center; -} - -.soria .dojoxGrid-header .dojoxGrid-cell-content { - text-align: center; -} - -.soria .dojoxGrid-header .dojoxGrid-cell { - border: 1px solid transparent; - /* border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; */ - border-color: white #ACA899 #919191 white; - background: url(../../../dijit/themes/soria/images/titleBar.png) #e9e9e9 repeat-x top; - padding-bottom: 2px; - color: #000 !important; -} - -.soria .dojoxGrid-header .dojoxGrid-cell-over { - background: url(../../../dijit/themes/soria/images/titleBarActive.png) #e9e9e9 repeat-x top; -} - -.soria .dojoxGrid-sort-down { - background: url(images/grid_sort_down.gif) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} - -.soria .dojoxGrid-sort-up { - background: url(images/grid_sort_up.gif) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} - -.soria .gridArrowButtonChar { - display:none !important; -} -.dijit_a11y .gridArrowButtonChar { - display:inline !important; -} - -/* content */ - -.soria .dojoxGrid-scrollbox { - position: relative; - overflow: scroll; - background-color: #fefefe; - width: 100%; -} - -.soria .dojoxGrid-content { - position: relative; - overflow: hidden; - -moz-outline-style: none; - outline: none; -} - -/* rowbar */ - -.soria .dojoxGrid-rowbar { - border: none; - /* - border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; - */ - background: url(images/titleBar.png) #e9e9e9 repeat-y right; - border-right: 1px solid #cccccc; - padding: 0px; -} - -.soria .dojoxGrid-rowbar-inner { - border: none; - border-bottom: 1px solid #cccccc; -} - -.soria .dojoxGrid-rowbar-over { - background: url(images/titleBarActive.png) #e9e9e9 repeat-y right; -} - -.soria .dojoxGrid-rowbar-selected { - background-color: #D9E8F9; - background-image: none; - background: url(../../../dijit/themes/soria/images/titleBar.png) #dddddd repeat-x top; - border-right: 1px solid #cccccc; - background-position: center; - background-repeat: no-repeat; -} - -/* rows */ - -.soria .dojoxGrid-row { - position: relative; - width: 9000em; -} - -.soria .dojoxGrid-row { - border: none; - border-left: none; - border-right: none; - background-color: white; - border-top: none; -} - -.soria .dojoxGrid-row-over { - border-top-color: #cccccc; - border-bottom-color: #cccccc; -} - -.soria .dojoxGrid-row-over .dojoxGrid-cell { - background-color: #60a1ea; - color:#fff; -} - -.soria .dojoxGrid-row-odd { - background-color: #f2f5f9; - /*background-color: #F9F7E8;*/ -} - -.soria .dojoxGrid-row-selected { - background-color: #aec7e3; -} - -.soria .dojoxGrid-row-table { - table-layout: fixed; - width: 0; - border-collapse: collapse; -} - -.soria .dojoxGrid-invisible { - visibility: hidden; -} - -.soria .Xdojo-ie .dojoxGrid-invisible { - display: none; -} - -.soria .dojoxGrid-invisible td, .dojoxGrid-header .dojoxGrid-invisible td { - border-top-width: 0; - border-bottom-width: 0; - padding-top: 0; - padding-bottom: 0; - height: 0; - overflow: hidden; -} - -/* cells */ - -.soria .dojoxGrid-cell { - border: 1px dotted #D5CDB5; - padding: 3px 3px 3px 3px; - text-align: left; - overflow: hidden; -} - -.dj_ie6 .soria .dojoxGrid-cell { - border: 1px solid white; - border-right: 1px solid #D5CDB5; -} - -.soria .dojoxGrid-cell-focus { - border: 1px dotted #a6a6a6; -} - -.soria .dojoxGrid-cell-over { - border: 1px dotted #a6a6a6; -} - -.soria .dojoxGrid-cell-focus.dojoxGrid-cell-over { - border: 1px dotted #595959; -} - -.soria .dojoxGrid-cell-clip { - width: 100%; - overflow: hidden; - white-space:nowrap; - text-overflow: ellipsis; -} - -/* editing */ - -/* FIXME: these colors are off! */ -.soria .dojoxGrid-row-editing td { - /* background-color: #F4FFF4; */ - background-color: #60a1ea; - /* padding: 0px 3px 0px 3px; */ -} - -.soria .dojoxGrid-row-inserting td { - background-color: #F4FFF4; -} -.soria .dojoxGrid-row-inflight td { - background-color: #F2F7B7; -} -.soria .dojoxGrid-row-error td { - background-color: #F8B8B6; -} - -.soria .dojoxGrid-input, -.soria .dojoxGrid-select, -.soria .dojoxGrid-textarea { - margin: 0; - padding: 0px; - border-style: none; - width: 100%; - font-size: 100%; - font-family: inherit; -} - -.dojoxGrid-hidden-focus { - position: absolute; - left: -1000px; - top: -1000px; - height: 0px, width: 0px; -} - -.dijit_a11y .dojoxGrid-rowbar-selected { - border-top: 1px solid white; - border-bottom: 1px dashed black; - border-top: 0; - background: none; -} - -.dijit_a11y .dojoxGrid-rowbar-selected .dojoxGrid-rowbar-inner { - border: 0; - border-top: 1px solid white; -} - -.dijit_a11y .dojoxGrid-row-selected { - border-bottom: 1px dashed black; -} diff --git a/includes/js/dojox/grid/_grid/tundraGrid.css b/includes/js/dojox/grid/_grid/tundraGrid.css deleted file mode 100644 index d7b7a5f..0000000 --- a/includes/js/dojox/grid/_grid/tundraGrid.css +++ /dev/null @@ -1,215 +0,0 @@ -.tundra .dojoxGrid { - position: relative; - background-color: #e9e9e9; - font-size: 0.85em; - -moz-outline-style: none; - outline: none; - overflow: hidden; - height: 0; -} -.tundra .dojoxGrid table { - padding: 0; -} -.tundra .dojoxGrid td { - -moz-outline: none; -} -.tundra .dojoxGrid-master-header { - position: relative; -} -.tundra .dojoxGrid-master-view { - position: relative; -} -.tundra .dojoxGrid-view { - position: absolute; - overflow: hidden; -} -.tundra .dojoxGrid-header { - position: absolute; - overflow: hidden; -} -.tundra .dojoxGrid-header { - background-color: #e9e9e9; -} -.tundra .dojoxGrid-header table { - text-align: center; -} -.tundra .dojoxGrid-header .dojoxGrid-cell-content { - text-align: center; -} -.tundra .dojoxGrid-header .dojoxGrid-cell { - border: 1px solid transparent; - - border-color: white #ACA899 #919191 white; - background: url(../../../dijit/themes/tundra/images/tabEnabled.png) #e9e9e9 repeat-x top; - padding-bottom: 2px; - color: #000 !important; -} -.tundra .dojoxGrid-header .dojoxGrid-cell-over { - background: url(../../../dijit/themes/tundra/images/tabHover.png) #e9e9e9 repeat-x top; - color: #000 !important; -} -.tundra .dojoxGrid-sort-down { - background: url(../../../dijit/themes/tundra/images/arrowDown.png) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} -.tundra .dojoxGrid-sort-up { - background: url(../../../dijit/themes/tundra/images/arrowUp.png) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} -.tundra .gridArrowButtonChar { - display:none !important; -} -.dijit_a11y .gridArrowButtonChar { - display:inline !important; -} -.tundra .dojoxGrid-scrollbox { - position: relative; - overflow: scroll; - background-color: #fefefe; - width: 100%; -} -.tundra .dojoxGrid-content { - position: relative; - overflow: hidden; - -moz-outline-style: none; - outline: none; -} -.tundra .dojoxGrid-rowbar { - border: none; - - background: url(images/tabEnabled_rotated.png) #e9e9e9 repeat-y right; - border-right: 1px solid #cccccc; - padding: 0px; -} -.tundra .dojoxGrid-rowbar-inner { - border: none; - border-bottom: 1px solid #cccccc; -} -.tundra .dojoxGrid-rowbar-over { - background: url(images/tabHover_rotated.png) #e9e9e9 repeat-y right; -} -.tundra .dojoxGrid-rowbar-selected { - background-color: #D9E8F9; - background-image: none; - background: url(../../../dijit/themes/tundra/images/tabDisabled.png) #dddddd repeat-x top; - border-right: 1px solid #cccccc; - background-position: center; - background-repeat: no-repeat; -} -.tundra .dojoxGrid-row { - position: relative; - width: 9000em; -} -.tundra .dojoxGrid-row { - border: none; - border-left: none; - border-right: none; - background-color: white; - border-top: none; -} -.tundra .dojoxGrid-row-over { - border-top-color: #cccccc; - border-bottom-color: #cccccc; -} -.tundra .dojoxGrid-row-over .dojoxGrid-cell { - background-color: #60a1ea; - color:#fff; - -} -.tundra .dojoxGrid-row-odd { - background-color: #f2f5f9; - -} -.tundra .dojoxGrid-row-selected { - background-color: #aec7e3; - -} -.tundra .dojoxGrid-row-table { - table-layout: fixed; - width: 0; - border-collapse: collapse; -} -.tundra .dojoxGrid-invisible { - visibility: hidden; -} -.tundra .Xdojo-ie .dojoxGrid-invisible { - display: none; -} -.tundra .dojoxGrid-invisible td, .dojoxGrid-header .dojoxGrid-invisible td { - border-top-width: 0; - border-bottom-width: 0; - padding-top: 0; - padding-bottom: 0; - height: 0; - overflow: hidden; -} -.tundra .dojoxGrid-cell { - border: 1px dotted #D5CDB5; - padding: 3px 3px 3px 3px; - text-align: left; - overflow: hidden; -} -.dj_ie6 .tundra .dojoxGrid-cell { - border: 1px solid white; - border-right: 1px solid #D5CDB5; -} -.tundra .dojoxGrid-cell-focus { - border: 1px dotted #a6a6a6; -} -.tundra .dojoxGrid-cell-over { - border: 1px dotted #a6a6a6; -} -.tundra .dojoxGrid-cell-focus.dojoxGrid-cell-over { - border: 1px dotted #595959; -} -.tundra .dojoxGrid-cell-clip { - width: 100%; - overflow: hidden; - white-space:nowrap; - text-overflow: ellipsis; -} -.tundra .dojoxGrid-row-editing td { - - background-color: #60a1ea; - -} -.tundra .dojoxGrid-row-inserting td { - background-color: #F4FFF4; -} -.tundra .dojoxGrid-row-inflight td { - background-color: #F2F7B7; -} -.tundra .dojoxGrid-row-error td { - background-color: #F8B8B6; -} -.tundra .dojoxGrid-input, -.tundra .dojoxGrid-select, -.tundra .dojoxGrid-textarea { - margin: 0; - padding: 0px; - border-style: none; - width: 100%; - font-size: 100%; - font-family: inherit; -} -.dojoxGrid-hidden-focus { - position: absolute; - left: -1000px; - top: -1000px; - height: 0px, width: 0px; -} -.dijit_a11y .dojoxGrid-rowbar-selected { - border-top: 1px solid white; - border-bottom: 1px dashed black; - border-top: 0; - background: none; -} -.dijit_a11y .dojoxGrid-rowbar-selected .dojoxGrid-rowbar-inner { - border: 0; - border-top: 1px solid white; -} -.dijit_a11y .dojoxGrid-row-selected { - border-bottom: 1px dashed black; -} diff --git a/includes/js/dojox/grid/_grid/tundraGrid.css.commented.css b/includes/js/dojox/grid/_grid/tundraGrid.css.commented.css deleted file mode 100644 index a282f58..0000000 --- a/includes/js/dojox/grid/_grid/tundraGrid.css.commented.css +++ /dev/null @@ -1,281 +0,0 @@ -.tundra .dojoxGrid { - position: relative; - background-color: #e9e9e9; - font-size: 0.85em; /* inherit font-family from dojo.css */ - -moz-outline-style: none; - outline: none; - overflow: hidden; - height: 0; -} - -.tundra .dojoxGrid table { - padding: 0; -} - -.tundra .dojoxGrid td { - -moz-outline: none; -} - -/* master header */ - -.tundra .dojoxGrid-master-header { - position: relative; -} - -/* master view */ - -.tundra .dojoxGrid-master-view { - position: relative; -} - -/* views */ - -.tundra .dojoxGrid-view { - position: absolute; - overflow: hidden; -} - -/* header */ - -.tundra .dojoxGrid-header { - position: absolute; - overflow: hidden; -} - -.tundra .dojoxGrid-header { - background-color: #e9e9e9; -} - -.tundra .dojoxGrid-header table { - text-align: center; -} - -.tundra .dojoxGrid-header .dojoxGrid-cell-content { - text-align: center; -} - -.tundra .dojoxGrid-header .dojoxGrid-cell { - border: 1px solid transparent; - /* border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; */ - border-color: white #ACA899 #919191 white; - background: url(../../../dijit/themes/tundra/images/tabEnabled.png) #e9e9e9 repeat-x top; - padding-bottom: 2px; - color: #000 !important; -} - -.tundra .dojoxGrid-header .dojoxGrid-cell-over { - background: url(../../../dijit/themes/tundra/images/tabHover.png) #e9e9e9 repeat-x top; - color: #000 !important; -} - -.tundra .dojoxGrid-sort-down { - background: url(../../../dijit/themes/tundra/images/arrowDown.png) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} - -.tundra .dojoxGrid-sort-up { - background: url(../../../dijit/themes/tundra/images/arrowUp.png) right no-repeat; - padding-left: 0px; - margin-left: 0px; -} - -.tundra .gridArrowButtonChar { - display:none !important; -} -.dijit_a11y .gridArrowButtonChar { - display:inline !important; -} - -/* content */ - -.tundra .dojoxGrid-scrollbox { - position: relative; - overflow: scroll; - background-color: #fefefe; - width: 100%; -} - -.tundra .dojoxGrid-content { - position: relative; - overflow: hidden; - -moz-outline-style: none; - outline: none; -} - -/* rowbar */ - -.tundra .dojoxGrid-rowbar { - border: none; - /* - border-color: #F6F4EB #ACA899 #ACA899 #F6F4EB; - */ - background: url(images/tabEnabled_rotated.png) #e9e9e9 repeat-y right; - border-right: 1px solid #cccccc; - padding: 0px; -} - -.tundra .dojoxGrid-rowbar-inner { - border: none; - border-bottom: 1px solid #cccccc; -} - -.tundra .dojoxGrid-rowbar-over { - background: url(images/tabHover_rotated.png) #e9e9e9 repeat-y right; -} - -.tundra .dojoxGrid-rowbar-selected { - background-color: #D9E8F9; - background-image: none; - background: url(../../../dijit/themes/tundra/images/tabDisabled.png) #dddddd repeat-x top; - border-right: 1px solid #cccccc; - background-position: center; - background-repeat: no-repeat; -} - -/* rows */ - -.tundra .dojoxGrid-row { - position: relative; - width: 9000em; -} - -.tundra .dojoxGrid-row { - border: none; - border-left: none; - border-right: none; - background-color: white; - border-top: none; -} - -.tundra .dojoxGrid-row-over { - border-top-color: #cccccc; - border-bottom-color: #cccccc; -} - -.tundra .dojoxGrid-row-over .dojoxGrid-cell { - background-color: #60a1ea; - color:#fff; - /*background: url(../../../dijit/themes/tundra/images/tabEnabled.png) #e9e9e9 repeat-x top;*/ -} - -.tundra .dojoxGrid-row-odd { - background-color: #f2f5f9; - /*background-color: #F9F7E8;*/ -} - -.tundra .dojoxGrid-row-selected { - background-color: #aec7e3; - /* - background: url(../../../dijit/themes/tundra/images/tabDisabled.png) #dddddd repeat-x top; - */ -} - -.tundra .dojoxGrid-row-table { - table-layout: fixed; - width: 0; - border-collapse: collapse; -} - -.tundra .dojoxGrid-invisible { - visibility: hidden; -} - -.tundra .Xdojo-ie .dojoxGrid-invisible { - display: none; -} - -.tundra .dojoxGrid-invisible td, .dojoxGrid-header .dojoxGrid-invisible td { - border-top-width: 0; - border-bottom-width: 0; - padding-top: 0; - padding-bottom: 0; - height: 0; - overflow: hidden; -} - -/* cells */ - -.tundra .dojoxGrid-cell { - border: 1px dotted #D5CDB5; - padding: 3px 3px 3px 3px; - text-align: left; - overflow: hidden; -} - -.dj_ie6 .tundra .dojoxGrid-cell { - border: 1px solid white; - border-right: 1px solid #D5CDB5; -} - -.tundra .dojoxGrid-cell-focus { - border: 1px dotted #a6a6a6; -} - -.tundra .dojoxGrid-cell-over { - border: 1px dotted #a6a6a6; -} - -.tundra .dojoxGrid-cell-focus.dojoxGrid-cell-over { - border: 1px dotted #595959; -} - -.tundra .dojoxGrid-cell-clip { - width: 100%; - overflow: hidden; - white-space:nowrap; - text-overflow: ellipsis; -} - -/* editing */ - -/* FIXME: these colors are off! */ -.tundra .dojoxGrid-row-editing td { - /* background-color: #F4FFF4; */ - background-color: #60a1ea; - /* padding: 0px 3px 0px 3px; */ -} - -.tundra .dojoxGrid-row-inserting td { - background-color: #F4FFF4; -} -.tundra .dojoxGrid-row-inflight td { - background-color: #F2F7B7; -} -.tundra .dojoxGrid-row-error td { - background-color: #F8B8B6; -} - -.tundra .dojoxGrid-input, -.tundra .dojoxGrid-select, -.tundra .dojoxGrid-textarea { - margin: 0; - padding: 0px; - border-style: none; - width: 100%; - font-size: 100%; - font-family: inherit; -} - -.dojoxGrid-hidden-focus { - position: absolute; - left: -1000px; - top: -1000px; - height: 0px, width: 0px; -} - -.dijit_a11y .dojoxGrid-rowbar-selected { - border-top: 1px solid white; - border-bottom: 1px dashed black; - border-top: 0; - background: none; -} - -.dijit_a11y .dojoxGrid-rowbar-selected .dojoxGrid-rowbar-inner { - border: 0; - border-top: 1px solid white; -} - -.dijit_a11y .dojoxGrid-row-selected { - border-bottom: 1px dashed black; -} diff --git a/includes/js/dojox/grid/_grid/view.js b/includes/js/dojox/grid/_grid/view.js deleted file mode 100644 index 7f669cd..0000000 --- a/includes/js/dojox/grid/_grid/view.js +++ /dev/null @@ -1,336 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.view"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.view"] = true; -dojo.provide("dojox.grid._grid.view"); - -dojo.require("dijit._Widget"); -dojo.require("dijit._Templated"); -dojo.require("dojox.grid._grid.builder"); - -dojo.declare('dojox.GridView', - [dijit._Widget, dijit._Templated], - { - // summary: - // A collection of grid columns. A grid is comprised of a set of views that stack horizontally. - // Grid creates views automatically based on grid's layout structure. - // Users should typically not need to access individual views directly. - // - // defaultWidth: String - // Default widget of the view - defaultWidth: "18em", - - // viewWidth: String - // Width for the view, in valid css unit - viewWidth: "", - - templateString:"
\n\t
\n\t\t
\n\t\t\t
\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t
\n
\n", - - themeable: false, - classTag: 'dojoxGrid', - marginBottom: 0, - rowPad: 2, - - postMixInProperties: function(){ - this.rowNodes = []; - }, - - postCreate: function(){ - this.connect(this.scrollboxNode,"onscroll","doscroll"); - dojox.grid.funnelEvents(this.contentNode, this, "doContentEvent", [ 'mouseover', 'mouseout', 'click', 'dblclick', 'contextmenu', 'mousedown' ]); - dojox.grid.funnelEvents(this.headerNode, this, "doHeaderEvent", [ 'dblclick', 'mouseover', 'mouseout', 'mousemove', 'mousedown', 'click', 'contextmenu' ]); - this.content = new dojox.grid.contentBuilder(this); - this.header = new dojox.grid.headerBuilder(this); - //BiDi: in RTL case, style width='9000em' causes scrolling problem in head node - if(!dojo._isBodyLtr()){ - this.headerNodeContainer.style.width = ""; - } - }, - - destroy: function(){ - dojox.grid.removeNode(this.headerNode); - this.inherited("destroy", arguments); - }, - - // focus - focus: function(){ - if(dojo.isSafari || dojo.isOpera){ - this.hiddenFocusNode.focus(); - }else{ - this.scrollboxNode.focus(); - } - }, - - setStructure: function(inStructure){ - var vs = this.structure = inStructure; - // FIXME: similar logic is duplicated in layout - if(vs.width && !isNaN(vs.width)){ - this.viewWidth = vs.width + 'em'; - }else{ - this.viewWidth = vs.width || this.viewWidth; //|| this.defaultWidth; - } - this.onBeforeRow = vs.onBeforeRow; - this.noscroll = vs.noscroll; - if(this.noscroll){ - this.scrollboxNode.style.overflow = "hidden"; - } - // bookkeeping - this.testFlexCells(); - // accomodate new structure - this.updateStructure(); - }, - - testFlexCells: function(){ - // FIXME: cheater, this function does double duty as initializer and tester - this.flexCells = false; - for(var j=0, row; (row=this.structure.rows[j]); j++){ - for(var i=0, cell; (cell=row[i]); i++){ - cell.view = this; - this.flexCells = this.flexCells || cell.isFlex(); - } - } - return this.flexCells; - }, - - updateStructure: function(){ - // header builder needs to update table map - this.header.update(); - // content builder needs to update markup cache - this.content.update(); - }, - - getScrollbarWidth: function(){ - return (this.noscroll ? 0 : dojox.grid.getScrollbarWidth()); // Integer - }, - - getColumnsWidth: function(){ - return this.headerContentNode.firstChild.offsetWidth; // Integer - }, - - getWidth: function(){ - return this.viewWidth || (this.getColumnsWidth()+this.getScrollbarWidth()) +'px'; // String - }, - - getContentWidth: function(){ - return Math.max(0, dojo._getContentBox(this.domNode).w - this.getScrollbarWidth()) + 'px'; // String - }, - - render: function(){ - this.scrollboxNode.style.height = ''; - this.renderHeader(); - }, - - renderHeader: function(){ - this.headerContentNode.innerHTML = this.header.generateHtml(this._getHeaderContent); - }, - - // note: not called in 'view' context - _getHeaderContent: function(inCell){ - var n = inCell.name || inCell.grid.getCellName(inCell); - if(inCell.index != inCell.grid.getSortIndex()){ - return n; - } - return [ '
', inCell.grid.sortInfo > 0 ? '▼' : '▲', '
', n, '
' ].join(''); - }, - - resize: function(){ - this.adaptHeight(); - this.adaptWidth(); - }, - - hasScrollbar: function(){ - return (this.scrollboxNode.clientHeight != this.scrollboxNode.offsetHeight); // Boolean - }, - - adaptHeight: function(){ - if(!this.grid.autoHeight){ - var h = this.domNode.clientHeight; - if(!this.hasScrollbar()){ // no scrollbar is rendered - h -= dojox.grid.getScrollbarWidth(); - } - dojox.grid.setStyleHeightPx(this.scrollboxNode, h); - } - }, - - adaptWidth: function(){ - if(this.flexCells){ - // the view content width - this.contentWidth = this.getContentWidth(); - this.headerContentNode.firstChild.style.width = this.contentWidth; - } - // FIXME: it should be easier to get w from this.scrollboxNode.clientWidth, - // but clientWidth seemingly does not include scrollbar width in some cases - var w = this.scrollboxNode.offsetWidth - this.getScrollbarWidth(); - w = Math.max(w, this.getColumnsWidth()) + 'px'; - with(this.contentNode){ - style.width = ''; - offsetWidth; - style.width = w; - } - }, - - setSize: function(w, h){ - with(this.domNode.style){ - if(w){ - width = w; - } - height = (h >= 0 ? h + 'px' : ''); - } - with(this.headerNode.style){ - if(w){ - width = w; - } - } - }, - - renderRow: function(inRowIndex, inHeightPx){ - var rowNode = this.createRowNode(inRowIndex); - this.buildRow(inRowIndex, rowNode, inHeightPx); - this.grid.edit.restore(this, inRowIndex); - return rowNode; - }, - - createRowNode: function(inRowIndex){ - var node = document.createElement("div"); - node.className = this.classTag + '-row'; - node[dojox.grid.gridViewTag] = this.id; - node[dojox.grid.rowIndexTag] = inRowIndex; - this.rowNodes[inRowIndex] = node; - return node; - }, - - buildRow: function(inRowIndex, inRowNode){ - this.buildRowContent(inRowIndex, inRowNode); - this.styleRow(inRowIndex, inRowNode); - }, - - buildRowContent: function(inRowIndex, inRowNode){ - inRowNode.innerHTML = this.content.generateHtml(inRowIndex, inRowIndex); - if(this.flexCells){ - // FIXME: accessing firstChild here breaks encapsulation - inRowNode.firstChild.style.width = this.contentWidth; - } - }, - - rowRemoved:function(inRowIndex){ - this.grid.edit.save(this, inRowIndex); - delete this.rowNodes[inRowIndex]; - }, - - getRowNode: function(inRowIndex){ - return this.rowNodes[inRowIndex]; - }, - - getCellNode: function(inRowIndex, inCellIndex){ - var row = this.getRowNode(inRowIndex); - if(row){ - return this.content.getCellNode(row, inCellIndex); - } - }, - - // styling - styleRow: function(inRowIndex, inRowNode){ - inRowNode._style = dojox.grid.getStyleText(inRowNode); - this.styleRowNode(inRowIndex, inRowNode); - }, - - styleRowNode: function(inRowIndex, inRowNode){ - if(inRowNode){ - this.doStyleRowNode(inRowIndex, inRowNode); - } - }, - - doStyleRowNode: function(inRowIndex, inRowNode){ - this.grid.styleRowNode(inRowIndex, inRowNode); - }, - - // updating - updateRow: function(inRowIndex, inHeightPx, inPageNode){ - var rowNode = this.getRowNode(inRowIndex); - if(rowNode){ - rowNode.style.height = ''; - this.buildRow(inRowIndex, rowNode); - } - return rowNode; - }, - - updateRowStyles: function(inRowIndex){ - this.styleRowNode(inRowIndex, this.getRowNode(inRowIndex)); - }, - - // scrolling - lastTop: 0, - firstScroll:0, - - doscroll: function(inEvent){ - //var s = dojo.marginBox(this.headerContentNode.firstChild); - var isLtr = dojo._isBodyLtr(); - if(this.firstScroll < 2){ - if((!isLtr && this.firstScroll == 1) || (isLtr && this.firstScroll == 0)){ - var s = dojo.marginBox(this.headerNodeContainer); - if(dojo.isIE){ - this.headerNodeContainer.style.width = s.w + this.getScrollbarWidth() + 'px'; - }else if(dojo.isMoz){ - //TODO currently only for FF, not sure for safari and opera - this.headerNodeContainer.style.width = s.w - this.getScrollbarWidth() + 'px'; - //this.headerNodeContainer.style.width = s.w + 'px'; - //set scroll to right in FF - if(isLtr){ - this.scrollboxNode.scrollLeft = this.scrollboxNode.scrollWidth - this.scrollboxNode.clientWidth; - }else{ - this.scrollboxNode.scrollLeft = this.scrollboxNode.clientWidth - this.scrollboxNode.scrollWidth; - } - } - } - this.firstScroll++; - } - this.headerNode.scrollLeft = this.scrollboxNode.scrollLeft; - // 'lastTop' is a semaphore to prevent feedback-loop with setScrollTop below - var top = this.scrollboxNode.scrollTop; - if(top != this.lastTop){ - this.grid.scrollTo(top); - } - }, - - setScrollTop: function(inTop){ - // 'lastTop' is a semaphore to prevent feedback-loop with doScroll above - this.lastTop = inTop; - this.scrollboxNode.scrollTop = inTop; - return this.scrollboxNode.scrollTop; - }, - - // event handlers (direct from DOM) - doContentEvent: function(e){ - if(this.content.decorateEvent(e)){ - this.grid.onContentEvent(e); - } - }, - - doHeaderEvent: function(e){ - if(this.header.decorateEvent(e)){ - this.grid.onHeaderEvent(e); - } - }, - - // event dispatch(from Grid) - dispatchContentEvent: function(e){ - return this.content.dispatchEvent(e); - }, - - dispatchHeaderEvent: function(e){ - return this.header.dispatchEvent(e); - }, - - // column resizing - setColWidth: function(inIndex, inWidth){ - this.grid.setCellWidth(inIndex, inWidth + 'px'); - }, - - update: function(){ - var left = this.scrollboxNode.scrollLeft; - this.content.update(); - this.grid.update(); - this.scrollboxNode.scrollLeft = left; - this.headerNode.scrollLeft = left; - } -}); - -} diff --git a/includes/js/dojox/grid/_grid/views.js b/includes/js/dojox/grid/_grid/views.js deleted file mode 100644 index d13bbb7..0000000 --- a/includes/js/dojox/grid/_grid/views.js +++ /dev/null @@ -1,277 +0,0 @@ -if(!dojo._hasResource["dojox.grid._grid.views"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.grid._grid.views"] = true; -dojo.provide("dojox.grid._grid.views"); - -dojo.declare('dojox.grid.views', null, { - // summary: - // A collection of grid views. Owned by grid and used internally for managing grid views. - // description: - // Grid creates views automatically based on grid's layout structure. - // Users should typically not need to access individual views or the views collection directly. - constructor: function(inGrid){ - this.grid = inGrid; - }, - - defaultWidth: 200, - - views: [], - - // operations - resize: function(){ - this.onEach("resize"); - }, - - render: function(){ - this.onEach("render"); - }, - - // views - addView: function(inView){ - inView.idx = this.views.length; - this.views.push(inView); - }, - - destroyViews: function(){ - for (var i=0, v; v=this.views[i]; i++) - v.destroy(); - this.views = []; - }, - - getContentNodes: function(){ - var nodes = []; - for(var i=0, v; v=this.views[i]; i++){ - nodes.push(v.contentNode); - } - return nodes; - }, - - forEach: function(inCallback){ - for(var i=0, v; v=this.views[i]; i++){ - inCallback(v, i); - } - }, - - onEach: function(inMethod, inArgs){ - inArgs = inArgs || []; - for(var i=0, v; v=this.views[i]; i++){ - if(inMethod in v){ - v[inMethod].apply(v, inArgs); - } - } - }, - - // layout - normalizeHeaderNodeHeight: function(){ - var rowNodes = []; - for(var i=0, v; (v=this.views[i]); i++){ - if(v.headerContentNode.firstChild){ - rowNodes.push(v.headerContentNode) - }; - } - this.normalizeRowNodeHeights(rowNodes); - }, - - normalizeRowNodeHeights: function(inRowNodes){ - var h = 0; - for(var i=0, n, o; (n=inRowNodes[i]); i++){ - h = Math.max(h, (n.firstChild.clientHeight)||(n.firstChild.offsetHeight)); - } - h = (h >= 0 ? h : 0); - // - var hpx = h + 'px'; - for(var i=0, n; (n=inRowNodes[i]); i++){ - if(n.firstChild.clientHeight!=h){ - n.firstChild.style.height = hpx; - } - } - // - //console.log('normalizeRowNodeHeights ', h); - // - // querying the height here seems to help scroller measure the page on IE - if(inRowNodes&&inRowNodes[0]){ - inRowNodes[0].parentNode.offsetHeight; - } - }, - - resetHeaderNodeHeight: function(){ - for(var i=0, v, n; (v=this.views[i]); i++){ - n = v.headerContentNode.firstChild; - if(n) - n.style.height = ""; - } - }, - - renormalizeRow: function(inRowIndex){ - var rowNodes = []; - for(var i=0, v, n; (v=this.views[i])&&(n=v.getRowNode(inRowIndex)); i++){ - n.firstChild.style.height = ''; - rowNodes.push(n); - } - this.normalizeRowNodeHeights(rowNodes); - }, - - getViewWidth: function(inIndex){ - return this.views[inIndex].getWidth() || this.defaultWidth; - }, - - // must be called after view widths are properly set or height can be miscalculated - // if there are flex columns - measureHeader: function(){ - // need to reset view header heights so they are properly measured. - this.resetHeaderNodeHeight(); - this.forEach(function(inView){ - inView.headerContentNode.style.height = ''; - }); - var h = 0; - // calculate maximum view header height - this.forEach(function(inView){ - h = Math.max(inView.headerNode.offsetHeight, h); - }); - return h; - }, - - measureContent: function(){ - var h = 0; - this.forEach(function(inView) { - h = Math.max(inView.domNode.offsetHeight, h); - }); - return h; - }, - - findClient: function(inAutoWidth){ - // try to use user defined client - var c = this.grid.elasticView || -1; - // attempt to find implicit client - if(c < 0){ - for(var i=1, v; (v=this.views[i]); i++){ - if(v.viewWidth){ - for(i=1; (v=this.views[i]); i++){ - if(!v.viewWidth){ - c = i; - break; - } - } - break; - } - } - } - // client is in the middle by default - if(c < 0){ - c = Math.floor(this.views.length / 2); - } - return c; - }, - - arrange: function(l, w){ - var i, v, vw, len = this.views.length; - // find the client - var c = (w <= 0 ? len : this.findClient()); - // layout views - var setPosition = function(v, l){ - with(v.domNode.style){ - if(!dojo._isBodyLtr()){ - right = l + 'px'; - }else{ - left = l + 'px'; - } - top = 0 + 'px'; - } - with(v.headerNode.style){ - if(!dojo._isBodyLtr()){ - right = l + 'px'; - }else{ - left = l + 'px'; - } - top = 0; - } - } - // for views left of the client - //BiDi TODO: The left and right should not appear in BIDI environment. Should be replaced with - //leading and tailing concept. - for(i=0; (v=this.views[i])&&(i