Hi Igor,

Thanks for that nice explanation. It's totally clear now. I've added a 
wiki entry under

http://www.wicket-wiki.org.uk/wiki/index.php/Reference_library#Wicket_reference

at

http://www.wicket-wiki.org.uk/wiki/index.php/Tablesandgrids

It is still very rough, but that's all the time I got today. Can you 
check and change where necessary.

Thanks again,

Huy

> simple answer is "because" :)
>
> if you look at the class hieararchy you will see that every repeater 
> builds on the other.
>
> at the top we have RepeatingView - this is a very basic repeater. you 
> add items to it - those items are rendered using the repeater's 
> markup. thats all it does.
>
> below that we have a RefreshingView - this view takes an 
> iterator<imodel> and lets user generate items much based on that 
> iterator much like listview. items are also refreshed every request 
> unlike the repeatingview. the big differences when compared to 
> listview is that refreshing view works with iterators where as 
> listview is limited to lists. another big difference is that 
> refreshingview makes you wrap each iterator item in a model where as 
> listview doesnot (you have to override getlistitemmodel() to do that 
> in a listview) - by doing this you avoid all kinds of problems when 
> dealing with non-static collections. it is easy to use any iterator by 
> using ModelIteratorAdapter.
>
> below that we have a AbstractPageableView - this is like 
> refreshingview + paging support
>
> below that we have DataView  GridView
>
> DataView- this is a pageable view that is populated via idataprovider 
> instead of an iterator<model> which makes working with databases much 
> simpler
>
> GridView makes it simple to show an iterator in a grid where each row 
> can have a max number of items
>
> below the DataView we have DataGridView - this is a view that extends 
> the dataview with the idea of populators and makes displaying tabular 
> data easy by letting populators populate each cell instead of you 
> doing that in populateitem() yourself. the idea is that depending on 
> rolls/whatnot you can vary the list of populators and simplify the logic.
>
> then there is also a datatable - the mcdaddy if you will - datatable 
> extends the tree not by inheritance but by delegation. it wraps a 
> datagridview and provides all the markup for you so you dont have to. 
> it adds support for interchangeable toolbars like sortable headers, 
> filters, pagers, etc.
>
> i think thats all of them. so why there are so many? because there are 
> many uscases having a hierarchy like this lets you pick a component 
> that delivers the exact functionality you need. personally i hate 
> using components that have a bunch of extra features im not going to 
> be using for my usecase - so maybe thats why i structured the 
> repeaters like this when i built them. at the end i think everyone wins.
>
> hope this helps, mind cleaning this up and making a wiki page? :)
>
> -Igor
>
>
>
>
>
> On 8/28/06, *Huy Do* < [EMAIL PROTECTED] 
> <mailto:[EMAIL PROTECTED]>> wrote:
>
>     Hi,
>
>     Just a something I'm a bit confused about being a wicket hobbyist.
>     Why
>     does wicket provide so many different options for the display of
>     tables
>     (as seen in the wicket contrib examples). It makes it hard to
>     figure out
>     which is the correct/or suitable method.
>
>     Any guidance ?
>
>     Also, are there any examples of producing forms like the following ?
>
>     eg. I have domain Order and Order Lines.
>
>     I want to create a form to edit both
>
>     order.order_no
>     order.date
>     ...
>     ...
>
>     order.line[0].item_code
>     order.line[0].item_qty
>     ...
>     ...
>     ...
>     order.line[x].item_qty
>
>     Thanks,
>
>     Huy
>
>     -------------------------------------------------------------------------
>     Using Tomcat but need to do more? Need to support web services,
>     security?
>     Get stuff done quickly with pre-integrated technology to make your
>     job easier
>     Download IBM WebSphere Application Server v.1.0.1 based on Apache
>     Geronimo
>     http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
>     <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642>
>     _______________________________________________
>     Wicket-user mailing list
>     Wicket-user@lists.sourceforge.net
>     <mailto:Wicket-user@lists.sourceforge.net>
>     https://lists.sourceforge.net/lists/listinfo/wicket-user
>
>
> ------------------------------------------------------------------------
>
> -------------------------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> ------------------------------------------------------------------------
>
> _______________________________________________
> Wicket-user mailing list
> Wicket-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wicket-user
>   


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to