com.extjs.gxt.ui.client.widget.grid
Class GroupingView

java.lang.Object
  extended by com.extjs.gxt.ui.client.event.BaseObservable
      extended by com.extjs.gxt.ui.client.widget.grid.GridView
          extended by com.extjs.gxt.ui.client.widget.grid.GroupingView
All Implemented Interfaces:
Observable
Direct Known Subclasses:
GroupSummaryView

public class GroupingView
extends GridView

GridView that groups data based on a GroupingStore.


Nested Class Summary
 class GroupingView.GroupingViewImages
           
 
Nested classes/interfaces inherited from class com.extjs.gxt.ui.client.widget.grid.GridView
GridView.GridViewImages
 
Field Summary
protected  boolean enableGrouping
           
protected  boolean isUpdating
           
protected  java.util.Map<java.lang.String,java.lang.String> map
           
 
Fields inherited from class com.extjs.gxt.ui.client.widget.grid.GridView
activeHdIndex, autoFill, borderWidth, cm, columnListener, deferEmptyText, ds, el, emptyText, enableHdMenu, enableRowBody, focusEl, focusEnabled, footer, forceFit, grid, header, headerColumnIndex, headerDisabled, images, innerHd, lastViewWidth, listener, mainBody, mainHd, mainWrap, overRow, preventScrollToTopOnRefresh, scroller, scrollOffset, selectable, sortState, splitterWidth, templates, userResized, vbar, viewConfig, widgetList
 
Constructor Summary
GroupingView()
           
 
Method Summary
 void collapseAllGroups()
          Collapses all groups.
protected  Menu createContextMenu(int colIndex)
           
protected  void doGroupEnd(java.lang.StringBuilder buf, GroupColumnData g, java.util.List<ColumnData> cs, int colCount)
           
protected  void doGroupStart(java.lang.StringBuilder buf, GroupColumnData g, java.util.List<ColumnData> cs, int colCount)
           
protected  java.lang.String doRender(java.util.List<ColumnData> cs, java.util.List<ModelData> rows, int startRow, int colCount, boolean stripe)
           
 void expandAllGroups()
          Expands all groups.
protected  com.google.gwt.dom.client.Element findGroup(com.google.gwt.dom.client.Element el)
           
protected  java.lang.String getGroup(java.lang.Object value, ModelData m, int rowIndex, int colIndex, ListStore<ModelData> ds)
           
protected  java.lang.String getGroupField()
           
protected  java.lang.String getGroupId(java.lang.String gidPrefix, java.lang.String groupField, java.lang.String group)
           
 GridGroupRenderer getGroupRenderer()
          Returns the group renderer.
protected  com.google.gwt.dom.client.Element getGroupRow(com.google.gwt.dom.client.Element group, int rowIndex)
           
protected  int getGroupRowCount(com.google.gwt.dom.client.Element group)
           
protected  com.google.gwt.dom.client.NodeList<com.google.gwt.dom.client.Element> getGroupRows(com.google.gwt.dom.client.Element group)
           
 com.google.gwt.dom.client.NodeList<com.google.gwt.dom.client.Element> getGroups()
          Returns the group elements.
 GroupingView.GroupingViewImages getImages()
          Returns the images used by grid.
protected  com.google.gwt.dom.client.NodeList<com.google.gwt.dom.client.Element> getRows()
           
protected  void init(Grid grid)
          Initializes the view.
 void initData(ListStore ds, ColumnModel cm)
          Initializes the data.
protected  void initTemplates()
           
 boolean isEnableGroupingMenu()
          Returns true if the grouping menu is enabled.
 boolean isEnableNoGroups()
          Returns true if the user can turn off grouping.
 boolean isExpanded(com.google.gwt.dom.client.Element group)
          Returns true if the group is expanded.
 boolean isShowGroupedColumn()
          Returns true if the grouped column is visible.
 boolean isStartCollapsed()
          Returns true if start collapsed is enabled.
protected  void onAdd(ListStore<ModelData> store, java.util.List<ModelData> models, int index)
           
protected  void onGroupSelect(com.google.gwt.dom.client.Element group, boolean select)
           
protected  void onMouseDown(GridEvent<ModelData> ge)
           
protected  void onRemove(ListStore<ModelData> ds, ModelData m, int index, boolean isUpdate)
           
protected  void onShowGroupsClick(MenuEvent be, boolean checked)
           
protected  void refreshRow(int row)
           
protected  java.lang.String renderRows(int startRow, int endRow)
           
 void setEnableGroupingMenu(boolean enableGroupingMenu)
          True to enable the grouping entry in the header context menu (defaults to true).
 void setEnableNoGroups(boolean enableNoGroups)
          True to allow the user to turn off grouping by adding a check item to the header context menu (defaults to true).
 void setGroupRenderer(GridGroupRenderer groupRenderer)
          Sets the group renderer.
 void setShowGroupedColumn(boolean showGroupedColumn)
          Sets whether the grouped column is visible (defaults to true).
 void setStartCollapsed(boolean startCollapsed)
          Sets whether the groups should start collapsed (defaults to false).
