@API(type=EXTENDABLE,
src=PUBLIC)
public interface AuthorSchemaAwareEditingHandler
InvalidEditException
.
It is recommended to extend class AuthorSchemaAwareEditingHandlerAdapter
in order to be protected from any
API additions that may occur in interface AuthorSchemaAwareEditingHandler
.
Modifier and Type | Field and Description |
---|---|
static int |
ACTION_ID_BACKSPACE
Delete action through backspace key.
|
static int |
ACTION_ID_CUT
Cut action.
|
static int |
ACTION_ID_DELETE
Delete action through delete key.
|
static int |
ACTION_ID_DND
DND action.
|
static int |
ACTION_ID_INSERT_FRAGMENT
Insert document fragment action by an action other than PASTE or DND.
|
static int |
ACTION_ID_PASTE
Paste action.
|
static int |
ACTION_ID_TYPING
Typing action.
|
static int |
CREATE_FRAGMENT_PURPOSE_COPY
Create a fragment for copy.
|
static int |
CREATE_FRAGMENT_PURPOSE_CUT
Create a fragment for cut.
|
static int |
CREATE_FRAGMENT_PURPOSE_DND_COPY
Create a fragment for DND copy.
|
static int |
CREATE_FRAGMENT_PURPOSE_DND_MOVE
Create a fragment for DND move.
|
Modifier and Type | Method and Description |
---|---|
AuthorDocumentFragment |
handleCreateDocumentFragment(int startOffset,
int endOffset,
int creationPurposeID,
AuthorAccess authorAccess)
Create an AuthorDocumentFragment for a purpose
|
boolean |
handleDelete(int offset,
int deleteType,
AuthorAccess authorAccess,
boolean wordLevel)
Handle a keyboard delete event at the given offset (using Delete or Backspace keys) in the Author edit area.
|
boolean |
handleDeleteElementTags(AuthorNode nodeToUnwrap,
AuthorAccess authorAccess)
Handle delete element tags event.
|
boolean |
handleDeleteNodes(AuthorNode[] nodes,
int deleteType,
AuthorAccess authorAccess)
Handle a delete nodes event coming from the Outline or Bread crumb.
|
boolean |
handleDeleteSelection(int selectionStart,
int selectionEnd,
int generatedByActionId,
AuthorAccess authorAccess)
Handle a delete selection event in the Author edit area.
|
boolean |
handleJoinElements(AuthorNode targetNode,
java.util.List<AuthorNode> nodesToJoin,
AuthorAccess authorAccess)
Handle a join event between the given nodes.
|
boolean |
handlePasteFragment(int offset,
AuthorDocumentFragment[] fragmentsToInsert,
int actionId,
AuthorAccess authorAccess)
Handle an insert fragment event generated by:
a Paste action.
|
boolean |
handleTyping(int offset,
char ch,
AuthorAccess authorAccess)
Handle a typing event.
|
boolean |
handleTypingFallback(int offset,
char ch,
AuthorAccess authorAccess)
Give a fallback solution for a typing event.
|
static final int ACTION_ID_TYPING
static final int ACTION_ID_DELETE
static final int ACTION_ID_BACKSPACE
static final int ACTION_ID_PASTE
static final int ACTION_ID_CUT
static final int ACTION_ID_DND
static final int ACTION_ID_INSERT_FRAGMENT
static final int CREATE_FRAGMENT_PURPOSE_COPY
static final int CREATE_FRAGMENT_PURPOSE_CUT
static final int CREATE_FRAGMENT_PURPOSE_DND_COPY
static final int CREATE_FRAGMENT_PURPOSE_DND_MOVE
boolean handleDelete(int offset, int deleteType, AuthorAccess authorAccess, boolean wordLevel) throws InvalidEditException
offset
- Offset where the delete event happened.deleteType
- ACTION_ID_DELETE
if Delete key was used or ACTION_ID_BACKSPACE
for Backspace.authorAccess
- Access class to the author functions.wordLevel
- true
if the user requested a delete for a whole word.true
if the event was handled.InvalidEditException
- This is an invalid edit and must be rejected.boolean handleDeleteNodes(AuthorNode[] nodes, int deleteType, AuthorAccess authorAccess) throws InvalidEditException
nodes
- The nodes to delete.deleteType
- ACTION_ID_DELETE
if the nodes were deleted directly by the user or ACTION_ID_DND
if the nodes were deleted as a result of a drag and drop move operation in the Outline.authorAccess
- Access class to the author functions.true
if the event was handled.InvalidEditException
- This is an invalid edit and must be rejected.boolean handleDeleteSelection(int selectionStart, int selectionEnd, int generatedByActionId, AuthorAccess authorAccess) throws InvalidEditException
selectionStart
- Selection start offset.selectionEnd
- Selection end offset.generatedByActionId
- An id identifying the action that generated this event. One of the following constants are possible:
ACTION_ID_TYPING, ACTION_ID_DELETE, ACTION_ID_PASTE, ACTION_ID_CUT, ACTION_ID_DND, ACTION_ID_INSERT_FRAGMENT.authorAccess
- Access class to the author functions.true
if the event was handled.InvalidEditException
- This is an invalid edit and must be rejected.boolean handlePasteFragment(int offset, AuthorDocumentFragment[] fragmentsToInsert, int actionId, AuthorAccess authorAccess) throws InvalidEditException
AuthorDocumentController.insertXMLFragmentSchemaAware(String, int)
. Selection removal is handled
before calling this method.offset
- Offset where the event occurred.fragmentsToInsert
- Fragments to be inserted.actionId
- ACTION_ID_PASTE if event was generated by paste action, ACTION_ID_DND if it was generated by
a DND event or ACTION_ID_INSERT_FRAGMENT if the event was generated by an AuthorDocumentController
schema aware insert method.authorAccess
- Access class to the author functions.true
if the insertion was handled.InvalidEditException
- This is an invalid edit and must be rejected.boolean handleTyping(int offset, char ch, AuthorAccess authorAccess) throws InvalidEditException
handleTypingFallback(int, char, AuthorAccess)
will get called.offset
- Offset where the typing occurred.ch
- The typed character.authorAccess
- Access class to the author functions.true
if the typing was handled.InvalidEditException
- This is an invalid edit and must be rejected.boolean handleTypingFallback(int offset, char ch, AuthorAccess authorAccess) throws InvalidEditException
handleTyping(int, char, AuthorAccess)
method did not handle the
typing event and neither did the handleTyping(int, char, AuthorAccess)
from
the default implementation.
As a fallback solution, a paragraph can be inserted at the given offset (if allowed) and then the typed character can be inserted inside it.
offset
- Offset where the typing occurred.ch
- The typed character.authorAccess
- Access class to the author functions.true
if the typing was handled.InvalidEditException
- This is an invalid edit and must be rejected.boolean handleDeleteElementTags(AuthorNode nodeToUnwrap, AuthorAccess authorAccess) throws InvalidEditException
nodeToUnwrap
- The node to delete element tags.authorAccess
- Access class to the author functions.true
if the event was handled.InvalidEditException
- This is an invalid edit and must be rejected.boolean handleJoinElements(AuthorNode targetNode, java.util.List<AuthorNode> nodesToJoin, AuthorAccess authorAccess) throws InvalidEditException
targetNode
- The node where the content of the other nodes must migrate.nodesToJoin
- The nodes that must be joined in the target node.authorAccess
- Access class to the author functions.true
if the event was handled.InvalidEditException
- This is an invalid edit and must be rejected.AuthorDocumentFragment handleCreateDocumentFragment(int startOffset, int endOffset, int creationPurposeID, AuthorAccess authorAccess) throws javax.swing.text.BadLocationException
authorAccess
- Access to the Author API.startOffset
- Start offset of fragmentendOffset
- End offset of fragmentcreationPurposeID
- One of the CREATE_FRAGMENT_* constants in this class.javax.swing.text.BadLocationException
© Copyright SyncRO Soft SRL 2002 - 2016. All rights reserved.