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.dita.topic.table.simpletable.InsertColumnOperation
- All Implemented Interfaces:
AuthorOperation
,Extension
,InsertTableCellsContentConstants
,SimpleTableConstants
- Direct Known Subclasses:
InsertSingleColumnOperation
@API(type=INTERNAL,
src=PUBLIC)
public class InsertColumnOperation
extends InsertColumnOperationBase
implements SimpleTableConstants, InsertTableCellsContentConstants
Operation used to insert one or more DITA simple table columns.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String
The fragment that must be introduced in the table cellsFields 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.InsertTableCellsContentConstants
CELL_FRAGMENT_ARGUMENT, CELL_FRAGMENT_ARGUMENT_IN_ARRAY, CELL_FRAGMENT_ARGUMENT_NAME
Fields inherited from interface ro.sync.ecss.extensions.dita.topic.table.simpletable.SimpleTableConstants
ATTRIBUTE_NAME_ID, ELEMENT_NAME_CHDESC_CHOICETABLE, ELEMENT_NAME_CHDESCHD_CHOICETABLE, ELEMENT_NAME_CHOICETABLE, ELEMENT_NAME_CHOPTION_CHOICETABLE, ELEMENT_NAME_CHOPTIONHD_CHOICETABLE, ELEMENT_NAME_ENTRY_SIMPLETABLE, ELEMENT_NAME_HEADER_CHOICETABLE, ELEMENT_NAME_HEADER_PROPERTIES, ELEMENT_NAME_HEADER_SIMPLETABLE, ELEMENT_NAME_PROPDESC_PROPERTIES, ELEMENT_NAME_PROPDESCHD_PROPERTIES, ELEMENT_NAME_PROPERTIES, ELEMENT_NAME_PROPTYPE_PROPERTIES, ELEMENT_NAME_PROPTYPEHD_PROPERTIES, ELEMENT_NAME_PROPVALUE_PROPERTIES, ELEMENT_NAME_PROPVALUEHD_PROPERTIES, ELEMENT_NAME_ROW_CHOICETABLE, ELEMENT_NAME_ROW_PROPERTIES, ELEMENT_NAME_ROW_SIMPLETABLE, ELEMENT_NAME_SIMPLETABLE
-
Constructor Summary
ConstructorsModifierConstructorDescriptionConstructor.protected
InsertColumnOperation
(AuthorTableHelper documentTypeHelper) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doOperationInternal
(AuthorAccess authorAccess, ArgumentsMap args) Perform the actual operation.protected String
getCellElementName
(AuthorElement rowElement, int newColumnIndex) Get the name of the element that will be inserted as a cell into the table.protected String
Get the default content that must be introduced in empty cells.protected void
updateColumnCellsSpan
(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tableElem, int newColumnIndex, TableColumnSpecificationInformation columnSpecification, 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
getDescription, insertColumns, insertColumns, performInsertColumn, removeMultipleInsertionDescriptor
Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
createEmptyCell, doOperation, findCellInsertionOffset, getElementAncestor, isElement, isTableElement
-
Field Details
-
cellContent
The fragment that must be introduced in the table cells
-
-
Constructor Details
-
InsertColumnOperation
public InsertColumnOperation()Constructor. -
InsertColumnOperation
Constructor.- Parameters:
documentTypeHelper
- Document type helper, has methods specific to a document type.
-
-
Method Details
-
doOperationInternal
protected void doOperationInternal(AuthorAccess authorAccess, ArgumentsMap args) throws AuthorOperationException Description copied from class:AbstractTableOperation
Perform the actual operation.- Overrides:
doOperationInternal
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.args
- The map of arguments. All the arguments defined by methodAuthorOperation.getArguments()
must be present in the map of arguments.- Throws:
AuthorOperationException
- Thrown when the operation fails.- See Also:
-
getCellElementName
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:
-
getDefaultContentForEmptyCells
Description copied from class:InsertColumnOperationBase
Get the default content that must be introduced in empty cells.- Overrides:
getDefaultContentForEmptyCells
in classInsertColumnOperationBase
- Returns:
- The default content that must be introduced in empty cells.
Default:
null
. - See Also:
-
getArguments
- Specified by:
getArguments
in interfaceAuthorOperation
- Overrides:
getArguments
in classInsertColumnOperationBase
- Returns:
- An array of
ArgumentDescriptor
representing the arguments this operation uses. - See Also:
-
updateColumnCellsSpan
protected void updateColumnCellsSpan(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tableElem, int newColumnIndex, TableColumnSpecificationInformation columnSpecification, 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:
-