public class Copy extends CommandBase implements MacroRecorder.Copy
copy
.recordable, repeatable
Constructor and Description |
---|
Copy() |
Modifier and Type | Method and Description |
---|---|
protected String |
copyElement(Element element,
DocumentView docView,
String parameter) |
protected String |
copyNodeRange(Element element,
Node child1,
Node child2,
DocumentView docView,
String parameter) |
String |
copySelection(DocumentView docView,
String parameter) |
protected String |
copyTextRange(TextNode textNode1,
int offset1,
TextNode textNode2,
int offset2,
DocumentView docView,
String parameter) |
CommandResult |
doExecute(DocumentView docView,
String parameter,
int x,
int y)
Actually executes this command with specified parameter and in
specified context.
|
String |
getLastCopiedText()
Return text last copied to the clipboard by this command.
|
boolean |
prepare(DocumentView docView,
String parameter,
int x,
int y)
Tests whether this command can be executed with specified parameter
and in specified context.
|
doExecuteByName, execute, executeCommand, isRecordable, isRepeatable, prepareCommand
public boolean prepare(DocumentView docView, String parameter, int x, int y)
CommandBase
If the command can be executed, this method returns
true
after having configured its internal state for
consumption by method CommandBase.execute(com.xmlmind.xmledit.view.DocumentView, java.lang.String, int, int)
which should be invoked
immediately after this one.
Returns false
if this command cannot be executed with
specified parameter and in specified context.
prepare
in class CommandBase
docView
- the target of this commandparameter
- parameterizes the command (that is, modifies the
behavior of the command in a command specific way)x
- X position relative to docView of the mouse event
having triggered this command; -1 if this command was triggered by a
keyboard inputy
- Y position relative to docView of the mouse event
having triggered this command; -1 if this command was triggered by a
keyboard inputpublic CommandResult doExecute(DocumentView docView, String parameter, int x, int y)
CommandBase
This method assumes that CommandBase.prepare(com.xmlmind.xmledit.view.DocumentView, java.lang.String, int, int)
has been
successfully invoked immediately before its own invocation.
IMPORTANT: application code which executes a command
must always use CommandBase.execute(com.xmlmind.xmledit.view.DocumentView, java.lang.String, int, int)
or CommandBase.executeCommand(com.xmlmind.xmledit.gadget.Gadget, java.lang.String, int, int)
to do so,
NOT CommandBase.doExecute(com.xmlmind.xmledit.view.DocumentView, java.lang.String, int, int)
. CommandBase.doExecute(com.xmlmind.xmledit.view.DocumentView, java.lang.String, int, int)
is intended to be used
only by commands which invoke helper "sub-commands".
doExecute
in class CommandBase
docView
- the target of this commandparameter
- parameterizes the command (that is, modifies the
behavior of the command in a command specific way)x
- X position relative to docView of the mouse event
having triggered this command; -1 if this command was triggered by a
keyboard inputy
- Y position relative to docView of the mouse event
having triggered this command; -1 if this command was triggered by a
keyboard inputnull
.
If the command execution is successful and
the command is repeatable and/or recordable then
CommandResult.details
field of the result is expected
to be one of:
null
Object
String
s
public String copySelection(DocumentView docView, String parameter)
protected String copyElement(Element element, DocumentView docView, String parameter)
protected String copyNodeRange(Element element, Node child1, Node child2, DocumentView docView, String parameter)
protected String copyTextRange(TextNode textNode1, int offset1, TextNode textNode2, int offset2, DocumentView docView, String parameter)
public String getLastCopiedText()
MacroRecorder.Copy
null
.
This method is invoked by RecordMacro
just after the command has been successfully executed.
getLastCopiedText
in interface MacroRecorder.Copy