This forum is closed to new posts and responses. Individual names altered for privacy purposes. The information contained in this website is provided for informational purposes only and should not be construed as a forum for customer support requests. Any customer support requests should be directed to the official HCL customer support channels below:

HCL Software Customer Support Portal for U.S. Federal Government clients
HCL Software Customer Support Portal



Nov 9, 2011, 4:39 PM
23 Posts

passing placebar actions to applicationLayout via compositdata

  • Category: Extension Library
  • Platform: All
  • Release: 8.5.3
  • Role: Developer
  • Tags: applicationLayout,placeBarActions
  • Replies: 1
I have a oneui custom control that I use on every page in my app.  the control contains an applicationLayout control and i want to pass the placeBarActions into the control using compositData but5 I just can't seem to get it to work...  I've tries several ways but just can't get it....
 
this was the one I was most hopeful would work but it actually cause an error in the control's generated java file
<xe:this.configuration>
            <xe:oneuiApplication legalLogoAlt="OAG"
                productLogo="/fake-logo.jpg"
                defaultNavigationPath="${javascript:compositeData.defaultNavigationPath}"
                productLogoHeight="40px" productLogoWidth="175px" placeBar="true"
                placeBarActions="${javascript:compositeData.actions}"
                footer="false" legal="true" legalLogo="/logo-Color.gif">
 
I was able to get it to kind of work using a repeat node in the placebarActions and looping the compositData.action but then I am limited to one type leafnode
 
I also tried...
    <xp:this.afterPageLoad><![CDATA[#{javascript:oneui = getComponent("oneUILayout1");
uiconfig = oneui.getConfiguration();
uiconfig.setPlaceBarActions(compositeData.actions);}]]></xp:this.afterPageLoad>
 
but yeah that didn't work either
 
Does anyone have any ideas...
 
 
 
 
Nov 9, 2011, 6:38 PM
23 Posts
Re: passing placebar actions to applicationLayout via compositdata
GOT IT!!!
 
I had to open the source for the com.ibm.xsp.extlib.component.layout.impl.BasicApplicationConfigurationImpl.java to find the answer...
 
I was calling the wrong method...
 
    <xp:this.afterPageLoad><![CDATA[#{javascript:if(compositeData.actions){
    var oneui = getComponent("oneUILayout1");
    var uiConfig = oneui.getConfiguration();
    uiConfig.addPlaceBarAction(compositeData.actions);
}}]]></xp:this.afterPageLoad>
 
the compositeData.actions is of type  com.ibm.xsp.extlib.tree.complex.ComplexContainerTreeNode and when it is used in an xpage you just have to addyour child nodes and set the container to transparent...  
 
Now I just have to get the onItemClick events to bubble up from the custom control so they can be handled at the page level...
 
 

This forum is closed to new posts and responses. Individual names altered for privacy purposes. The information contained in this website is provided for informational purposes only and should not be construed as a forum for customer support requests. Any customer support requests should be directed to the official HCL customer support channels below:

HCL Software Customer Support Portal for U.S. Federal Government clients
HCL Software Customer Support Portal