Ext.ux.GridPrinter={print:function(grid){var columns=grid.getColumnModel().config;var data=[];grid.store.data.each(function(item){var convertedData=[];for(var key in item.data){var value=item.data[key];Ext.each(columns,function(column){if(column.dataIndex==key){convertedData[key]=column.renderer?column.renderer(value):value}},this)}data.push(convertedData)});var headings=Ext.ux.GridPrinter.headerTpl.apply(columns);var body=Ext.ux.GridPrinter.bodyTpl.apply(columns);var html=new Ext.XTemplate('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">','<html>','<head>','<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />','<link href="'+Ext.ux.GridPrinter.stylesheetPath+'" rel="stylesheet" type="text/css" media="screen,print" />','<title>'+grid.title+'</title>','</head>','<body>','<table>',headings,'<tpl for=".">',body,'</tpl>','</table>','</body>','</html>').apply(data);var win=window.open('','printgrid');win.document.write(html);win.document.close();win.print();win.close()},stylesheetPath:'css/gridPrint.css',headerTpl:new Ext.XTemplate('<tr>','<tpl for=".">','<th>{header}</th>','</tpl>','</tr>'),bodyTpl:new Ext.XTemplate('<tr>','<tpl for=".">','<td>\{{dataIndex}\}</td>','</tpl>','</tr>')};
