|
Oxygen XML Editor 14.2 Author API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object ro.sync.ecss.extensions.api.editor.AbstractInplaceEditorWrapper
@API(type=EXTENDABLE, src=PUBLIC) public abstract class AbstractInplaceEditorWrapper
It can be used when more than one editor types are needed depending on the received context and it can choose at runtime an appropriate editor implementation. For example if in the CSS oxy_editor() function we have a test parameter with more possible values and we must provide a different editor implementation for each one.
Please note that this API is not marked as final and it can change in one of the next versions of the application. If you have suggestions, comments about it, please let us know.
Constructor Summary | |
---|---|
AbstractInplaceEditorWrapper()
|
Method Summary | |
---|---|
void |
addEditingListener(InplaceEditingListener editingListener)
Adds a listener to receive edit notifications: - InplaceEditingListener.editingCanceled() to remove the editor and
cancel the edit operation. |
void |
cancelEditing()
Cancels the editing process. |
protected abstract InplaceEditor |
createEditor(AuthorInplaceContext context)
Depending of the received context, create an editor. |
java.lang.String |
getDescription()
|
java.lang.Object |
getEditorComponent(AuthorInplaceContext context,
Rectangle allocation,
Point mouseInvocationLocation)
Prepare and return the editor component. |
Rectangle |
getScrollRectangle()
Returns a rectangle that should be made visible after the editor is shown. |
java.lang.Object |
getValue()
Gets the value that the user entered. |
void |
removeEditingListener(InplaceEditingListener editingListener)
Removes a listener that receives editing events. |
void |
requestFocus()
Requests focus inside the editing component. |
void |
stopEditing()
Stops the editing and commits the current value. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AbstractInplaceEditorWrapper()
Method Detail |
---|
public java.lang.String getDescription()
getDescription
in interface Extension
Extension.getDescription()
protected abstract InplaceEditor createEditor(AuthorInplaceContext context)
context
- Editing context.
public final java.lang.Object getEditorComponent(AuthorInplaceContext context, Rectangle allocation, Point mouseInvocationLocation)
InplaceEditor
getEditorComponent
in interface InplaceEditor
context
- The context where the editor will be used.allocation
- The bounds where the editor will be shown. This is normally
the bounds of the box in which the value being edited is rendered. If the
editor requires to be presented in different bounds it should alter this parameter.
The X,Y coordinates are relative to the parent in which the editor will be added.mouseInvocationLocation
- if the editor was requested using the mouse this
parameter represents the X,Y location where the event took place. It is relative to the parent
in which the editor will be added. null
if the editor wasn't requested through
mouse interaction.
InplaceEditor.requestFocus()
call).
KeyListener
for handling key events like: ENTER to stop editing
(by calling InplaceEditingListener.editingStopped(EditingEvent)
)
and ESCAPE to cancel it (by calling InplaceEditingListener.editingCanceled()
).FocusListener
to stop editing when the focus is given to a component that is not
part of the editor (by calling InplaceEditingListener.editingStopped(EditingEvent)
).DocumentListener
to fire InplaceEditingListener.editingOccured()
events (If the editor has a document).InplaceEditor.getEditorComponent(ro.sync.ecss.extensions.api.editor.AuthorInplaceContext, ro.sync.exml.view.graphics.Rectangle, ro.sync.exml.view.graphics.Point)
public final Rectangle getScrollRectangle()
InplaceEditor
getScrollRectangle
in interface InplaceEditor
null
to make the entire editor
visible.InplaceEditor.getScrollRectangle()
public final void addEditingListener(InplaceEditingListener editingListener)
InplaceEditor
InplaceEditingListener.editingCanceled()
to remove the editor and
cancel the edit operation.
- InplaceEditingListener.editingOccured()
to signal modification in
the editor. This event marks the editor as dirty and it's value will be
committed when a InplaceEditingListener.editingStopped(EditingEvent)
is received.
- InplaceEditingListener.editingStopped(EditingEvent)
to end editing
and commit it's value if needed. The value is usually committed ONLY if
a InplaceEditingListener.editingOccured()
was fired. See
InplaceEditingListener.editingStopped(EditingEvent)
for more information.
addEditingListener
in interface InplaceEditor
editingListener
- Editing listener.InplaceEditor.addEditingListener(ro.sync.ecss.extensions.api.editor.InplaceEditingListener)
public final void requestFocus()
InplaceEditor
requestFocus
in interface InplaceEditor
InplaceEditor.requestFocus()
public final java.lang.Object getValue()
InplaceEditor
getValue
in interface InplaceEditor
InplaceEditor.getValue()
public final void stopEditing()
InplaceEditor
InplaceEditingListener.editingStopped(EditingEvent)
.
OBS: The current value will be committed only if at least one
InplaceEditingListener.editingOccured()
event was issued before this moment.
stopEditing
in interface InplaceEditor
InplaceEditor.stopEditing()
public final void cancelEditing()
InplaceEditor
InplaceEditingListener.editingCanceled()
.
cancelEditing
in interface InplaceEditor
InplaceEditor.cancelEditing()
public final void removeEditingListener(InplaceEditingListener editingListener)
InplaceEditor
removeEditingListener
in interface InplaceEditor
editingListener
- Editing listener.InplaceEditor.removeEditingListener(ro.sync.ecss.extensions.api.editor.InplaceEditingListener)
|
Oxygen XML Editor 14.2 Author API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |