new tabs don't appear in working copies

30 views
Skip to first unread message

Ilya Ushakov

unread,
May 16, 2017, 4:09:33 AM5/16/17
to TopBraid Suite Users
I made additional tab named 'Release' that follows after 'Export' tab in taxonomy as subclass of teamwork:ProjectPlugin. 
and add it as an object of  teamwork:projectPlugin predicate  of the taxonomies:ProjectType that is instance  of teamwork:projectType class  in my *.ui.ttlx file.
I expected that my tab will appear in working copies as well as in for production copies. But tab hasn't been appeared there.
The second similar problem, I added on additional link on Export tab as subclass of teamwork:ExportPlugins and put it as property of teamwork:projectPlugin  in my *.ui.ttlx file. This link appears for production copies, but for working copies doesn't.  
What did I wrong? How can I add new tabs that should be available for both production and working copies according to best practice?

Richard Cyganiak

unread,
May 16, 2017, 9:24:16 AM5/16/17
to topbrai...@googlegroups.com
Hi Ilya,

On 16 May 2017, at 09:09, Ilya Ushakov <juve.us...@gmail.com> wrote:

I made additional tab named 'Release' that follows after 'Export' tab in taxonomy as subclass of teamwork:ProjectPlugin. 
and add it as an object of  teamwork:projectPlugin predicate  of the taxonomies:ProjectType that is instance  of teamwork:projectType class  in my *.ui.ttlx file.
I expected that my tab will appear in working copies as well as in for production copies. But tab hasn't been appeared there.

To make a new project tab, create a subclass of teamwork:ProjectTabs. If it should show up only for certain project types, use the teamwork:projectTabCondition property with a value such as:

    teamwork:getProjectType(?projectGraph) = my:ProjectType

Also note the teamwork:projectTabRole property, which controls the permission required to see the tab. It takes a value such as teamwork:viewer, teamwork:editor, teamwork:manager.

The tabs for working copies (also known as “tags” internally) are more hardcoded, and new working copy tabs cannot be added simply by creating a new class. Instead, the ui:prototype of teamwork:TagPage needs to be overridden (create a clone of teamwork:TagPage, make it a subclass of teamwork:TagPage, have the ui:overrides property of the new class point to teamwork:TagPage, then modify the ui:prototype of the new class). Just add the new tab to the hardcoded list in the prototype.

The second similar problem, I added on additional link on Export tab as subclass of teamwork:ExportPlugins and put it as property of teamwork:projectPlugin  in my *.ui.ttlx file. This link appears for production copies, but for working copies doesn't.  
What did I wrong?

To make an export plugin show up not just on the master but also on tags, set its teamwork:validForTags property to true. See teamwork:TurtleFileExportPlugin in teamwork.topbraidlive.org/ui/teamwork.ui.ttlx for an example.

(As you see, in general, it is easier to add new links to the existing tabs such as General, Manage, Import, Export, etc. via the ProjectPlugin mechanism, than adding all-new tabs.)

Hope that helps,
Richard




How can I add new tabs that should be available for both production and working copies according to best practice?


--
You received this message because you are subscribed to the Google Group "TopBraid Suite Users", the topics of which include the TopBraid Suite family of products and its base technologies such as SPARQLMotion, SPARQL Web Pages and SPIN.
To post to this group, send email to topbrai...@googlegroups.com
---
You received this message because you are subscribed to the Google Groups "TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to topbraid-user...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Ilya Ushakov

unread,
May 17, 2017, 8:56:53 AM5/17/17
to TopBraid Suite Users
Hi Richard,
I made new tab as you proposed. Everything works fine, thank you.
Reply all
Reply to author
Forward
0 new messages