New Actions Toolbar
Having trouble installing Oxygen? Got a bug to report? Post it all here.
-
- Posts: 61
- Joined: Tue Oct 27, 2015 11:49 am
New Actions Toolbar
Post by Konstantin »
Hello !!!
I use Oxygen WebApp 18.0.0
I need create new custom toolbar for my actions.
Could you say how can I do it ?
I use Oxygen WebApp 18.0.0
I need create new custom toolbar for my actions.
Could you say how can I do it ?
-
- Posts: 517
- Joined: Thu Sep 04, 2014 4:22 pm
Re: New Actions Toolbar
Post by cristi_talau »
Hello,
You can find here [1] a tutorial about implementing a new action. In order to add a new toolbar you have to listen for the "sync.api.Workspace.EventType.BEFORE_EDITOR_LOADED" event [2] and modify the "actionsConfiguration" field of the event to match the desired structure for your toolbars.
Best,
Cristian
[1] https://www.oxygenxml.com/maven/com/oxy ... ction.html
[2] https://www.oxygenxml.com/maven/com/oxy ... Event.html
You can find here [1] a tutorial about implementing a new action. In order to add a new toolbar you have to listen for the "sync.api.Workspace.EventType.BEFORE_EDITOR_LOADED" event [2] and modify the "actionsConfiguration" field of the event to match the desired structure for your toolbars.
Best,
Cristian
[1] https://www.oxygenxml.com/maven/com/oxy ... ction.html
[2] https://www.oxygenxml.com/maven/com/oxy ... Event.html
-
- Posts: 61
- Joined: Tue Oct 27, 2015 11:49 am
Re: New Actions Toolbar
Post by Konstantin »
Is there able to customize toolbars and actions from Java ?
I tried do it thru plugin WorkspaceAccessPluginExtension
Adding plugin:
Plugin:
But whene I start tomcat I get error:
It is happen when I try use workspace.addToolbarComponentsCustomizer method.
I tried do it thru plugin WorkspaceAccessPluginExtension
Adding plugin:
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<!-- The plugin.dtd file is located in the OXYGEN_INSATALL_DIR/plugins directory -->
<!DOCTYPE plugin SYSTEM "../plugin.dtd">
<plugin
id="webapp.customworkspace.WorkspacePlugin"
name="WorkspaceAccess"
description="Plugin adds contextual menu action to DITA Maps Manager pop-up menu."
version="${project.version}"
vendor="SyncRO"
class="webapp.customworkspace.WorkspacePlugin"
classLoaderType="preferReferencedResources">
<runtime>
<library name="lib/${project.build.finalName}.jar"/>
</runtime>
<extension type="WorkspaceAccess" class="webapp.customworkspace.WorkspacePluginExtension"/>
<view id="xproject-view" initialSide="WEST" initialRow="0"/>
</plugin>
Code: Select all
public class WorkspacePluginExtension implements WorkspaceAccessPluginExtension {
@Override
public boolean applicationClosing() {
return false;
}
@Override
public void applicationStarted(final StandalonePluginWorkspace workspace) {
// add new toolbar
workspace.addToolbarComponentsCustomizer(new ToolbarComponentsCustomizer() {
@Override
public void customizeToolbar(final ToolbarInfo toolbarInfo) {
// if toolbar is our custom toolbar (referenced by ID in plugin.xml)
if (toolbarInfo.getToolbarID().equals("CustomToolbar")) {
final JButton demoButton = new JButton("Demo Button");
demoButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(final ActionEvent e) {
JOptionPane.showMessageDialog(new JFrame(),
"Toolbar ID: " + toolbarInfo.getToolbarID(),
"Window Title",
JOptionPane.INFORMATION_MESSAGE);
}
});
// Add demoButton to toolbar
final List<JComponent> comps = new ArrayList<JComponent>();
comps.add(demoButton);
toolbarInfo.setComponents(comps.toArray(new JComponent[0]));
// Set toolbar title
toolbarInfo.setTitle("Custom Demo Toolbar");
}
}
});
}
}
Code: Select all
Initializing log4j with: file:/home/konstantin/soft/tomcat8/webapps/oxygen-editor/WEB-INF/log4j.properties
0 [localhost-startStop-1] INFO ro.sync.servlet.StartupServlet - Loading frameworks from folder: /home/konstantin/soft/tomcat8/work/Catalina/localhost/oxygen-editor/frameworks-v18.0.0
57 [localhost-startStop-1] INFO ro.sync.servlet.StartupServlet - Loading plugins from: /home/konstantin/soft/tomcat8/work/Catalina/localhost/oxygen-editor/plugins-v18.0.0
123 [localhost-startStop-1] WARN ro.sync.exml.plugin.PluginManager - Attribute "type" with value "AuthorStylesheet" must have a value from the list "selectionProcessor WebappServlet documentProcessor generalExtension URLStreamHandler URLHandler TargetedURLHandler URLChooser URLChooserToolbar componentsValidator OpenRedirect WorkspaceAccess LockHandlerFactory StylesFilter OptionPage RefactoringOperationsProvider AuthorCSS ".
123 [localhost-startStop-1] WARN ro.sync.exml.plugin.PluginManager - Attribute "href" is not allowed to appear in element "extension".
124 [localhost-startStop-1] WARN ro.sync.exml.plugin.PluginManager - Attribute "type" with value "WebappStaticResourcesFolder" must have a value from the list "selectionProcessor WebappServlet documentProcessor generalExtension URLStreamHandler URLHandler TargetedURLHandler URLChooser URLChooserToolbar componentsValidator OpenRedirect WorkspaceAccess LockHandlerFactory StylesFilter OptionPage RefactoringOperationsProvider AuthorCSS ".
124 [localhost-startStop-1] WARN ro.sync.exml.plugin.PluginManager - Attribute "path" is not allowed to appear in element "extension".
124 [localhost-startStop-1] WARN ro.sync.exml.plugin.PluginManager - Attribute "href" is not allowed to appear in element "extension".
130 [localhost-startStop-1] WARN ro.sync.exml.plugin.PluginManager - Attribute "type" with value "AuthorStylesheet" must have a value from the list "selectionProcessor WebappServlet documentProcessor generalExtension URLStreamHandler URLHandler TargetedURLHandler URLChooser URLChooserToolbar componentsValidator OpenRedirect WorkspaceAccess LockHandlerFactory StylesFilter OptionPage RefactoringOperationsProvider AuthorCSS ".
130 [localhost-startStop-1] WARN ro.sync.exml.plugin.PluginManager - Attribute "href" is not allowed to appear in element "extension".
146 [localhost-startStop-1] WARN ro.sync.exml.workspace.api.PluginWorkspace - Errors starting plugin WorkspaceAccess. It will be disabled.
java.lang.UnsupportedOperationException: In oXygen XML WebApp, the toolbar is a client-side component, use the JavaScript "sync.api.Editor.ActionsLoadedEvent" event to change the toolbar configuration.
at ro.sync.ecss.webapp.access.h.b(Unknown Source)
at ro.sync.ecss.webapp.access.h.addToolbarComponentsCustomizer(Unknown Source)
at webapp.customworkspace.WorkspacePluginExtension.applicationStarted(WorkspacePluginExtension.java:28)
at ro.sync.ecss.webapp.n.f(Unknown Source)
at ro.sync.ecss.webapp.n.b(Unknown Source)
at ro.sync.ecss.extensions.api.webapp.WebappAuthorDocumentFactory.setPlugins(Unknown Source)
at ro.sync.servlet.StartupServlet.loadPlugins(StartupServlet.java:196)
at ro.sync.servlet.StartupServlet.prepareWebappFactory(StartupServlet.java:145)
at ro.sync.servlet.StartupServlet.contextInitialized(StartupServlet.java:424)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4812)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5255)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:939)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1812)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
157 [localhost-startStop-1] INFO ro.sync.servlet.StartupServlet - oXygen XML WebApp initialized successfully.
20-Jun-2016 13:29:07.610 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive /home/konstantin/soft/tomcat8/webapps/oxygen-editor.war has finished in 4,549 ms
20-Jun-2016 13:29:07.610 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/konstantin/soft/tomcat8/webapps/manager
20-Jun-2016 13:29:07.629 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/konstantin/soft/tomcat8/webapps/manager has finished in 19 ms
20-Jun-2016 13:29:07.629 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/konstantin/soft/tomcat8/webapps/examples
20-Jun-2016 13:29:07.779 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/konstantin/soft/tomcat8/webapps/examples has finished in 150 ms
20-Jun-2016 13:29:07.779 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/konstantin/soft/tomcat8/webapps/ROOT
-
- Posts: 1016
- Joined: Wed Nov 16, 2005 11:11 am
Re: New Actions Toolbar
Post by alex_jitianu »
Hello,
In oXygen XML WebApp the toolbar is a client-side component. Because of that you'll have to use our Javascript API to customize it (as my colleague Cristian advised you). This Javascript code can reside in a number of predefined locations: https://www.oxygenxml.com/doc/versions/ ... ng_js.html
The ToolbarComponentsCustomizer Java API works only in the Desktop distribution of Oxygen XML Editor.
ToolbarComponentsCustomizer
Best regards,
Alex
In oXygen XML WebApp the toolbar is a client-side component. Because of that you'll have to use our Javascript API to customize it (as my colleague Cristian advised you). This Javascript code can reside in a number of predefined locations: https://www.oxygenxml.com/doc/versions/ ... ng_js.html
The ToolbarComponentsCustomizer Java API works only in the Desktop distribution of Oxygen XML Editor.
ToolbarComponentsCustomizer
Best regards,
Alex
-
- Posts: 61
- Joined: Tue Oct 27, 2015 11:49 am
Jump to
- Oxygen XML Editor/Author/Developer
- ↳ Feature Request
- ↳ Common Problems
- ↳ DITA (Editing and Publishing DITA Content)
- ↳ Artificial Intelligence (AI Positron Assistant add-on)
- ↳ SDK-API, Frameworks - Document Types
- ↳ DocBook
- ↳ TEI
- ↳ XHTML
- ↳ Other Issues
- Oxygen XML Web Author
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Content Fusion
- ↳ Feature Request
- ↳ Common Problems
- Oxygen JSON Editor
- ↳ Feature Request
- ↳ Common Problems
- Oxygen PDF Chemistry
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Feedback
- ↳ Feature Request
- ↳ Common Problems
- Oxygen XML WebHelp
- ↳ Feature Request
- ↳ Common Problems
- XML
- ↳ General XML Questions
- ↳ XSLT and FOP
- ↳ XML Schemas
- ↳ XQuery
- NVDL
- ↳ General NVDL Issues
- ↳ oNVDL Related Issues
- XML Services Market
- ↳ Offer a Service