protected  void templateOnAllColumnWidthsUpdated(java.util.List<java.lang.Integer> ws, int tw)
           
protected  void templateOnColumnHiddenUpdated(int col, boolean hidden, int tw)
           
protected  void templateOnColumnWidthUpdated(int col, int w, int tw)
           
 void toggleAllGroups(boolean expanded)
          Toggles all groups.
protected  void toggleGroup(com.google.gwt.dom.client.Element g, boolean expanded)
           
 
Methods inherited from class com.extjs.gxt.ui.client.widget.grid.GridView
addRowStyle, afterRender, applyEmptyText, autoExpand, calculateVBar, createComponentEvent, detachWidget, detachWidgets, doAttach, doDetach, doSort, ensureVisible, findCell, findCellIndex, findRow, findRowIndex, fitColumns, fly, focusCell, focusGrid, focusRow, getBody, getCell, getCellIndex, getCellSelectorDepth, getColumnData, getColumnStyle, getColumnWidth, getEditorParent, getEmptyText, getHeader, getHeaderCell, getOffsetWidth, getRenderedValue, getRow, getRow, getRowSelectorDepth, getScrollAdjust, getScroller, getScrollState, getSortState, getTotalWidth, getViewConfig, getWidget, getWidgetCell, handleComponentEvent, hasRows, initElements, initListeners, initUI, insertRows, isAdjustForHScroll, isAutoFill, isForceFit, isShowDirtyCells, isShowInvalidCells, isSortingEnabled, layout, layout, newColumnHeader, notifyHide, notifyShow, onBeforeDataChanged, onCellDeselect, onCellSelect, onClear, onClick, onColumnMove, onColumnSplitterMoved, onColumnWidthChange, onDataChanged, onHeaderChange, onHeaderClick, onHiddenChange, onHighlightRow, onRowDeselect, onRowOut, onRowOver, onRowSelect, onUpdate, prepareData, processRows, refresh, removeRow, removeRowStyle, render, renderFooter, renderHeader, renderUI, renderWidgets, resize, restoreScroll, scrollToTop, setAdjustForHScroll, setAutoFill, setCellSelectorDepth, setEmptyText, setForceFit, setRowSelectorDepth, setShowDirtyCells, setShowInvalidCells, setSortingEnabled, setViewConfig, stopEditing, syncHeaderScroll, syncHScroll, syncScroll, templateAfterMove, templateOnLayout, templateUpdateColumnText, updateAllColumnWidths, updateColumnHidden, updateColumnWidth, updateHeaderSortState, updateSortIcon
 
Methods inherited from class com.extjs.gxt.ui.client.event.BaseObservable
addListener, callListener, fireEvent, fireEvent, getFiresEvents, getListeners, hasActiveEvent, hasListeners, hasListeners, removeAllListeners, removeListener, setFiresEvents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

enableGrouping

protected boolean enableGrouping

isUpdating

protected boolean isUpdating

map

protected java.util.Map<java.lang.String,java.lang.String> map
Constructor Detail

GroupingView

public GroupingView()
Method Detail

collapseAllGroups

public void collapseAllGroups()
Collapses all groups.


expandAllGroups

public void expandAllGroups()
Expands all groups.


getGroupRenderer

public GridGroupRenderer getGroupRenderer()
Returns the group renderer.

Returns:
the group renderer

getGroups

public com.google.gwt.dom.client.NodeList<com.google.gwt.dom.client.Element> getGroups()
Returns the group elements.


getImages

public GroupingView.GroupingViewImages getImages()
Description copied from class: GridView
Returns the images used by grid.

Overrides:
getImages in class GridView
Returns:
the images

initData

public void initData(ListStore ds,
                     ColumnModel cm)
Description copied from class: GridView
Initializes the data.

Overrides:
initData in class GridView
Parameters:
ds - the data store
cm - the column model

isEnableGroupingMenu

public boolean isEnableGroupingMenu()
Returns true if the grouping menu is enabled.

Returns:
the enable grouping state

isEnableNoGroups

public boolean isEnableNoGroups()
Returns true if the user can turn off grouping.

Returns:
the enable no groups state

isExpanded

public boolean isExpanded(com.google.gwt.dom.client.Element group)
Returns true if the group is expanded.

Parameters:
group - the group
Returns:
true if expanded

isShowGroupedColumn

public boolean isShowGroupedColumn()
Returns true if the grouped column is visible.

Returns:
the show grouped column

isStartCollapsed

public boolean isStartCollapsed()
Returns true if start collapsed is enabled.

Returns:
the start collapsed state

setEnableGroupingMenu

public void setEnableGroupingMenu(boolean enableGroupingMenu)
True to enable the grouping entry in the header context menu (defaults to true).

Parameters:
enableGroupingMenu - true to enable

setEnableNoGroups

public void setEnableNoGroups(boolean enableNoGroups)
True to allow the user to turn off grouping by adding a check item to the header context menu (defaults to true).

Parameters:
enableNoGroups - true to enable turning off grouping

setGroupRenderer

public void setGroupRenderer(GridGroupRenderer groupRenderer)
Sets the group renderer.

Parameters:
groupRenderer - the group renderer

setShowGroupedColumn

public void setShowGroupedColumn(boolean showGroupedColumn)
Sets whether the grouped column is visible (defaults to true).

Parameters:
showGroupedColumn - true to show the grouped column

setStartCollapsed

public void setStartCollapsed(boolean startCollapsed)
Sets whether the groups should start collapsed (defaults to false).

Parameters:
startCollapsed - true to start collapsed

toggleAllGroups

public void toggleAllGroups(boolean expanded)
Toggles all groups.

Parameters:
expanded - true to expand

createContextMenu

protected Menu createContextMenu(int colIndex)
Overrides:
createContextMenu in class GridView

doGroupEnd

protected void doGroupEnd(java.lang.StringBuilder buf,
                          GroupColumnData g,
                          java.util.List<ColumnData> cs,
                          int colCount)

doGroupStart

protected void doGroupStart(java.lang.StringBuilder buf,
                            GroupColumnData g,
                            java.util.List<ColumnData> cs,
                            int colCount)

doRender

protected java.lang.String doRender(java.util.List<ColumnData> cs,
                                    java.util.List<ModelData> rows,
                                    int startRow,
                                    int colCount,
                                    boolean stripe)
Overrides:
doRender in class GridView

findGroup

protected com.google.gwt.dom.client.Element findGroup(com.google.gwt.dom.client.Element el)

getGroup

protected java.lang.String getGroup(java.lang.Object value,
                                    ModelData m,
                                    int rowIndex,
                                    int colIndex,
                                    ListStore<ModelData> ds)

getGroupField

protected java.lang.String getGroupField()

getGroupId

protected java.lang.String getGroupId(java.lang.String gidPrefix,
                                      java.lang.String groupField,
                                      java.lang.String group)

getGroupRow

protected com.google.gwt.dom.client.Element getGroupRow(com.google.gwt.dom.client.Element group,
                                                        int rowIndex)

getGroupRowCount

protected int getGroupRowCount(com.google.gwt.dom.client.Element group)

getGroupRows

protected com.google.gwt.dom.client.NodeList<com.google.gwt.dom.client.Element> getGroupRows(com.google.gwt.dom.client.Element group)

getRows

protected com.google.gwt.dom.client.NodeList<com.google.gwt.dom.client.Element> getRows()
Overrides:
getRows in class GridView

init

protected void init(Grid grid)
Description copied from class: GridView
Initializes the view.

Overrides:
init in class GridView
Parameters:
grid - the grid

initTemplates

protected void initTemplates()
Overrides:
initTemplates in class GridView

onAdd

protected void onAdd(ListStore<ModelData> store,
                     java.util.List<ModelData> models,
                     int index)
Overrides:
onAdd in class GridView

onGroupSelect

protected void onGroupSelect(com.google.gwt.dom.client.Element group,
                             boolean select)

onMouseDown

protected void onMouseDown(GridEvent<ModelData> ge)
Overrides:
onMouseDown in class GridView

onRemove

protected void onRemove(ListStore<ModelData> ds,
                        ModelData m,
                        int index,
                        boolean isUpdate)
Overrides:
onRemove in class GridView

onShowGroupsClick

protected void onShowGroupsClick(MenuEvent be,
                                 boolean checked)

refreshRow

protected void refreshRow(int row)
Overrides:
refreshRow in class GridView

renderRows

protected java.lang.String renderRows(int startRow,
                                      int endRow)
Overrides:
renderRows in class GridView

templateOnAllColumnWidthsUpdated

protected void templateOnAllColumnWidthsUpdated(java.util.List<java.lang.Integer> ws,
                                                int tw)
Overrides:
templateOnAllColumnWidthsUpdated in class GridView

templateOnColumnHiddenUpdated

protected void templateOnColumnHiddenUpdated(int col,
                                             boolean hidden,
                                             int tw)
Overrides:
templateOnColumnHiddenUpdated in class GridView

templateOnColumnWidthUpdated

protected void templateOnColumnWidthUpdated(int col,
                                            int w,
                                            int tw)
Overrides:
templateOnColumnWidthUpdated in class GridView

toggleGroup

protected void toggleGroup(com.google.gwt.dom.client.Element g,
                           boolean expanded)