diff options
Diffstat (limited to 'includes/js/dojox/grid/tests/test_events.html')
-rw-r--r-- | includes/js/dojox/grid/tests/test_events.html | 174 |
1 files changed, 0 insertions, 174 deletions
diff --git a/includes/js/dojox/grid/tests/test_events.html b/includes/js/dojox/grid/tests/test_events.html deleted file mode 100644 index 8ea61a4..0000000 --- a/includes/js/dojox/grid/tests/test_events.html +++ /dev/null @@ -1,174 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<html> -<head> - <title>Test dojox.Grid Events</title> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta> - <style type="text/css"> - @import "../_grid/Grid.css"; - body,td,th { - font-family: Geneva, Arial, Helvetica, sans-serif; - } - #grid { - border: 1px solid; - border-top-color: #F6F4EB; - border-right-color: #ACA899; - border-bottom-color: #ACA899; - border-left-color: #F6F4EB; - } - #grid { - width: 50em; - height: 20em; - padding: 1px; - overflow: hidden; - font-size: small; - } - h3 { - margin: 10px 0 2px 0; - } - .fade { - /*background-image:url(images/fade.gif);*/ - } - .no-fade { - /*background-image: none;*/ - } - #eventGrid { - float: right; - font-size: small; - } - </style> - <script type="text/javascript" src="../../../dojo/dojo.js" djConfig="isDebug:false, parseOnLoad: true"></script> - <script type="text/javascript"> - dojo.require("dojox.grid.Grid"); - dojo.require("dojo.parser"); - </script> - <script type="text/javascript"> - // events to track - var eventRows = [ - { name: 'onCellClick' }, - { name: 'onRowClick', properties: ['rowIndex'] }, - { name: 'onCellDblClick' }, - { name: 'onRowDblClick', properties: ['rowIndex'] }, - { name: 'onCellMouseOver' }, - { name: 'onCellMouseOut' }, - { name: 'onCellMouseDown' }, - { name: 'onRowMouseOver' }, - { name: 'onRowMouseOut' }, - { name: 'onRowMouseDown' }, - { name: 'onHeaderCellClick' }, - { name: 'onHeaderClick', properties: ['rowIndex'] }, - { name: 'onHeaderCellDblClick' }, - { name: 'onHeaderDblClick', properties: ['rowIndex'] }, - { name: 'onHeaderCellMouseOver' }, - { name: 'onHeaderCellMouseOut' }, - { name: 'onHeaderCellMouseDown' }, - { name: 'onHeaderMouseOver' }, - { name: 'onHeaderMouseOut' }, - { name: 'onKeyDown', properties: ['keyCode'] }, - { name: 'onCellContextMenu' }, - { name: 'onRowContextMenu', properties: ['rowIndex'] }, - { name: 'onHeaderCellContextMenu' }, - { name: 'onHeaderContextMenu', properties: ['rowIndex'] } - ]; - - getEventName = function(inRowIndex) { - return eventRows[inRowIndex].name; - }; - - getEventData = function(inRowIndex) { - var d = eventRows[inRowIndex].data; - var r = []; - if (d) - for (var i in d) - r.push(d[i]); - else - r.push('na') - return r.join(', '); - } - - // grid structure for event tracking grid. - var eventView = { - noscroll: true, - cells: [[ - { name: 'Event', get: getEventName, width: 12 }, - { name: 'Data', get: getEventData, width: 10 } - ]] - } - var eventLayout = [ eventView ]; - - var fade = function(inNode) { - if (!inNode || !inNode.style) return; - var c = 150, step = 5, delay = 20; - var animate = function() { - c = Math.min(c + step, 255); - inNode.style.backgroundColor = "rgb(" + c + ", " + c + ", 255)"; - if (c < 255) window.setTimeout(animate, delay); - } - animate(); - } - - // setup a fade on a row. Must do this way to avoid caching of fade gif - updateRowFade = function(inRowIndex) { - var n = eventGrid.views.views[0].getRowNode(inRowIndex); - fade(n); - } - - // store data about event. By default track event.rowIndex and event.cell.index, but eventRows can specify params, which are event properties to track. - setEventData = function(inIndex, inEvent) { - var eRow = eventRows[inIndex]; - eRow.data = {}; - var properties = eRow.properties; - if (properties) - for (var i=0, l=properties.length, p; (p=properties[i] || i < l); i++) - eRow.data[p] = inEvent[p]; - else - eRow.data = { - row: (inEvent.rowIndex != undefined ? Number(inEvent.rowIndex) : 'na'), - cell: (inEvent.cell && inEvent.cell.index != undefined ? inEvent.cell.index : 'na') - } - eventGrid.updateRow(inIndex); - updateRowFade(inIndex); - } - - // setup grid events for all events being tracked. - setGridEvents = function() { - var makeEvent = function(inIndex, inName) { - return function(e) { - setEventData(inIndex, e); - dojox.VirtualGrid.prototype[inName].apply(this, arguments); - } - } - for (var i=0, e; (e=eventRows[i]); i++) - grid[e.name] = makeEvent(i, e.name); - } - - // Grid structure - var layout = [// array of view objects - { type: 'dojox.GridRowView', width: '20px' }, - { noscroll: true, cells: [// array of rows, a row is an array of cells - [{ name: "Alpha", value: '<input type="checkbox"></input>', rowSpan: 2, width: 6, styles: 'text-align:center;' }, { name: "Alpha2", value: "Alpha2" }], - [{ name: "Alpha3", value: "Alpha3" }] - ]}, - { cells: [ - [{ name: "Beta", value: 'simple'}, { name: "Beta2", value: "Beta2" }, { name: "Beta3", value: "Beta3" }, { name: "Beta4", value: "Beta4" }, { name: "Beta5", value: "Beta5" }], - [{ name: "Summary", colSpan: 5, value: 'Summary' }] - ]}, - { noscroll: true, cells: [ - [{ name: "Gamma", value: "Gamma" }, { name: "Gamma2", value: "<button>Radiate</button>", styles: 'text-align:center;' }]] - }]; - - dojo.addOnLoad(function() { - window["grid"] = dijit.byId("grid"); - window["eventGrid"] = dijit.byId("eventGrid"); - grid.rows.defaultRowHeight = 4; - setGridEvents(); - eventGrid.updateRowCount(eventRows.length); - dojo.debug = console.log; - }); - </script> -</head> -<body> -<h3>dojox.Grid Event Tracking</h3> -<div id="eventGrid" autoWidth="true" autoHeight="true" structure="eventLayout" dojoType="dojox.VirtualGrid"></div> -<div id="grid" rowCount="100" dojoType="dojox.VirtualGrid"></div> -</body> -</html> |