Hi Radu,
Thanks! I'll play with the script parameter a bit more to see how that
works.
It seems that the DocumentTypeInfo API is different than the
DocumentTypeInformation API. I'm trying to get the active framework's
"Description", which is available from DocumentTypeInfo.getDescription()
but not DocumentTypeInformation.getDescription(). Interestingly,
DocumentTypeInformation.getName() does work.
Any ideas on how to access the framework description from the
authorAccess object?
Thanks,
Scott
On 6/13/24 9:39 PM, Oxygen XML Editor Support (Radu Coravu) wrote:
Hi Scott,
So the "script" parameter should be a piece of Javascript content. For
example you can pass as value of the "script" parameter this entire
Javascript code here:
https://github.com/oxygenxml/javascript-sample-operations/blob/master/copy-xml-to-clipboard/copy-xml-to-clipboard.js
To the value passed using "script" we add the entire Javascript from
the "commons.js". So I guess in your case you have placed the entire
content in the "commons.js" and passed an empty "script" parameter,
which should also work as long as you have a "doOperation()" function.
About accessing the DocumentTypeInfo API, your script has global
access to an object named "authorAccess" which maps to this Java class:
https://www.oxygenxml.com/InstData/Editor/SDK/javadoc/ro/sync/ecss/extensions/api/AuthorAccess.html
So something like this in the JS code:
authorAccess.getEditorAccess().getDocumentTypeInformation()
should give you access to this Java class:
https://www.oxygenxml.com/InstData/Editor/SDK/javadoc/ro/sync/exml/workspace/api/editor/documenttype/DocumentTypeInformation.html
That similar
"ro.sync.ecss.extensions.api.webapp.doctype.DocumentTypeInfo" API that
you wanted access to is specific for our web author in browser editor
tool.
Regards,
Radu
Radu Coravu
Oxygen XML Editor
On 6/13/24 19:48, Scott Prentice wrote:
Thanks, Radu.
I have a couple questions.
It's not clear to me how the "script" parameter works with the
JSOperation class. I assume it can be used to pass in values to the
code in commons.js, but I'm not seeing how you'd do that. Can you
point me to any examples?
Also. I see that commons.js has access to the AuthorAccess API. I'd
like to access DocumentTypeInfo interface
(ro.sync.ecss.extensions.api.webapp.doctype.DocumentTypeInfo) .. can
I do that from commons.js? I've tried a few things, without much success.
Thanks!
Scott
On 6/12/24 8:27 PM, Oxygen XML Editor Support (Radu Coravu) wrote:
Hi Scott,
Right. We do not have a special Author operation to show a message
to the end user.
This operation could be used to open a web page if for example you
want to present to the end user the information in a web browser:
https://www.oxygenxml.com/doc/versions/26.1/ug-editor/topics/dg-default-author-operations.html#dg-default-author-operations__openinsystemappoperation
Regards,
Radu
Radu Coravu
Oxygen XML Editor
On 6/13/24 03:06, Scott Prentice wrote:
If you're interested, here's one way to do this. I'm sure there's a
more elegant way and this is probably a bit if a hack, but it does
what I need right now.
1. In. your framework's Document Type dialog, on the Author:Actions
subtab, add an action to the framework, give it an ID and a Name.
2. In the Action dialog select this Operation:
ro.sync.ecss.extensions.commons.operations.JSOperation
3. A 'script' argument will be added, leave the value empty.
4. Choose OK. (Leave the Document Type dialog up for now.)
5. Create a commons.js file in the root of your framework
directory, with the following content ..
function doOperation(){
parentFrame = authorAccess.getParentFrame();
javax.swing.JOptionPane.showMessageDialog(parentFrame, "MESSAGE HERE");
}
6. In the Document Type dialog, on the Author:Menu subtab, add your
new action to your menu (assuming one exists).
7. Choose OK, then OK.
Open a document in Author view that uses your framework. You should
see the new menu item.
Clearly, if you're already using the commons.js file for something
else, you'll need to pass in some parameter and tweak the JS code
.. but this is a start. :-)
Cheers,
Scott
On 6/12/24 1:32 PM, Scott Prentice wrote:
Hi,
Is there a built-in method for creating an action (to call from a
toolbar or menu) that displays a simple dialog that contains
informational text? I'd like to have an "About" dialog that's
associated with a framework. I assume I can do this by creating a
custom class, but wanted to see if there was an OOB option for this.
Thanks!
Scott
_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user
_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user
_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user
_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user
_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user
_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user