Class: Sorting

FooTable. Sorting

new Sorting(table) → {FooTable.Sorting}

The sorting component adds a small sort button to specified column headers allowing users to sort those columns in the table.
Parameters:
Name Type Description
table FooTable.Table The parent FooTable.Table object for the component.
Returns:
Type
FooTable.Sorting

Extends

Members

allowed :boolean

Whether or not to allow sorting to occur, should be set using the FooTable.Sorting#toggleAllowed method.
Type:
  • boolean

column :FooTable.Column

The current sorted column.
Type:

enabled :boolean

Whether or not this component is enabled. Disabled components only have there preinit method called allowing for this value to be overridden.
Type:
  • boolean
Inherited From:

ft :FooTable.Table

The parent FooTable.Table for the component.
Type:
Inherited From:

initial :Object

The initial sort state of the table, this value is used for determining if the sorting has occurred or to reset the state to default.
Type:
  • Object

<protected> o :object

This provides a shortcut to the FooTable.Table#options.sorting object.
Type:
  • object

Methods

<static> hasChanged() → {boolean}

Checks whether any sorting has occurred for the table.
Returns:
Type
boolean

<static> reset()

Resets the table sorting to the initial state recorded in the components init method.

<static> toggleAllowed(state)

Toggles whether or not sorting is currently allowed.
Parameters:
Name Type Argument Description
state boolean <optional>
You can optionally specify the state you want it to be, if not supplied the current value is flipped.

<private> _onSortClicked(e)

Handles the sort button clicked event.
Parameters:
Name Type Description
e jQuery.Event The event object for the event.

<private> _sort(column, direction) → {jQuery.Promise}

Performs the required steps to handle sorting including the raising of the FooTable.Sorting#"before.ft.sorting" and FooTable.Sorting#"after.ft.sorting" events.
Parameters:
Name Type Argument Default Description
column string | number | FooTable.Column The column name, index or the actual FooTable.Column object to sort by.
direction string <optional>
"ASC" The direction to sort by, either ASC or DESC.
Fires:
Returns:
Type
jQuery.Promise

<protected> destroy()

Destroys the sorting component removing any UI generated from the table.
Fires:

<protected> draw()

Updates the sorting UI setting the state of the sort buttons.

<protected> init()

Initializes the sorting component for the plugin using the supplied table and options.
This:
Fires:

<protected> postdraw()

This method is called from the FooTable.Table#draw method.
Inherited From:

<protected> predraw()

Performs the actual sorting against the FooTable.Rows#current array.

<protected> preinit(data)

Checks the supplied data and options for the sorting component.
This:
Parameters:
Name Type Description
data object The jQuery data object from the parent table.
Fires:

sort(column, direction) → {jQuery.Promise}

Sets the sorting options and calls the FooTable.Table#draw method to perform the actual sorting.
Parameters:
Name Type Argument Default Description
column string | number | FooTable.Column The column name, index or the actual FooTable.Column object to sort by.
direction string <optional>
"ASC" The direction to sort by, either ASC or DESC.
Fires:
Returns:
Type
jQuery.Promise
Copyright © 2016
Documentation generated by JSDoc 3.4.1 on 2017-07-06T21:37:43+02:00