Class SimpleTableSortOperation
- java.lang.Object
-
- ro.sync.ecss.extensions.commons.sort.SortOperation
-
- ro.sync.ecss.extensions.commons.sort.TableSortOperation
-
- ro.sync.ecss.extensions.commons.sort.SimpleTableSortOperation
-
- All Implemented Interfaces:
AuthorOperation
,Extension
- Direct Known Subclasses:
DITASimpleTableSortOperation
,TEITableSortOperation
@API(type=INTERNAL, src=PUBLIC) public abstract class SimpleTableSortOperation extends TableSortOperation
Sort operation for simple tables
-
-
Field Summary
-
Fields inherited from class ro.sync.ecss.extensions.commons.sort.SortOperation
authorAccess, COLUMN
-
Fields inherited from interface ro.sync.ecss.extensions.api.AuthorOperation
NAMESPACE_ARGUMENT, NAMESPACE_ARGUMENT_DESCRIPTOR, SCHEMA_AWARE_ARGUMENT, SCHEMA_AWARE_ARGUMENT_DESCRIPTOR
-
-
Constructor Summary
Constructors Constructor Description SimpleTableSortOperation()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected boolean
forceSortAll()
protected int
getRowIndexForTableBody(AuthorNode table)
Returns the visual row index of the actual table body if the table has separate head, foot element and table group elements.java.util.List<CriterionInformation>
getSortCriteria(AuthorElement parent)
Obtain the sort criterion.java.lang.String[]
getSortKeysValues(AuthorNode node, SortCriteriaInformation sortInfo)
Obtain the values of the keys that can be used for sorting.AuthorElement
getSortParent(int offset, AuthorAccess authorAccess)
Get the table element whose rows will be sorted.boolean
isCaretInColumn(AuthorAccess authorAccess, int columnNumber)
Checks if the caret is in a cell which is in the given column.abstract boolean
isHeadElement(AuthorElement node)
Returnstrue
if the given node is the table header element.boolean
isIgnored(AuthorNode node)
Checks if a given node is ignored when sorting.abstract boolean
isRowElement(AuthorElement node)
Returnstrue
if the given node is a table row.abstract boolean
isTableElement(AuthorElement node)
Returntrue
if the given node is the table element.-
Methods inherited from class ro.sync.ecss.extensions.commons.sort.TableSortOperation
canBeSorted, getHelpPageID
-
Methods inherited from class ro.sync.ecss.extensions.commons.sort.SortOperation
doOperation, getArguments, getDescription, getNonIgnoredChildren, getSelectedNonIgnoredChildrenInterval, getTextContentToSort
-
-
-
-
Method Detail
-
getSortParent
public AuthorElement getSortParent(int offset, AuthorAccess authorAccess) throws AuthorOperationException
Get the table element whose rows will be sorted.- Specified by:
getSortParent
in classSortOperation
- Parameters:
offset
- The offset where the operation was invoked.authorAccess
- TheAuthorAccess
.- Returns:
- The parent node of the nodes which will be sorted.
- Throws:
AuthorOperationException
- See Also:
SortOperation.getSortParent(int, ro.sync.ecss.extensions.api.AuthorAccess)
-
isIgnored
public boolean isIgnored(AuthorNode node)
Description copied from class:SortOperation
Checks if a given node is ignored when sorting.- Specified by:
isIgnored
in classSortOperation
- Parameters:
node
- The node to be checked.- Returns:
true
if the given node is ignored when sorting.- See Also:
SortOperation.isIgnored(ro.sync.ecss.extensions.api.node.AuthorNode)
-
getSortKeysValues
public java.lang.String[] getSortKeysValues(AuthorNode node, SortCriteriaInformation sortInfo) throws AuthorOperationException
Description copied from class:SortOperation
Obtain the values of the keys that can be used for sorting.- Specified by:
getSortKeysValues
in classSortOperation
- Parameters:
node
- The element which will be sorted.sortInfo
- The sort information corresponding to the user choice.- Returns:
- an array containing the values of the keys which can be used for sorting.
- Throws:
AuthorOperationException
- If the text content cannot be obtained.- See Also:
SortOperation.getSortKeysValues(AuthorNode, SortCriteriaInformation)
-
getSortCriteria
public java.util.List<CriterionInformation> getSortCriteria(AuthorElement parent) throws AuthorOperationException
Description copied from class:SortOperation
Obtain the sort criterion.- Specified by:
getSortCriteria
in classSortOperation
- Parameters:
parent
- The parent node of the nodes which will be sorted.- Returns:
- A
SortCriteriaInformation
containing theCriterionInformation
objects. - Throws:
AuthorOperationException
- See Also:
SortOperation.getSortCriteria(ro.sync.ecss.extensions.api.node.AuthorElement)
-
forceSortAll
protected boolean forceSortAll()
- Overrides:
forceSortAll
in classSortOperation
- Returns:
true
if the sort operation should not use the selected element and should always sort all elements.- See Also:
SortOperation.forceSortAll()
-
isCaretInColumn
public boolean isCaretInColumn(AuthorAccess authorAccess, int columnNumber)
Checks if the caret is in a cell which is in the given column.- Parameters:
authorAccess
- The author access.columnNumber
- The number of the column in which to check.- Returns:
true
if the given column has a cell which contains the caret.
-
getRowIndexForTableBody
protected int getRowIndexForTableBody(AuthorNode table)
Description copied from class:TableSortOperation
Returns the visual row index of the actual table body if the table has separate head, foot element and table group elements.- Specified by:
getRowIndexForTableBody
in classTableSortOperation
- See Also:
TableSortOperation.getRowIndexForTableBody(ro.sync.ecss.extensions.api.node.AuthorNode)
-
isTableElement
public abstract boolean isTableElement(AuthorElement node)
Returntrue
if the given node is the table element.- Parameters:
node
- The node to be checked.- Returns:
true
if the given node is the table element.
-
isHeadElement
public abstract boolean isHeadElement(AuthorElement node)
Returnstrue
if the given node is the table header element.- Parameters:
node
- The node to be checked.- Returns:
true
if the given node is the table header.
-
isRowElement
public abstract boolean isRowElement(AuthorElement node)
Returnstrue
if the given node is a table row.- Parameters:
node
- The node to be checked.- Returns:
true
when the given node is a table row element.
-
-