Oxygen XML Editor 11.2 Author API

ro.sync.ecss.extensions.commons.table.operations
Class InsertColumnOperationBase

java.lang.Object
  extended by ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
      extended by ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
All Implemented Interfaces:
AuthorOperation, Extension
Direct Known Subclasses:
InsertColumnOperation, InsertColumnOperation, InsertColumnOperation, InsertColumnOperation, InsertColumnOperation

public abstract class InsertColumnOperationBase
extends AbstractTableOperation

Operation used to insert a table column.


Field Summary
 
Fields inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
tableHelper
 
Fields inherited from interface ro.sync.ecss.extensions.api.AuthorOperation
NAMESPACE_ARGUMENT, NAMESPACE_ARGUMENT_DESCRIPTOR, SCHEMA_AWARE_ARGUMENT, SCHEMA_AWARE_ARGUMENT_DESCRIPTOR
 
Constructor Summary
InsertColumnOperationBase(AuthorTableHelper documentTypeHelper)
          Constructor.
 
Method Summary
 void doOperation(AuthorAccess authorAccess, ArgumentsMap args)
          Perform the actual operation.
 ArgumentDescriptor[] getArguments()
           
protected abstract  String getCellElementName(AuthorElement rowElement, int newColumnIndex)
          Get the name of the element that will be inserted as a cell into the table.
 String getDescription()
          Get the description for this operation.
protected  void updateColumnCellsSpan(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tableElem, int newColumnIndex, String namespace)
          Increments the column span of the cells intersecting the new column.
 
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
 

Constructor Detail

InsertColumnOperationBase

public InsertColumnOperationBase(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 IllegalArgumentException,
                        AuthorOperationException
Description copied from interface: AuthorOperation
Perform the actual operation. This method is typically called from an ActionListener.actionPerformed(java.awt.event.ActionEvent) if used from Oxygen stand-alone distribution or org.eclipse.jface.action.Action#run() if used from the Oxygen Eclipse plugin.

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:
IllegalArgumentException - Thrown when one or more arguments are illegal.
AuthorOperationException - Thrown when the operation fails.
See Also:
AuthorOperation.doOperation(ro.sync.ecss.extensions.api.AuthorAccess, ro.sync.ecss.extensions.api.ArgumentsMap)

updateColumnCellsSpan

protected void updateColumnCellsSpan(AuthorAccess authorAccess,
                                     AuthorTableCellSpanProvider tableSupport,
                                     AuthorElement tableElem,
                                     int newColumnIndex,
                                     String namespace)
                              throws AuthorOperationException
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)).

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.
namespace - The namespace to be used.
Throws:
AuthorOperationException - When the insertion fails.

getArguments

public ArgumentDescriptor[] getArguments()
Returns:
An array of ArgumentDescriptor representing the arguments this operation uses.
See Also:
AuthorOperation.getArguments()

getDescription

public String getDescription()
Get the description for this operation.

Returns:
The description of the extension.
See Also:
Extension.getDescription()

getCellElementName

protected abstract String getCellElementName(AuthorElement rowElement,
                                             int newColumnIndex)
Get the name of the element that will be inserted as a cell into the table.

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.

Oxygen XML Editor 11.2 Author API

© Copyright SyncRO Soft SRL 2002 - 2010.