# Namespace: FooTable

## FooTable

The core FooTable namespace containing all the plugin code.

### Classes

Breakpoint
Breakpoints
Cell
Class
ClassFactory
Column
Columns
Component
DateColumn
Defaults
Editing
EditingColumn
Filter
Filtering
HTMLColumn
NumberColumn
Pager
Paging
Query
Row
Rows
Sorter
Sorting
Table

### Namespaces

arr
is
str

### Events

#### Breakpoints"after.ft.breakpoints"

The after.ft.breakpoints event is raised after the breakpoint has changed and the UI is redrawn and is supplied both the "new" current breakpoint and the previous one that was replaced.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`current` | FooTable.Breakpoint | The current breakpoint.
`previous` | FooTable.Breakpoint | The breakpoint that was just replaced.

#### Breakpoints"before.ft.breakpoints"

The before.ft.breakpoints event is raised if the breakpoint has changed but before the UI is redrawn and is supplied both the current breakpoint and the next "new" one that is about to be applied. Calling preventDefault on this event will prevent the next breakpoint from being applied.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`current` | FooTable.Breakpoint | The current breakpoint.
`next` | FooTable.Breakpoint | The breakpoint that is about to be applied.

#### Breakpoints"init.ft.breakpoints"

The init.ft.breakpoints event is raised before any UI is generated. Calling preventDefault on this event will disable the entire plugin.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Breakpoints"preinit.ft.breakpoints"

The preinit.ft.breakpoints event is raised before any UI is created and provides the tables jQuery data object for additional options parsing. Calling preventDefault on this event will disable the entire plugin.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`data` | object | The jQuery data object of the table raising the event.

#### Columns"init.ft.columns"

The init.ft.columns event is raised after the header row is created/parsed for column data.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`instance` | FooTable.Table | The instance of the plugin raising the event.
`columns` | Array.<FooTable.Column> | The array of `FooTable.Column` objects parsed from the options and/or DOM.

#### Columns"preinit.ft.columns"

The preinit.ft.columns event is raised before any UI is created and provides the tables jQuery data object for additional options parsing. Calling preventDefault on this event will disable the entire plugin.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`data` | object | The jQuery data object of the table raising the event.

#### Editing"add.ft.editing"

The add.ft.editing event is raised before its callback is executed. Calling preventDefault on this event will prevent the callback from being executed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Editing"delete.ft.editing"

The delete.ft.editing event is raised before its callback is executed. Calling preventDefault on this event will prevent the callback from being executed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`row` | FooTable.Row | The row to be deleted.

#### Editing"destroy.ft.editing"

The destroy.ft.editing event is raised before its UI is removed. Calling preventDefault on this event will prevent the component from being destroyed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Editing"edit.ft.editing"

The edit.ft.editing event is raised before its callback is executed. Calling preventDefault on this event will prevent the callback from being executed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`row` | FooTable.Row | The row to be edited.

#### Editing"hide.ft.editing"

The hide.ft.editing event is raised before its callback is executed. Calling preventDefault on this event will prevent the callback from being executed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Editing"init.ft.editing"

The init.ft.editing event is raised before its UI is generated. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Editing"preinit.ft.editing"

The preinit.ft.editing event is raised before the UI is created and provides the tables jQuery data object for additional options parsing. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`data` | object | The jQuery data object of the table raising the event.

#### Editing"show.ft.editing"

The show.ft.editing event is raised before its callback is executed. Calling preventDefault on this event will prevent the callback from being executed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Filtering"after.ft.filtering"

The after.ft.filtering event is raised after a filter has been applied.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`filter` | FooTable.Filter | The filters that were applied.

#### Filtering"before.ft.filtering"

The before.ft.filtering event is raised before a filter is applied and allows listeners to modify the filter or cancel it completely by calling preventDefault on the jQuery.Event object.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`filters` | Array.<FooTable.Filter> | The filters that are about to be applied.

#### Filtering"destroy.ft.filtering"

The destroy.ft.filtering event is raised before its UI is removed. Calling preventDefault on this event will prevent the component from being destroyed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Filtering"init.ft.filtering"

The init.ft.filtering event is raised before its UI is generated. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Filtering"preinit.ft.filtering"

