Thank you, I will review the models page on the wiki. If I can figure out a
working solution I will post it here.
This certainly seems like a good candidate for a DataTable Toolbar so that
developers can easily add a dropdown to allow users to change the number of
rows displayed.
- JA
igor.vaynberg wrote:
>
> On 8/27/07, janders <[EMAIL PROTECTED]> wrote:
>>
>>
>> I understand, but being a newbie, this makes little sense. Where is
>> wantOnSelectionChangedNotifications()
>> and onSelectionChanged(). Aren't these require?
>
>
> only if you want the selection updated right after selecting a new value
> in
> the dropdown
>
> How does the selection
>> value get passed to rowsPerPage? Can you point me to a working example?
>
>
> im afraid i dont know of any cases that do this exact thing. what i have
> shown you should work, i suggest you read the models page on the wiki.
>
> -igor
>
>
>
> BTW, I'm currently using Wicket 1.2.3.
>>
>>
>>
>> igor.vaynberg wrote:
>> >
>> > heh, you have to meet us half way here. you cant expect to be able to
>> > paste
>> > pseudocode into the ide and have it compile and work.
>> >
>> > the int[] param is intended to be the third constructor param of
>> > dropdownchoice not the second param of add().
>> >
>> > if you are using an older wicket ver - 1.2 then imodel has an extra
>> > component param which you can ignore
>> >
>> > my point is: look at what the example is trying to do.
>> >
>> > -igor
>> >
>> >
>> > On 8/27/07, janders <[EMAIL PROTECTED]> wrote:
>> >>
>> >>
>> >> I'm new to wicket and I fail to see how the proposed solution
>> >> works. Coping
>> >> this into the IDE, and even after correcting for caps, there are
>> several
>> >> errors. For one, add takes a component, not a component plus int[].
>> >> Also
>> >> IModel wanted to implement unimplemented methods. What I'm I missing?
>> >>
>> >>
>> >>
>> >> igor.vaynberg wrote:
>> >> >
>> >> > class mypage() {
>> >> > static int[] pages=new int[] {10,15,20,25};
>> >> >
>> >> > public mypage () {
>> >> > final DataTable dt=new datatable(..);
>> >> >
>> >> > add(new dropdownchoice("pages", new imodel() {
>> >> > void setObject(Object e) { dt.setrowsperpage((Integer)e); }
>> >> > Object getObject() { return td.getrowsperpage(); }
>> >> > void detach() {}), pages);
>> >> > }
>> >> >
>> >> > -igor
>> >> >
>> >> >
>> >> > On 8/26/07, janders <[EMAIL PROTECTED]> wrote:
>> >> >>
>> >> >>
>> >> >> The format of the Exception got munged with the example code. This
>> >> should
>> >> >> read as:
>> >> >>
>> >> >> IllegalStateException: Attempt to set model object on null model of
>> >> >> component: rows
>> >> >>
>> >> >> final DataTable contacts = NEWDataTable("contacts", columns,
>> >> >> contactProvider, rowsPerPage) {
>> >> >> @Override
>> >> >> PROTECTEDItem newRowItem(String id, INTindex, IModel model) {
>> >> >> RETURNNEWOddEvenItem(id, index, model);
>> >> >> }
>> >> >> };
>> >> >>
>> >> >>
>> >> >> janders wrote:
>> >> >> >
>> >> >> > I would like to be able to add a dropdown to a DataTable so that
>> a
>> >> user
>> >> >> > can change the rowsPerPage. Has anyone done this before? If
>> not,
>> >> what
>> >> >> is
>> >> >> > the best / recommended approach?
>> >> >> > I tried the following, but I get:
>> >> >> >
>> >> >> > IllegalStateException: Attempt to set model object on null model
>> of
>> >> >> > component: rowsFINALDataTable contacts = NEWDataTable("contacts",
>> >> >> columns,
>> >> >> > contactProvider, rowsPerPage) {
>> >> >> > @Override
>> >> >> > PROTECTEDItem newRowItem(String id, INTindex, IModel model) {
>> >> >> > RETURNNEWOddEvenItem(id, index, model);
>> >> >> > }
>> >> >> > };
>> >> >> >
>> >> >> > List rows = Arrays._asList_(NEWString[] {"5", "10", "15", "20",
>> >> >> "all"});
>> >> >> > add(NEWDropDownChoice("rows", rows) {
>> >> >> > @Override
>> >> >> > PROTECTEDBOOLEANwantOnSelectionChangedNotifications() {
>> >> >> > RETURNTRUE;
>> >> >> > }
>> >> >> > @Override
>> >> >> > PROTECTEDVOIDonSelectionChanged(FINALObject newSelection) {
>> >> >> > IF(newSelection == "all") {
>> >> >> > contacts.setRowsPerPage(100000); // use really big
>> >> number
>> >> >> to
>> >> >> > display all
>> >> >> > } ELSE{
>> >> >> > contacts.setRowsPerPage((Integer) newSelection);
>> >> >> > }
>> >> >> > }
>> >> >> > });
>> >> >> >
>> >> >> > - JA
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >>
>> >> >> --
>> >> >> View this message in context:
>> >> >>
>> >>
>> http://www.nabble.com/DataTable-with-DropDownChoice-to-set-rowsPerPage-tf4332526.html#a12339585
>> >> >> Sent from the Wicket - User mailing list archive at Nabble.com.
>> >> >>
>> >> >>
>> >> >>
>> ---------------------------------------------------------------------
>> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
>> >> >>
>> >> >>
>> >> >
>> >> >
>> >>
>> >> --
>> >> View this message in context:
>> >>
>> http://www.nabble.com/DataTable-with-DropDownChoice-to-set-rowsPerPage-tf4332526.html#a12361849
>> >> Sent from the Wicket - User mailing list archive at Nabble.com.
>> >>
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> For additional commands, e-mail: [EMAIL PROTECTED]
>> >>
>> >>
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/DataTable-with-DropDownChoice-to-set-rowsPerPage-tf4332526.html#a12362157
>> Sent from the Wicket - User mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
--
View this message in context:
http://www.nabble.com/DataTable-with-DropDownChoice-to-set-rowsPerPage-tf4332526.html#a12362311
Sent from the Wicket - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]