Index

Classes

Class

Methods

Class Banana.Controls.DataGridTileListRender


Extends Banana.Controls.DataGridBaseListRender.

Methods borrowed from class Banana.Controls.DataGridBaseListRender:
addSelectedIndex, applyUid, clearSelectedIndex, clearSelectedIndices, getIndexIsSelected, getObject, getRenderedItemRenderByIndex, getRenderedItemRenders, getSelectedIndices, getSelectedItems, getSelectedKeys, moveSelectedItemsDown, moveSelectedItemsUp, removeAllItems, removeSelectedItems, rerender, selectNextFromList, selectPreviousFromList, setItemIndexKey, setSelectedItems
Methods borrowed from class Banana.Controls.CustomListControl:
createControls, setData, setDataSource, setDomData
Methods borrowed from class Banana.Controls.ListControl:
dataSetSourceBind, getDataSource, setDataKeyField, setDataValueField
Methods borrowed from class Banana.Controls.DataControl:
dataSetBind, getData, unDataSetBind, updateDisplay
Methods borrowed from class Banana.Controls.Panel:
getTagName
Methods borrowed from class Banana.UiControl:
addControl, addCss, addCssClass, getAttribute, getAttributes, getClientId, getCss, getCssClass, getDimensions, getHtml, getHtmlAttributes, getState, getStyle, getStyleProperty, hasCssClass, registerEvents, removeAttribute, removeCssClass, removeState, setAttribute, setClientId, setCss, setEnabled, setState, setStyle, setVisible, switchCssClass, triggerEvent, unregisterEvents
Methods borrowed from class Banana.Control:
applyToChildren, bind, clear, createComponents, findControl, generateUniqueId, getControls, getDomEventTypes, getFirstUiControl, getId, getPage, getParent, getProxy, hasBind, invalidateDisplay, onPreInvalidateContents, onWindowResize, remove, render, setId, setPage, setParent, unbind, unload

Defined in: DataGridTileListRender.js.

Class Detail
Banana.Controls.DataGridTileListRender()

Creates a datagrid tile list render. Each item in the datasource is a tile. Use setPlaceHolderWidth to have multiple tiles after each other. You can also define this in css By default each tile is rendered by a Banana.Controls.DataGridTileItemRender instance implement your own instance to construct more advanced item renders

example:

  //define our custom datagrid table item render
    myCustomItemRender = Banana.Controls.DataGridTableContentItemRender.extend({

        createComponents : function()
        {
            var label = new Banana.Controls.Panel();
            label.setData(this.getData().id);
            this.addControl(new Banana.Controls.Panel());
        }
    });

    grid = new Banana.Controls.DataGrid();

    var listRender = new Banana.Controls.DataGridTileListRender()
    listRender.setHItemCount(4);
    listRender.setTilePadding(6);

    //note that this method required you to pass a function providing the itemrender.
    listRender.setItemRender(function(){return new myCustomItemRender()});

    grid.setListRender(listRender);

    var content = [{id:1},{id:2}];  

    grid.setDataSource(content);    

    this.addControl(grid);
Method Detail
addItem(data, when)

Adds item

Parameters:
{mixed} data
{Boolean} when
true we instantly renders it
addItemAt(item, index, render, preventRender)

At item at specific index. Results in rerender of the list

Parameters:
{Object} item
{int} index
{Banana.Controls.DataGridTileItemRender} render
{Boolean} preventRender
when true we wont render. useful whne adding multiple items at once
addItems(items)

Adds item to the datasource. Results in rerender of the list

TODO: now every add results into instant render. we could optimize this by rendering everything at once.

Parameters:
{Array} items
addItemsAt(item, index, render)

At items at specific index. Results in rerender of the list

Parameters:
{Object} item
{int} index
{Banana.Controls.DataGridTileItemRender} render
clearItemRenderPlaceHolderByIndex(index)

Empties placeholder by index

Parameters:
index
deSelectIndex(index)

Selects the index.

Parameters:
{int} index
{int} getIndexByItemRender(ir)
Parameters:
ir
Returns:
{int}
{int} getIndexByItemRenderPlaceHolder(row)
Parameters:
row
Returns:
{int}
{Banana.UiControl} getItemRenderPlaceHolderByIndex()
Parameters:
{int}
Returns:
{Banana.UiControl}
{Banana.UiControl} getItemRenderPlaceHolderByItemRender()
Parameters:
{Banana.Controls.ItemRender}
Returns:
{Banana.UiControl}
{boolean} hasItemRenderAt(int, itemRender)
Parameters:
{int} int
{Banana.Controls.ItemRender} itemRender
Returns:
{boolean}
removeItem(data)

removes item if found in datasource

Parameters:
{mixed} data
removeItemByItemRender(itemRender)

removes item from datagrid based on itemrender instance.

Parameters:
{Banana.Controls.DataGridTileItemRender} itemRender
removeItemRenderPlaceHolderByIndex(index)

removes a placeholder by index

Parameters:
{int} index
rerenderIndex(index)

Rerenders item render by index.

Parameters:
{int} index
selectIndex(index)

Selects the index.

Parameters:
{int} index
setHorizontalTileCount(count)
Parameters:
count
setItemRender(itemRender)

Set the global item render for this list render.

Parameters:
{Banana.Controls.DataGridTileItemRender} itemRender
setItemRenderByIndex(index, render, dontCreate, ignoreDataItemRenderMap)

Use this to change item render on a specific index. By default the list render will rerender the new item render

Parameters:
{int} index
{String} render
{Boolean} dontCreate
{Boolean} ignoreDataItemRenderMap
setItemRenderByIndices(indices, renderFactory)

Sets item renders on multi indices at once.

Parameters:
{Array} indices
{Function} renderFactory
of Banana.Controls.DataGridTileItemRender
setPlaceHolderWidth(width)

sets width of the placeholder. example "25%" or "50px"

Parameters:
{String} width
setTilePadding(padding)
Parameters:
padding

Documentation generated by JsDoc Toolkit 2.4.0 on Wed Dec 05 2012 22:01:39 GMT+0100 (CET)