The preinit.ft.filtering event is raised before the UI is created and provides the tables jQuery data object for additional options parsing. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`data` | object | The jQuery data object of the table raising the event.

#### Paging"after.ft.paging"

The after.ft.paging event is raised after a pager has been applied.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`pager` | FooTable.Pager | The pager that has been applied.

#### Paging"before.ft.paging"

The before.ft.paging event is raised before a sort is applied and allows listeners to modify the pager or cancel it completely by calling preventDefault on the jQuery.Event object.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`pager` | FooTable.Pager | The pager that is about to be applied.

#### Paging"destroy.ft.paging"

The destroy.ft.paging event is raised before its UI is removed. Calling preventDefault on this event will prevent the component from being destroyed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Paging"init.ft.paging"

The init.ft.paging event is raised before its UI is generated. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Paging"preinit.ft.paging"

The preinit.ft.paging event is raised before the UI is created and provides the tables jQuery data object for additional options parsing. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`data` | object | The jQuery data object of the table raising the event.

#### Row"expand.ft.row"

The expand.ft.row event is raised before the the row is expanded. Calling preventDefault on this event will stop the row being expanded.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`row` | FooTable.Row | The row about to be expanded.

#### Row"expand.ft.row"

The expand.ft.row event is raised before the the row is expanded. Calling preventDefault on this event will stop the row being expanded.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`row` | FooTable.Row | The row about to be expanded.

#### Rows"init.ft.rows"

The init.ft.rows event is raised after the the rows are parsed from either the DOM or the options. Calling preventDefault on this event will disable the entire plugin.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`instance` | FooTable.Table | The instance of the plugin raising the event.
`rows` | Array.<FooTable.Row> | The array of `FooTable.Row` objects parsed from the DOM or the options.

#### Rows"preinit.ft.rows"

The preinit.ft.rows event is raised before any UI is created and provides the tables jQuery data object for additional options parsing. Calling preventDefault on this event will disable the entire plugin.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`data` | object | The jQuery data object of the table raising the event.

#### Sorting"after.ft.sorting"

The after.ft.sorting event is raised after a sorter has been applied.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`sorter` | FooTable.Sorter | The sorter that has been applied.

#### Sorting"before.ft.sorting"

The before.ft.sorting event is raised before a sort is applied and allows listeners to modify the sorter or cancel it completely by calling preventDefault on the jQuery.Event object.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`sorter` | FooTable.Sorter | The sorter that is about to be applied.

#### Sorting"destroy.ft.sorting"

The destroy.ft.sorting event is raised before its UI is removed. Calling preventDefault on this event will prevent the component from being destroyed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Sorting"init.ft.sorting"

The init.ft.sorting event is raised before its UI is generated. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Sorting"preinit.ft.sorting"

The preinit.ft.sorting event is raised before the UI is created and provides the tables jQuery data object for additional options parsing. Calling preventDefault on this event will disable the component.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.
`data` | object | The jQuery data object of the table raising the event.

#### Table"destroy.ft.table"

The destroy.ft.table event is called before all core components. Calling preventDefault on this event will prevent the entire plugin from being destroyed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"draw.ft.table"

The draw.ft.table event is raised after all core components and add-ons have executed there draw functions.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"init.ft.table"

The init.ft.table event is raised before any components are initialized. Calling preventDefault on this event will disable the entire plugin.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"postdraw.ft.table"

The postdraw.ft.table event is raised after all core components and add-ons have executed there postdraw functions.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"postinit.ft.table"

The postinit.ft.table event is raised after the plugin has been initialized and the table drawn. Calling preventDefault on this event will stop the ready callback being executed.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"postinit.ft.table"

The postinit.ft.table event is raised after any components are initialized but before the table is drawn for the first time. Calling preventDefault on this event will disable the initial drawing of the table.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"predraw.ft.table"

The predraw.ft.table event is raised after all core components and add-ons have executed there predraw functions but before they execute there draw functions.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"preinit.ft.table"

The preinit.ft.table event is raised before any components. Calling preventDefault on this event will disable the entire plugin.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.

#### Table"resize.ft.table"

The resize event is raised a short time after window resize operations cease.

##### Parameters:

Name | Type | Description
--- | --- | ---
`e` | jQuery.Event | The jQuery.Event object for the event.
`ft` | FooTable.Table | The instance of the plugin raising the event.