Community Tip - Have a PTC product question you need answered fast? Chances are someone has asked it before. Learn about the community search. X
Version: Windchill 13.0
Use Case: At my company, we've been working on a business specific help wiki, using SharePoint. This would include help tutorial pages on how to do common business specific tasks, using business specific language. The idea of this is to reduce the amount of time it takes to bring new users up to speed, and to reduce the amount of time spent supporting users on tasks that they don't do very often. We want to make it easy to access this wiki by including a link to it from the Windchill help menu.
Description:
The question I have is "how do I customise this menu to add the extra link?". Up to now we've customised the header to include the link, but it would appear that option is being removed in the future, now the ability to add banners in the UI has been added, presumably for SAAS customers. Using the new banner option in the UI covers over where the link would be in the header, making it unsuitable for us. Adding the link to the company specific help page in the help menu would be a great help.
I found this page: Solved: How to add a new menu item with link to url under ... - PTC Community but it is for Windchill 10.2 and involves having to recompile resource bundles, which I'm happy to do but I'd like to know if there's a more up to date way of doing this, or a more supported way for future use?
Solved! Go to Solution.
This is defined in the config/actions/navigation-actionModels.xml and navigation-actions.xml files. You should copy relevant sections into the custom-actions.xml and custom-actionModels.xml files and make your changes there. The help submenu is define in both.
<model name="help" resourceBundle="com.ptc.core.ui.navigationRB">
<description>
Appears as the help action model in quick links
</description>
<action name="helpCenter" type="help"/>
<action name="about" type="help"/>
<action name="support" type="help"/>
<action name="communities" type="help"/>
<action name="contactPubs" type="help"/>
<action name="welcome" type="help"/>
<action name="quickstart" type="help"/>
<action name="whatsnew" type="help"/>
</model>
The model shows the list of links as they appear. Their definitions are below in the actions file:
<objecttype name="help" class="" resourceBundle="com.ptc.core.ui.navigationRB">
<action name="accessibility">
<command windowType="new"/>
</action>
<action name="searchAll">
<command windowType="new"/>
</action>
<action name="about">
<command url="/netmarkets/jsp/util/about.jsp" windowType="new"/>
</action>
<action name="contactPubs">
<command window="new" onClick="PTC.help.contactPubs()"/>
</action>
<action name="support" enabledwhensuspended="true">
<command url="http://www.ptc.com/support/windchill.htm" windowType="new"/>
</action>
<action name="communities">
<command url="http://community.ptc.com/t5/Windchill/ct-p/Windchill" windowType="popup" />
</action>
<action name="helpCenter" enabledwhensuspended="true">
<command onClick="PTC.action.openHelpOverview()"/>
</action>
<action name="welcome" >
<command url="/netmarkets/jsp/netmarkets/welcomepage.jsp" windowType="new" />
</action>
<action name="quickstart" >
<command url="http://support.ptc.com/view?im_dbkey=171531" windowType="new" />
</action>
<action name="whatsnew" enabledwhensuspended="true">
<command onClick="PTC.action.openHelpWhatsNew()"/>
</action>
<action name="openLearningConnector">
<command window="new" onClick="PTC.learningConnector.open()"/>
</action>
</objecttype>
You can see examples above where they call out a direct URL.
This is defined in the config/actions/navigation-actionModels.xml and navigation-actions.xml files. You should copy relevant sections into the custom-actions.xml and custom-actionModels.xml files and make your changes there. The help submenu is define in both.
<model name="help" resourceBundle="com.ptc.core.ui.navigationRB">
<description>
Appears as the help action model in quick links
</description>
<action name="helpCenter" type="help"/>
<action name="about" type="help"/>
<action name="support" type="help"/>
<action name="communities" type="help"/>
<action name="contactPubs" type="help"/>
<action name="welcome" type="help"/>
<action name="quickstart" type="help"/>
<action name="whatsnew" type="help"/>
</model>
The model shows the list of links as they appear. Their definitions are below in the actions file:
<objecttype name="help" class="" resourceBundle="com.ptc.core.ui.navigationRB">
<action name="accessibility">
<command windowType="new"/>
</action>
<action name="searchAll">
<command windowType="new"/>
</action>
<action name="about">
<command url="/netmarkets/jsp/util/about.jsp" windowType="new"/>
</action>
<action name="contactPubs">
<command window="new" onClick="PTC.help.contactPubs()"/>
</action>
<action name="support" enabledwhensuspended="true">
<command url="http://www.ptc.com/support/windchill.htm" windowType="new"/>
</action>
<action name="communities">
<command url="http://community.ptc.com/t5/Windchill/ct-p/Windchill" windowType="popup" />
</action>
<action name="helpCenter" enabledwhensuspended="true">
<command onClick="PTC.action.openHelpOverview()"/>
</action>
<action name="welcome" >
<command url="/netmarkets/jsp/netmarkets/welcomepage.jsp" windowType="new" />
</action>
<action name="quickstart" >
<command url="http://support.ptc.com/view?im_dbkey=171531" windowType="new" />
</action>
<action name="whatsnew" enabledwhensuspended="true">
<command onClick="PTC.action.openHelpWhatsNew()"/>
</action>
<action name="openLearningConnector">
<command window="new" onClick="PTC.learningConnector.open()"/>
</action>
</objecttype>
You can see examples above where they call out a direct URL.
Thank you, this is really helpful. Do you know if this will be possible on Windchill+? Given that it is customisation, I'm guessing that it won't.
If you could modify the customActionModel xml file, in the Windchill+ then it would be possible.
But I am not sure because I do not have any access to any Windchill+ installation.
PetrH
The answer to your question is yes,
You will need to compile a resource class. I write a custom java file and compile. Then when I do the upgrade I reuse my class. You do have to redo the custom action and custom action model files as the menus might have changed between major releases.
This class is where you define the name and icon of that action as it appears in the menu and what action in custom action model is to be run when you select the action in the menu.
This is why you need to add entries to the resource class and obviously the class must be compiled.
Without this it isn't going to work.
@d_graham, right forgot that part. like this:
ResourceInfo.class=wt.tools.resource.StringResourceInfo
ResourceInfo.customizable=true
ResourceInfo.deprecated=false
ResourceInfo.UUID=0f5d9c34-1d5c-4fae-8cfc-e5a383344125
# Entry Contents
# Change Signature RB file
signature.changeSignature.description.value=Change Signature
signature.changeSignature.title.value=Change Signature
signature.changeSignature.icon.value=signature.gif
signature.changeSignature.icon.pseudo=false
signature.changeSignature.moreurlinfo.value=width=300,height=200
signature.changeSignature.moreurlinfo.pseudo=false
signature.changeSignature.tooltip.value=Change Signature on signed Change Notice
This I created for another action in customization.signature.ChangeSignatureActionRB.rbinfo.
when defining the new action, you can refer to the custom resource bundle:
<objecttype name="signature" class="wt.change2.WTChangeOrder2" resourceBundle="customization.signature.ChangeSignatureActionRB">
Hello @Chris_Johnson,
It looks like you have some responses from our community champions. If any of these replies helped you solve your question please mark the appropriate reply as the Accepted Solution.
Of course, if you have more to share on your issue, please let the Community know so other community members can continue to help you.
Thanks,
Vivek N.
Community Moderation Team.