Class InsertColumnOperation
- java.lang.Object
-
- ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
-
- ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
-
- ro.sync.ecss.extensions.commons.table.operations.xhtml.InsertColumnOperation
-
- All Implemented Interfaces:
AuthorOperation
,Extension
,XHTMLConstants
- Direct Known Subclasses:
InsertSingleColumnOperation
@API(type=INTERNAL, src=PUBLIC) public class InsertColumnOperation extends InsertColumnOperationBase implements XHTMLConstants
Operation used to insert one or more XHTML table columns.
-
-
Field Summary
-
Fields inherited from class ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
INSERT_MULTIPLE_COLUMNS_ARGUMENT_DESCRIPTOR, POSITION_ARGUMENT, POSITION_ARGUMENT_DESCRIPTOR
-
Fields inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
CHANGE_TRACKING_BEHAVIOR_ARGUMENT, TABLE_INFO_ARGUMENT_DESCRIPTOR, TABLE_INFO_ARGUMENT_NAME, tableHelper
-
Fields inherited from interface ro.sync.ecss.extensions.api.AuthorOperation
NAMESPACE_ARGUMENT, NAMESPACE_ARGUMENT_DESCRIPTOR, SCHEMA_AWARE_ARGUMENT, SCHEMA_AWARE_ARGUMENT_DESCRIPTOR
-
Fields inherited from interface ro.sync.ecss.extensions.commons.table.operations.xhtml.XHTMLConstants
ATTRIBUTE_NAME_COLSPAN, ATTRIBUTE_NAME_ID, ATTRIBUTE_NAME_ROWSPAN, ATTRIBUTE_NAME_XML_ID, ELEMENT_NAME_INFORMALTABLE, ELEMENT_NAME_TABLE, ELEMENT_NAME_TD, ELEMENT_NAME_TH, ELEMENT_NAME_TR
-
-
Constructor Summary
Constructors Modifier Constructor Description InsertColumnOperation()
Constructor.protected
InsertColumnOperation(AuthorTableHelper documentTypeHelper)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
getCellElementName(AuthorElement rowElement, int newColumnIndex)
Get the name of the element that will be inserted as a cell into the table.protected void
updateColumnCellsSpan(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tableElem, int newColumnIndex, TableColumnSpecificationInformation columnSpecification, java.lang.String namespace, int noOfColumnsToBeInserted)
Increments the column span of the cells intersecting the new column.-
Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
doOperationInternal, getArguments, getDefaultContentForEmptyCells, getDescription, insertColumns, insertColumns, performInsertColumn, removeMultipleInsertionDescriptor
-
Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
createEmptyCell, doOperation, findCellInsertionOffset, getElementAncestor, isElement, isTableElement
-
-
-
-
Constructor Detail
-
InsertColumnOperation
public InsertColumnOperation()
Constructor.
-
InsertColumnOperation
protected InsertColumnOperation(AuthorTableHelper documentTypeHelper)
Constructor.- Parameters:
documentTypeHelper
- Document type helper, has methods specific to a document type.
-
-
Method Detail
-
getCellElementName
protected java.lang.String getCellElementName(AuthorElement rowElement, int newColumnIndex)
Description copied from class:InsertColumnOperationBase
Get the name of the element that will be inserted as a cell into the table.- Specified by:
getCellElementName
in classInsertColumnOperationBase
- Parameters:
rowElement
- The row element where the new cell will be inserted.newColumnIndex
- The new column index. 0 based.- Returns:
- The name of cell element.
- See Also:
InsertColumnOperationBase.getCellElementName(ro.sync.ecss.extensions.api.node.AuthorElement, int)
-
updateColumnCellsSpan
protected void updateColumnCellsSpan(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tableElem, int newColumnIndex, TableColumnSpecificationInformation columnSpecification, java.lang.String namespace, int noOfColumnsToBeInserted) throws AuthorOperationException
Description copied from class:InsertColumnOperationBase
Increments the column span of the cells intersecting the new column. A cell intersects the column to insert if its start column index is less than the new column index and the end column index of the cell is greater or equal than the new column(startColSpan < newColumnIndex && endColSpan >= newColumnIndex)
.- Overrides:
updateColumnCellsSpan
in classInsertColumnOperationBase
- Parameters:
authorAccess
- The author access. Provides access to specific informations and actions for editor, document, workspace, tables, change tracking, utility a.s.o.tableSupport
- The table cell span provider.tableElem
- The table element.newColumnIndex
- The index of the column to insert.columnSpecification
- The table column specification data.namespace
- The namespace to be used.noOfColumnsToBeInserted
- The number of columns to be inserted.- Throws:
AuthorOperationException
- When the insertion fails.- See Also:
InsertColumnOperationBase.updateColumnCellsSpan(ro.sync.ecss.extensions.api.AuthorAccess, ro.sync.ecss.extensions.api.AuthorTableCellSpanProvider, ro.sync.ecss.extensions.api.node.AuthorElement, int, ro.sync.ecss.extensions.api.table.operations.TableColumnSpecificationInformation, java.lang.String, int)
-
-