new (require("nmodule/webEditors/rc/wb/table/model/Column"))( [name] [, params])
API Status: Development
Column for use in a TableModel
.
Parameters:
Name | Type | Argument | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
name |
String |
<optional> |
column name |
||||||||||||
params |
Object |
<optional> |
Properties
|
- Mixes In:
- tinyevents
- See:
Members
-
<static> flags :Object
-
Available configuration flags for a Column.
Type:
- Object
Methods
-
buildCell(row, dom)
-
Builds out the DOM element, typically a
td
, that represents the
intersection of this column with a particular row. Often this will simply
be a simpletoString()
or similar, but could also do more sophisticated
things like build widgets.Parameters:
Name Type Description row
module:nmodule/webEditors/rc/wb/table/model/Row dom
JQuery Returns:
promise to be resolved when the element's contents
have been fully built. It's also acceptable for overrides of this function
to complete synchronously without returning a promise, so be sure to wrap
calls to this function inPromise.resolve()
when appropriate.- Type
- Promise | *
-
destroyCell(row, dom)
-
Called when the table is destroying the DOM element built for a cell in this column. This
gives aColumn
implementation the chance to clean up any resources that might have been
created during the earlier call to#buildCell
, perhaps destroying a widget in the cell,
for example. As with#buildCell
, if this completes synchronously and doesn't return a
Promise, the caller must wrap this in a call toPromise.resolve()
.Parameters:
Name Type Description row
module:nmodule/webEditors/rc/wb/table/model/Row dom
jQuery Returns:
- Type
- Promise | *
-
getColumnIcon()
-
Returns a URI for an icon representing this column. Returns
null
by
default; override as needed in subclasses.Returns:
a URI for an icon to be shown for this column.
- Type
- String
-
getFlags()
-
Get the flags set on this column.
Returns:
- Type
- Number
-
getName()
-
Get the column name or
null
if none was given.Returns:
- Type
- String
-
<abstract> getValueFor(row)
-
Override point; each column should define its own method of retrieving a
value from the given table row.Parameters:
Name Type Description row
module:nmodule/webEditors/rc/wb/table/model/Row Throws:
-
if not implemented
- Type
- Error
Returns:
the row value. Note that this is synchronous; if the row's
subject is not ready to provide a value, it should not be loaded into the
table.- Type
- *
-
-
hasFlags(flags)
-
Return true if the column has all of the given flags.
Parameters:
Name Type Description flags
Number flags to check for
Returns:
- Type
- Boolean
-
isEditable()
-
Return true if the column is editable.
Returns:
- Type
- Boolean
-
isHidable()
-
Return true if the column should available in the table's show/hide context menu.
Defaults to true.Returns:
- Type
- Boolean
-
isReadonly()
-
Return true if the column is readonly.
Returns:
- Type
- Boolean
-
isSortable()
-
Returns a boolean indicating whether the column should not be sortable via the table headings.
Defaults to true.Returns:
- Type
- Boolean
-
isUnseen()
-
Return true if the column is unseen.
Returns:
- Type
- Boolean
-
setEditable(editable)
-
Set or unset the column's
EDITABLE
flag. Emits aflagsChanged
event.Parameters:
Name Type Description editable
boolean -
setFlags(flags)
-
Set the column's flags.
Parameters:
Name Type Description flags
Number Throws:
-
if a non-Number given
- Type
- Error
-
-
setHidable(hidable)
-
Set or unset whether the column should be allowed to be hidden or shown by the table's
show/hide context menu.Parameters:
Name Type Description hidable
boolean -
setReadonly(readonly)
-
Set or unset the column's
READONLY
flag. Emits aflagsChanged
event.Parameters:
Name Type Description readonly
boolean -
setSortable(sortable)
-
Set or unset whether the column should be allowed to be sorted by the table heading.
Parameters:
Name Type Description sortable
boolean -
setUnseen(unseen)
-
Set or unset the column's
UNSEEN
flag. Emits aflagsChanged
event.Parameters:
Name Type Description unseen
boolean -
toDisplayName()
-
Resolves a display name for this column.
Returns:
promise to be resolved when the element's display name
has been fully built. It's also acceptable for overrides of this function
to complete synchronously without returning a promise, so be sure to wrap
calls to this function inPromise.resolve()
when appropriate.- Type
- Promise | *