@API(type=INTERNAL, src=PUBLIC) public class ButtonEditor extends AbstractInplaceEditor implements InplaceRenderer
Modifier and Type | Field and Description |
---|---|
protected static ro.sync.exml.MessageBundle |
messages
The messages resource bundle.
|
Constructor and Description |
---|
ButtonEditor()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
cancelEditing()
Cancels the editing process.
|
void |
commitValue()
Commit the given value inside the document without stopping the editing.
|
CursorType |
getCursorType(AuthorInplaceContext context,
int x,
int y)
Get a cursor to be used when the user hovers with the mouse over this renderer.
|
CursorType |
getCursorType(int x,
int y)
Get a cursor to be used when the user hovers with the mouse over this renderer.
|
java.lang.String |
getDescription() |
java.lang.Object |
getEditorComponent(AuthorInplaceContext context,
Rectangle allocation,
Point mouseLocation)
Prepare and return the editor component.
|
java.lang.Object |
getRendererComponent(AuthorInplaceContext context)
Initialize the renderer with the given context and returns the component.
|
RendererLayoutInfo |
getRenderingInfo(AuthorInplaceContext context)
Returns the rendering layout info.
|
Rectangle |
getScrollRectangle()
Returns a rectangle that should be made visible after the editor is shown.
|
java.lang.String |
getTooltipText(AuthorInplaceContext context,
int x,
int y)
Gets a tooltip text to be presented when the cursor is over this renderer.
|
java.lang.Object |
getValue()
Gets the value that the user entered.
|
void |
refresh(AuthorInplaceContext context)
While this editor is inside an editing session a document change was detected
that didn't originated form this editor.
|
void |
requestFocus()
Requests focus inside the editing component.
|
void |
stopEditing()
Stops the editing and commits the current value.
|
addEditingListener, fireCommitValue, fireEditingCanceled, fireEditingOccured, fireEditingStopped, fireNextEditLocationRequested, firePreviousEditLocationRequested, getBoolean, insertContent, removeEditingListener
protected static final ro.sync.exml.MessageBundle messages
public java.lang.Object getRendererComponent(AuthorInplaceContext context)
InplaceRenderer
getRendererComponent
in interface InplaceRenderer
context
- The editing context.InplaceRenderer.getRendererComponent(ro.sync.ecss.extensions.api.editor.AuthorInplaceContext)
public RendererLayoutInfo getRenderingInfo(AuthorInplaceContext context)
InplaceRenderer
getRenderingInfo
in interface InplaceRenderer
context
- The editing context.InplaceRenderer.getRenderingInfo(ro.sync.ecss.extensions.api.editor.AuthorInplaceContext)
public java.lang.Object getEditorComponent(AuthorInplaceContext context, Rectangle allocation, Point mouseLocation)
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.mouseLocation
- 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 void requestFocus()
InplaceEditor
requestFocus
in interface InplaceEditor
InplaceEditor.requestFocus()
public java.lang.Object getValue()
InplaceEditor
getValue
in interface InplaceEditor
InplaceEditor.getValue()
public 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 void commitValue()
InplaceEditor
commitValue
in interface InplaceEditor
commitValue
in class AbstractInplaceEditor
InplaceEditor.commitValue()
public void cancelEditing()
InplaceEditor
InplaceEditingListener.editingCanceled()
.cancelEditing
in interface InplaceEditor
InplaceEditor.cancelEditing()
public java.lang.String getDescription()
getDescription
in interface Extension
Extension.getDescription()
public Rectangle getScrollRectangle()
InplaceEditor
getScrollRectangle
in interface InplaceEditor
null
to make the entire editor
visible.InplaceEditor.getScrollRectangle()
public java.lang.String getTooltipText(AuthorInplaceContext context, int x, int y)
InplaceRenderer
getTooltipText
in interface InplaceRenderer
context
- The editing context.x
- The x coordinate relative to the renderer bounds.y
- The y coordinate relative to the renderer bounds.null
if no tooltip.InplaceRenderer.getTooltipText(ro.sync.ecss.extensions.api.editor.AuthorInplaceContext, int, int)
public CursorType getCursorType(AuthorInplaceContext context, int x, int y)
InplaceRenderer
getCursorType
in interface InplaceRenderer
context
- The editing context. Useful if the renderer is a more complex one,
like a text field with an associated button and wants to provide different
cursors when the cursor is over the textfield or over the button. In this case
the renderer will have to initialize itself with this context in order to
decide what the cursor is hovering.x
- The x coordinate relative to the renderer bounds.y
- The y coordinate relative to the renderer bounds.null
to let the viewport decide.InplaceRenderer.getCursorType(ro.sync.ecss.extensions.api.editor.AuthorInplaceContext, int, int)
public CursorType getCursorType(int x, int y)
InplaceRenderer
InplaceRenderer.getCursorType(AuthorInplaceContext, int, int)
as
you can use the provided context to get additional information.getCursorType
in interface InplaceRenderer
x
- The x coordinate relative to the renderer bounds.y
- The y coordinate relative to the renderer bounds.null
to let the viewport decide.InplaceRenderer.getCursorType(int, int)
public void refresh(AuthorInplaceContext context)
InplaceEditor
this editor edits an attribute and the same attribute was externally modified. In this situation is recommended for the editor to update the current value.
refresh
in interface InplaceEditor
refresh
in class AbstractInplaceEditor
context
- An updated editing context for this editor.InplaceEditor.refresh(ro.sync.ecss.extensions.api.editor.AuthorInplaceContext)
© Copyright SyncRO Soft SRL 2002 - 2016. All rights reserved.