|
Oxygen XML Editor 13.2 Author API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectro.sync.ecss.extensions.api.AuthorExternalObjectInsertionHandler
@API(type=EXTENDABLE, src=PUBLIC) public abstract class AuthorExternalObjectInsertionHandler
This class is notified when URLs are dropped or pasted to an Author Editor page
or when XHTML fragments are pasted or dropped from external applications (like web browsers or office applications) to the Author page.
If you want to use a stylesheet to convert the pasted XHTML to your own XML vocabulary you can just overwrite the method:
"ro.sync.ecss.extensions.api.AuthorExternalObjectInsertionHandler.getImporterStylesheetFileName(AuthorAccess)"
and return the file name of the stylesheet which will be applied. The path to the importer stylesheet must be added in the Classpath tab
in the Document Type Association edit dialog (as an example you can see the DITA and Docbook document types).
Field Summary | |
---|---|
static java.lang.String |
TEST_STYLESHEET_CONTENT
Test stylesheet content. |
Fields inherited from interface ro.sync.ecss.extensions.api.ExternalObjectInsertionSources |
---|
DND_DB_TREE, DND_DITA_MAPS_MANAGER, DND_EXTERNAL, DND_IMAGE_PREVIEW, DND_PROJECT_TREE, PASTE |
Constructor Summary | |
---|---|
AuthorExternalObjectInsertionHandler()
|
Method Summary | |
---|---|
boolean |
acceptSource(AuthorAccess authorAccess,
int source)
Confirm that the source of URLs is interesting to this handler. |
boolean |
acceptURLs(AuthorAccess authorAccess,
java.util.List<java.net.URL> urls,
int source)
Confirm that the list of URLs is interesting to this handler. |
protected boolean |
checkImportedXHTMLContentIsPreservedEntirely()
Overwrite this method if you want to check the text data is preserved on paste after applying the conversion XSL stylesheet. |
protected static boolean |
containOnlyImages(AuthorAccess authorAccess,
java.util.List<java.net.URL> urlList)
Verify if the provided URLs are only images. |
protected javax.xml.transform.stream.StreamSource |
createImporterStylesheetSource(AuthorAccess authorAccess)
Create the InputSource for the XSLT stylesheet which will do the importing (transforming from the XHTML content to content valid in the current framework). |
protected java.net.URL |
getBaseURLAtCaretPosition(AuthorAccess authorAccess)
Get the base URL for the node located at caret position. |
protected java.lang.String |
getImporterStylesheetFileName(AuthorAccess authorAccess)
Get the file name of the importer stylesheet. |
void |
insertURLs(AuthorAccess authorAccess,
java.util.List<java.net.URL> urls,
int source)
A list of URLs need to be inserted at the caret position, probably as links. |
void |
insertXHTMLFragment(AuthorAccess authorAccess,
java.io.Reader xhtmlContentReader)
Insert an XHTML fragment |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String TEST_STYLESHEET_CONTENT
Constructor Detail |
---|
public AuthorExternalObjectInsertionHandler()
Method Detail |
---|
public void insertURLs(AuthorAccess authorAccess, java.util.List<java.net.URL> urls, int source) throws AuthorOperationException
source
of the insertion can be a paste event or a
drag and drop event.
acceptURLs(AuthorAccess, List, int)
returned true
for the same source
and urls
list.
authorAccess
- The author accessurls
- The list of URLs.source
- The source of the URLs, one of the AuthorExternalObjectInsertionHandler
constants.
AuthorOperationException
public boolean acceptURLs(AuthorAccess authorAccess, java.util.List<java.net.URL> urls, int source)
source
of the insertion can be a paste event or a
drag and drop event. If the source is of drag and drop type and
it is accepted, the caret will be moved to the drop position.
authorAccess
- The author access.urls
- The list of URLs.source
- The source of the URLs, one of the AuthorExternalObjectInsertionHandler
constants.
true
if the provided URLs are interesting.public boolean acceptSource(AuthorAccess authorAccess, int source)
source
of the insertion can be a paste event or a
drag and drop event. If the source is of drag and drop type and
it is accepted, the caret will be moved to the drag position.
authorAccess
- The author access.source
- The source of the URLs, one of the
AuthorExternalObjectInsertionHandler
constants (that represents a
paste or a drag and drop event)
true
if the insert URLs are interesting.protected static boolean containOnlyImages(AuthorAccess authorAccess, java.util.List<java.net.URL> urlList)
urlList
- The list of URLs
public void insertXHTMLFragment(AuthorAccess authorAccess, java.io.Reader xhtmlContentReader) throws AuthorOperationException
authorAccess
- The author accessxhtmlContentReader
- The XTHML content reader
AuthorOperationException
protected javax.xml.transform.stream.StreamSource createImporterStylesheetSource(AuthorAccess authorAccess)
protected java.lang.String getImporterStylesheetFileName(AuthorAccess authorAccess)
protected java.net.URL getBaseURLAtCaretPosition(AuthorAccess authorAccess)
authorAccess
- The author access
protected boolean checkImportedXHTMLContentIsPreservedEntirely()
false
by default.
|
Oxygen XML Editor 13.2 Author API | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |