Oxygen XML Editor 14.2 Author API

ro.sync.ecss.extensions.dita.topic.table.simpletable
Class InsertColumnOperation

java.lang.Object
  extended by ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
      extended by ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
          extended by ro.sync.ecss.extensions.dita.topic.table.simpletable.InsertColumnOperation
All Implemented Interfaces:
AuthorOperation, Extension, InsertTableCellsContentConstants, SimpleTableConstants

@API(type=INTERNAL,
     src=PUBLIC)
public class InsertColumnOperation
extends InsertColumnOperationBase
implements SimpleTableConstants, InsertTableCellsContentConstants

Operation used to insert a DITA simple table column.


Field Summary
protected  java.lang.String cellContent
          The fragment that must be introduced in the table cells
 
Fields inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
tableHelper
 
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
 
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.api.AuthorOperation
NAMESPACE_ARGUMENT, NAMESPACE_ARGUMENT_DESCRIPTOR, SCHEMA_AWARE_ARGUMENT, SCHEMA_AWARE_ARGUMENT_DESCRIPTOR
 
Constructor Summary
  InsertColumnOperation()
          Constructor.
protected InsertColumnOperation(AuthorTableHelper documentTypeHelper)
          Constructor.
 
Method Summary
 void doOperation(AuthorAccess authorAccess, ArgumentsMap args)
          Perform the actual operation.
 ArgumentDescriptor[] getArguments()
           
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  java.lang.String getDefaultContentForEmptyCells()
          Get the default content that must be introduced in empty cells.
protected  void updateColumnCellsSpan(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tableElem, int newColumnIndex, TableColumnSpecificationInformation columnSpecification, java.lang.String namespace)
          Increments the column span of the cells intersecting the new column.
 
Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
getDescription, performInsertColumn
 
Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
createEmptyCell, findCellInsertionOffset, getElementAncestor, isElement, isTableElement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cellContent

protected java.lang.String cellContent
The fragment that must be introduced in the table cells

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

doOperation

public void doOperation(AuthorAccess authorAccess,
                        ArgumentsMap args)
                 throws java.lang.IllegalArgumentException,
                        AuthorOperationException
Description copied from interface: AuthorOperation
Perform the actual operation. You can check if the operation was invoked from the oXygen standalone application or from the oXygen plugin for Eclipse by using the method: Workspace.isStandalone(). To get to the Workspace you may use: AuthorAccess.getWorkspaceAccess().

Specified by:
doOperation in interface AuthorOperation
Overrides:
doOperation in class InsertColumnOperationBase
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 method AuthorOperation.getArguments() must be present in the map of arguments.
Throws:
java.lang.IllegalArgumentException - Thrown when one or more arguments are illegal.
AuthorOperationException - Thrown when the operation fails.
See Also:
InsertColumnOperationBase.doOperation(ro.sync.ecss.extensions.api.AuthorAccess, ro.sync.ecss.extensions.api.ArgumentsMap)

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 class InsertColumnOperationBase
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)

getDefaultContentForEmptyCells

protected java.lang.String getDefaultContentForEmptyCells()
Description copied from class: InsertColumnOperationBase
Get the default content that must be introduced in empty cells.

Overrides:
getDefaultContentForEmptyCells in class InsertColumnOperationBase
Returns:
The default content that must be introduced in empty cells. Default: null.
See Also:
InsertColumnOperationBase.getDefaultContentForEmptyCells()

getArguments

public ArgumentDescriptor[] getArguments()
Specified by:
getArguments in interface AuthorOperation
Overrides:
getArguments in class InsertColumnOperationBase
Returns:
An array of ArgumentDescriptor representing the arguments this operation uses.
See Also:
InsertColumnOperationBase.getArguments()

updateColumnCellsSpan

protected void updateColumnCellsSpan(AuthorAccess authorAccess,
                                     AuthorTableCellSpanProvider tableSupport,
                                     AuthorElement tableElem,
                                     int newColumnIndex,
                                     TableColumnSpecificationInformation columnSpecification,
                                     java.lang.String namespace)
                              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 class InsertColumnOperationBase
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.
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)

Oxygen XML Editor 14.2 Author API

© Copyright SyncRO Soft SRL 2002 - 2013. All rights reserved.