1 goog.provide('Banana.Controls.DataGridTileItemRender'); 2 3 goog.require('Banana.Controls.ItemRender'); 4 5 /** @namespace Banana.Controls.DataGridTileItemRender */ 6 namespace('Banana.Controls').DataGridTileItemRender = Banana.Controls.DataGridItemRender.extend( 7 /** @lends Banana.Controls.DataGridTileItemRender.prototype */ 8 { 9 10 /** 11 * Base item render class for datagrid table tile renders. 12 * All item renders made for the tile item render should extend from this class 13 * 14 * example: 15 16 //define our custom datagrid table item render 17 myCustomItemRender = Banana.Controls.DataGridTableContentItemRender.extend({ 18 19 createComponents : function() 20 { 21 var label = new Banana.Controls.Panel(); 22 label.setData(this.getData().id); 23 this.addControl(new Banana.Controls.Panel()); 24 } 25 }); 26 27 grid = new Banana.Controls.DataGrid(); 28 29 var listRender = new Banana.Controls.DataGridTileListRender() 30 31 //note that this method required you to pass a function providing the itemrender. 32 listRender.setItemRender(function(){return new myCustomItemRender()}); 33 34 grid.setListRender(listRender); 35 36 var content = [{id:1},{id:2}]; 37 38 grid.setDataSource(content); 39 40 this.addControl(grid); 41 42 * @constructs 43 * @extends Banana.Controls.DataGridItemRender 44 */ 45 init : function() 46 { 47 this._super(); 48 }, 49 50 /** 51 * Overwrite this method to implement your own item render 52 */ 53 createComponents : function() 54 { 55 if (typeof(this.data) == "string") 56 { 57 var p = new Banana.Controls.Panel(); 58 p.addControl(this.data); 59 this.addControl(p); 60 } 61 }, 62 63 64 /** 65 * Called when item is selected 66 */ 67 select : function() 68 { 69 this.getListRender().getItemRenderPlaceHolderByItemRender(this).addCssClass("BDataGridTileTilePlaceHolderSelected"); 70 }, 71 72 /** 73 * Called when item is deselected 74 */ 75 deselect : function() 76 { 77 this.getListRender().getItemRenderPlaceHolderByItemRender(this).removeCssClass("BDataGridTileTilePlaceHolderSelected"); 78 }, 79 80 /** 81 * Called when mouse moves over the item render. 82 */ 83 mouseOver : function() 84 { 85 86 }, 87 88 /** 89 * Called when mouse moves out the item render 90 */ 91 mouseOut : function() 92 { 93 94 } 95 });