I think when you create a TabContainer directly you must call addChild() to it with a reference to the individual tabs themselves. (which must also be created directly)
I do plan on adding this particular widget to Tapestry eventually, but have to make sure all other 4.1.1 issues are out of the way first. On 8/9/06, Dom Couldwell <[EMAIL PROTECTED]> wrote:
Hi, I'm trying to use Tapestry 4.1 to create a set of dynamic tabs using custom components. I've got some if it to work using the components that I've written but I can't seem to get the tabs themselves to be created, just the content pane. The main html looks like this: <span jwcid="[EMAIL PROTECTED]"> <span jwcid="tabs"> <a jwcid="@LinkPane" id="ognl:currentLink" label="ognl:currentLink"> <span jwcid="@Insert" value="ognl:currentLink"></span> </a> </span> </span> Where the tabs component is just a For element. The TabContainer component I've written seems to work ok and is rendered as I'd expect but the LinkPane doesn't seem to render the TabLabels correctly. Here's the html that's produced according to Firebug: <div wairole="tabpanel" class="dojoTabContainer dojoLayoutContainer" id="mainTabContainer" role="wairole:tabpanel" style=""> <div dojoattachpoint="dojoTabLabels" class="dojoTabLabels-top dojoAlignTop" style="left: 0px; top: 0px; bottom: auto; right: auto; width: 500px;" /> <div dojoattachpoint="containerNode" class="dojoTabPaneWrapper dojoAlignClient" style="left: 0px; top: -1px; bottom: auto; right: auto; width: 498px; height: 299px;"> <div class="dojoLinkPane" style="">..contents of first pane...</div> </div> </div> As you can see the dojoTabLabels attach point doesn't contain anything, this should contain a list of the tabs. Here's the widget definitions produced in the html from the components script files: tapestry.widget.synchronizeWidgetState("Treasuries", "LinkPane", {"refreshOnShow":"true","href":"<url to contents of first pane>","label":"Treasuries","widgetId":"Treasuries"}); tapestry.widget.synchronizeWidgetState("mainTabContainer", "TabContainer", {"selectedTab":"Treasuries","widgetId":"mainTabContainer"}); Any ideas as to what I'm missing? Thanks, Dom -- This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
-- Jesse Kuhnert Tacos/Tapestry, team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind.