Defining Profiling values in Framework
Are you missing a feature? Request its implementation here.
-
- Posts: 40
- Joined: Wed Jan 29, 2014 4:30 pm
Defining Profiling values in Framework
Profiling values are currently defined in the global options of Oxygen, and must be entered one by one via a dialog box.
We would like to have the profiling values defined inside the framework directory, ideally as a separate XML file, so that any change to the profiling attributes and values can be propagated to the users when the add-on is updated (we use the update site technology for our custom framework).
Note: I know that
- you can export the global options and re-import them in other workstations, but this will change or reset all user specific preferences which is a bad idea ...
- for DITA you can upload DITAVAL files, but this is still in the global options, not in the DITA framework. And anyway we are using a custom DTD which is not DITA based.
Pascale
We would like to have the profiling values defined inside the framework directory, ideally as a separate XML file, so that any change to the profiling attributes and values can be propagated to the users when the add-on is updated (we use the update site technology for our custom framework).
Note: I know that
- you can export the global options and re-import them in other workstations, but this will change or reset all user specific preferences which is a bad idea ...
- for DITA you can upload DITAVAL files, but this is still in the global options, not in the DITA framework. And anyway we are using a custom DTD which is not DITA based.
Pascale
-
- Posts: 9436
- Joined: Fri Jul 09, 2004 5:18 pm
Re: Defining Profiling values in Framework
Hi Pascale,
We have plans to offer in a future version the possibility to save profiling conditions at framework (document type) level but not as a separate XML file, probably as another settings page in the Document Type Edit dialog. You will be notified when this happens.
A workaround for you might be to pass the profiling options to Project level and use the same project for all users. This works if you have version control systems like SVN, CVS, GIT and each user has his own working copy. I don't know if this applies to your case.
About this remark:
In Oxygen 16.0 we will also add this extra Java API method:
ro.sync.exml.workspace.api.PluginWorkspace.importGlobalOptions(File)
which will merge the specified XML options file with the global preferences without resetting all user preferences.
You will be able to call this method from a plugin or from a framework.
We also have this existing API property:
ro.sync.exml.workspace.api.PluginWorkspace.setGlobalObjectProperty(String, Object)
which could be used from a custom framework to solve your problem.
I do not know if you have any Java customizations to your framework.
For example if your framework has an ro.sync.ecss.extensions.api.ExtensionsBundle Java extension defined you could overwrite the method ExtensionsBundle.createAuthorExtensionStateListener() and on the callback AuthorExtensionStateListener.activated(AuthorAccess) you can do something like:
Regards,
Radu
We have plans to offer in a future version the possibility to save profiling conditions at framework (document type) level but not as a separate XML file, probably as another settings page in the Document Type Edit dialog. You will be notified when this happens.
A workaround for you might be to pass the profiling options to Project level and use the same project for all users. This works if you have version control systems like SVN, CVS, GIT and each user has his own working copy. I don't know if this applies to your case.
About this remark:
Indeed importing an XML file containing properties should not reset all other properties the user may have, we already have this issue registered and it will be fixed in a future version.you can export the global options and re-import them in other workstations, but this will change or reset all user specific preferences which is a bad idea ...
In Oxygen 16.0 we will also add this extra Java API method:
ro.sync.exml.workspace.api.PluginWorkspace.importGlobalOptions(File)
which will merge the specified XML options file with the global preferences without resetting all user preferences.
You will be able to call this method from a plugin or from a framework.
We also have this existing API property:
ro.sync.exml.workspace.api.PluginWorkspace.setGlobalObjectProperty(String, Object)
which could be used from a custom framework to solve your problem.
I do not know if you have any Java customizations to your framework.
For example if your framework has an ro.sync.ecss.extensions.api.ExtensionsBundle Java extension defined you could overwrite the method ExtensionsBundle.createAuthorExtensionStateListener() and on the callback AuthorExtensionStateListener.activated(AuthorAccess) you can do something like:
Code: Select all
if(!"true".equals(this.authorAccess.getOptionsStorage().getOption("imposedProfilingConditions", ""))) {
//We can impose profiling conditions.
PluginWorkspaceProvider.getPluginWorkspace().setGlobalObjectProperty(
"profiling.conditions.list", new ProfileConditionInfoPO[] {
ProfileConditionInfoPO.createDefaultProfileConditionInfoPO("audience", "Audience", true, new String[] { "novice", "expert" }, " ", "DITA*"),
ProfileConditionInfoPO.createDefaultProfileConditionInfoPO("platform", "Platform", true,new String[] { "linux", "windows", "mac", "solaris" }, " ", "DITA*")
});
this.authorAccess.getOptionsStorage().setOption("imposedProfilingConditions", "true");
}
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
<oXygen/> XML Editor
http://www.oxygenxml.com
-
- Posts: 8
- Joined: Wed Jan 22, 2014 5:30 pm
Re: Defining Profiling values in Framework
One question, is it possible to use ro.sync.exml.workspace.api.PluginWorkspace.setGlobalObjectProperty(String, Object)
to add some new entries automatically for the code-templates ???
to add some new entries automatically for the code-templates ???
-
- Posts: 9436
- Joined: Fri Jul 09, 2004 5:18 pm
Re: Defining Profiling values in Framework
Hi,
You cannot add to the list of existing code templates but you can set it to some custom set of code templates like:
Regards,
Radu
You cannot add to the list of existing code templates but you can set it to some custom set of code templates like:
Code: Select all
PluginWorkspaceProvider.getPluginWorkspace().setGlobalObjectProperty("code-templates", new CTItem[] {
// new CTItem(contentType, renderString, unparsedInsertString, descriptionString),
new CTItem("text/xml", "CTTRIGGERNAME", "<a></a>", "CT DESCRIPTION"),
new CTItem("text/xml", "CTTRIGGERNAME2", "<a2></a2>", "CT DESCRIPTION"),
});
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
<oXygen/> XML Editor
http://www.oxygenxml.com
Jump to
- Oxygen XML Editor/Author/Developer
- ↳ Feature Request
- ↳ Common Problems
- ↳ DITA (Editing and Publishing DITA Content)
- ↳ 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