yep, javascript tabs do that... -igor
On Mon, Jun 14, 2010 at 8:29 AM, Alec Swan <[email protected]> wrote: > Pedro, I agree that ITab.getPanel() could just return Component type. > > Jeremy and Igor, the goal of the project is to automatically generate > tabs given tab markup template and a database which provides content > for all tabs. Note that the number of tabs can vary depending on the > database state. > > It seems to me that automating this by switching tab components in > Wicket is easier than using JavaScript because in Wicket we have > direct access to the database and can decide right then how many tabs > need to be created. > > I am planning to try creating and swapping multiple Fragment objects > mapped to the same fragment markup (wicket:id="tabTemplateFragment"). > Please let me know if there is a reason not to do this. > > Thanks > > On Mon, Jun 14, 2010 at 8:26 AM, Pedro Santos <[email protected]> wrote: >> Hi Alec, you can create an wrapper panel, that receive as parameter an >> component, in your case an fragment, to use in your tabbed panel. Actually I >> think that will to be more natural if the ITab interface had an getTab >> method, that return an Component object instead of the getPanel one, since >> there is no good reason to force users to have the tab content implemented >> as an Panel. If some one else think this way, I can open on request for. >> I know that the component name is TabbedPANEL, which implies that it work >> with panels... So it can to be an reason to create another component? >> TabbedContents? >> >> Ex: >> public WrapperPanel extends Panel{ >> public static String WICKET_ID_FOR_WRAPPED_COM ="component"; >> public WrapperPanel (wrappedComponent){ >> add(wrappedComponent); >> } >> } >> >> On Mon, Jun 14, 2010 at 2:14 AM, Alec Swan <[email protected]> wrote: >> >>> I wonder if I can use Wicket fragments for this. My page markup will >>> contain a single fragment for the tab content. At runtime I will >>> create multiple Fragment objects - one for each tab, each of which >>> will be mapped to the same fragment section in the markup file. After >>> this I can just swap tab fragments when tabs are selected. >>> >>> I am not sure if it's legal to create multiple Fragment objects that >>> use the same fragment markup. Any thoughts? >>> >>> Thanks >>> >>> On Sun, Jun 13, 2010 at 11:02 PM, Alec Swan <[email protected]> wrote: >>> > Hello, >>> > >>> > If I understood your suggestion correctly it involves to markup files: >>> > one - for the content area and another one - for the tab content. >>> > However, I would like to use a single markup file for the entire page. >>> > >>> > Did I understand your solution correctly? >>> > >>> > Thanks >>> > >>> > On Sun, Jun 13, 2010 at 8:04 PM, Jeremy Thomerson >>> > <[email protected]> wrote: >>> >> On Sun, Jun 13, 2010 at 8:54 PM, Alec Swan <[email protected]> wrote: >>> >> >>> >>> Hello, >>> >>> >>> >>> I am working with a web designer who delivers a single HTML page which >>> >>> should display a panel with arbitrary number of tabs. In the HTML the >>> >>> tabbed panel consists of a <ul> list of links and the content of the >>> >>> first tab. The content for the remaining tabs is loaded from the >>> >>> database at runtime. >>> >>> >>> >>> I know how to implement tabbing using tab swapping or TabbedPanel. >>> >>> However, both of these approaches require a separate panel object and >>> >>> markup for the tabs. Instead, I would like to be able to use the HTML >>> >>> page I received from the designer unmodified. >>> >>> >>> >>> Is there a way to create a WebMarkupContainerWithAssociatedMarkup >>> >>> object which is mapped to a specific element on the page markup? If >>> >>> so, can I implement tabbing by swapping such objects when tabs are >>> >>> clicked? >>> >>> >>> >>> Any ideas would be appreciated. >>> >>> >>> >>> Thanks >>> >>> >>> >>> --------------------------------------------------------------------- >>> >>> To unsubscribe, e-mail: [email protected] >>> >>> For additional commands, e-mail: [email protected] >>> >>> >>> >>> >>> >> Just make the content area a panel, add links to each of the tabs, and >>> in >>> >> the onClick, call replace(...) with the panel that contains the content >>> for >>> >> that tab. This will make each content area (for each tab) into a panel, >>> but >>> >> you will not have to modify the markup of the tabs themselves. >>> >> >>> >> -- >>> >> Jeremy Thomerson >>> >> http://www.wickettraining.com >>> >> >>> > >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >>> >> >> >> -- >> Pedro Henrique Oliveira dos Santos >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
