yes, its not the cleanest way though. cleaner to have a panel that
inside of it has all the variable fragments, and then just adds the
right one

-igor


On Tue, Apr 8, 2008 at 11:09 AM, Eric Rotick <[EMAIL PROTECTED]> wrote:
> One more thing that was suggested in class.
>
>  Is it possible to define a Panel which had all suitable and appropriate sub
>  components and then to no-op the ones that were not needed?
>
>  So in the earlier example there could be a panel
>
>
>  <wicket:panel>
>  <span wicket:id="link">
>  <span wicket:id="text"/>
>  <img wicket:id="image"/>
>   </span>
>  </wicket:panel>
>
>  and if the image was not needed it could be no-op'ed out by defining a
>  WebMarkupContainer but with no children.
>
>
>
>  On Tue, Apr 8, 2008 at 6:53 PM, Eric Rotick <[EMAIL PROTECTED]> wrote:
>
>  > Many thanks for the clarification.
>  >
>  > As I am about to start teaching the rudiments of Wicket to a project team
>  > I guess the teacher should know what they are talking about.
>  >
>  >
>  > On Tue, Apr 8, 2008 at 6:50 PM, Igor Vaynberg <[EMAIL PROTECTED]>
>  > wrote:
>  >
>  > > you dont need a panel for the repeater itself. as for variable
>  > > component hierarchy inside the repeater itself, you are correct: you
>  > > have to either use a panel or a fragment.
>  > >
>  > > -igor
>  > >
>  > >
>  > > On Tue, Apr 8, 2008 at 9:37 AM, Eric Rotick <[EMAIL PROTECTED]>
>  > > wrote:
>  > > > I thought I understood the component hierarchy but then I started to
>  > > tell
>  > > >  the guys about it and now I'm not so sure.
>  > > >
>  > > >  If the markup defines a hierarchy as A contains B contains C, in
>  > > effect,
>  > > >  this means that C is added to B which is added to A. If we expand B
>  > > to be
>  > > >  more complex we can use maybe a Panel which we identify as B but
>  > > inside it
>  > > >  is BA , BB and so on. So, all the time there is a direct relationship
>  > > >  between the wicket identified tags in the markup and the components
>  > > in the
>  > > >  code.
>  > > >
>  > > >  Now we introduce a repeater of some kind and it appears that the
>  > > component
>  > > >  hierarchy is broken but it's not. So if C was a repeater and it had 4
>  > > >  children then the hierarchy is still A to B to C but within C there
>  > > is C to
>  > > >  C1, C to C2 and so on.
>  > > >
>  > > >  Now, if we need to have a runtime variable amount of markup which is
>  > > >  variable, not in terms of the same markup repeated but completely
>  > > different
>  > > >  markup based on some logic then we might define a Panel which handles
>  > > the
>  > > >  variation. This is fine but what if the contents of the Panel is also
>  > > >  variable. In this case further Panels are needed until the variable
>  > > >  requirements are covered.
>  > > >
>  > > >  Now the rub; although there are components, such as
>  > > WebMarkupContainer which
>  > > >  can be used to group components, the use of any component which is
>  > > not
>  > > >  'transparent' must have the related wicket:id in some markup
>  > > somewhere.
>  > > >
>  > > >  So, lets take an example where we have a list of items which can be
>  > > just
>  > > >  text or a link which has an optional image. It seems that I have to
>  > > define
>  > > >  panels for :-
>  > > >
>  > > >    - wrapper panel for the list
>  > > >    - a link with it's text
>  > > >    - a link with it's text and image
>  > > >
>  > > >  So we have markup such as
>  > > >
>  > > >  <wicket:panel>
>  > > >  <ul>
>  > > >  <li wicket:id="items"/>
>  > > >  </ul>
>  > > >  </wicket:panel>
>  > > >
>  > > >  <wicket:panel>
>  > > >  <span wicket:id="link">
>  > > >  <span wicket:id="text"/>
>  > > >  </span>
>  > > >  </wicket:panel>
>  > > >
>  > > >  <wicket:panel>
>  > > >  <span wicket:id="link">
>  > > >  <span wicket:id="text"/>
>  > > >  <img wicket:id="image"/>
>  > > >   </span>
>  > > >  </wicket:panel>
>  > > >
>  > > >  Have I got this correct or have I gone astray somewhere?
>  > > >
>  > >
>  > > ---------------------------------------------------------------------
>  > > 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]

Reply via email to