Get rid of your large scroll area and use data tables with 50-100 rows per
page along with a filter panel.
That'll be more like the "wicket developer" way.

As for the fancy infinite scrolling, I would strongly suggest you take the
advise and consider what Martin said about using lazy loading repeaters
with DOM elements being added and removed unless you want to get the all
familiar "This application stopped responding, would you like to terminate
it now" error from Windows whenever you scroll past first few hundred rows
in IE :)

~ Thank you,
   Paul Bors

On Wed, Mar 27, 2013 at 9:29 AM, vineet semwal <[email protected]>wrote:

> i was expecting this case too :-) but it's a very unusual usecase for a
> *user* but not for wicket developer ,i have an easy(may be stupid) idea for
> this,no need of quickview :-) ,show only one repeater's page items  to user
> like as usual.., on scroll event just  repaint the repeater's parent
> ,foreg. with dataview on event
>
> dataview.setcurrentpage(dataview.getcurrentpage()+1) //plus or minus 1
> depending on scroll direction
> target.add(parent)
>
> that might be the cheapest/baddest way of achieving this usecase :-)
>
>
> On Wed, Mar 27, 2013 at 5:28 PM, Martin Grigorov <[email protected]
> >wrote:
>
> > Hi,
> >
> > I mean something like
> > https://github.com/mleibman/SlickGrid/wiki#virtual-rendering - DOM
> objects
> > are added and removed while scrolling, thus keeping the DOM tree size
> small
> >
> >
> > On Wed, Mar 27, 2013 at 12:52 PM, vineet semwal <
> [email protected]
> > >wrote:
> >
> > > hi ,
> > > do you mean removing items when you said unloading?
> > > the scroll behavior and navigator that are in the package just do
> > > quickview#addItemsForNextPage()  on event like in this example
> > >
> > >
> >
> https://github.com/vineetsemwal/quickview/blob/master/wicket-quickview-examples/src/main/java/com/aplombee/examples/PageScrollBar.java
> > >
> > > somone who doesn't want to maintain state can do
> > >
> > > *protected* void onScroll(AjaxRequestTarget target) {
> > > //this removes items but do not update client view
> > > quickView.simpleRemoveAll();
> > >  addItemsForNextPage(quickView);
> > >             }
> > >
> > > as in this case the state is not maintained hence not good for someone
> > > who wants to use stateful components ..
> > > may be i am just misunderstanding you :-)
> > >
> > >
> > >
> > > On Wed, Mar 27, 2013 at 1:01 PM, Martin Grigorov <[email protected]
> > > >wrote:
> > >
> > > > Check https://github.com/vineetsemwal/quickview - a lazy loading
> > > repeater.
> > > > I'm not sure whether it also unloads items which are no more visible.
> > > >
> > > >
> > > > On Wed, Mar 27, 2013 at 12:16 AM, Ernesto Reinaldo Barreiro <
> > > > [email protected]> wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > Angular is just a "detail" on the approach I was suggesting... You
> > can
> > > > > achieve "the same" using "plain" jquery to ask for JSON and do
> > > "creation"
> > > > > of rows at client side iterating over results. If you do thing
> nicely
> > > you
> > > > > can still have some kind of componentization and the performance
> will
> > > be
> > > > a
> > > > > lot better...  Not to mention use of resources at server side.
> > > > >
> > > > > On Tue, Mar 26, 2013 at 9:10 PM, Marco Springer <
> [email protected]>
> > > > > wrote:
> > > > >
> > > > > > I've looked at Angular a while back and it certainly looks
> > > interesting.
> > > > > >
> > > > > > However I don't think it's wise to introduce another technology
> > > within
> > > > > the
> > > > > > current company where I'm migrating a rather large CGI-BIN
> > > application
> > > > > to a
> > > > > > Wicket variant and into several modules.
> > > > > > I'm the main JAVA/Wicket guy now, the others are mainly C++
> > > developers
> > > > > with
> > > > > > some JAVA knowledge and growing in that knowledge as more and
> more
> > > > parts
> > > > > > are
> > > > > > converted into Wicket counterparts.
> > > > > > So they already have to get known with:
> > > > > > Hibernate, parts of Spring, Wicket, Maven and HTML, CSS & JS.
> > > > > >
> > > > > > Sooo for now.. I'm sticking with Wicket only.
> > > > > > And with the zoomed out version and restricting the date range,
> > ergo
> > > > > > reducing
> > > > > > the amount of components.., that fixes things.
> > > > > >
> > > > > > The future will give me plenty of time make things even fancier.
> > > > Perhaps
> > > > > > even
> > > > > > the use of Angular.
> > > > > >
> > > > > > On Tuesday 26 March 2013 19:55:30 Ernesto Reinaldo Barreiro
> wrote:
> > > > > > > I mean: This same component could be used as "context" for AJAX
> > > > > > > interactions.
> > > > > > >
> > > > > > > On Tue, Mar 26, 2013 at 7:42 PM, Ernesto Reinaldo Barreiro <
> > > > > > >
> > > > > > > [email protected]> wrote:
> > > > > > > > Why don't you try rolling your own component that at sever
> side
> > > > just
> > > > > > > > serves JSON and you build up "rich functionality" at client
> > side.
> > > > > This
> > > > > > > > same
> > > > > > > > context could be used as "context" for AJAX interactions.
> > > Something
> > > > > > like
> > > > > > > >
> > > > > > > > http://www.antiliasoft.com/wicket-angular-demo/
> > > > > > > >
> > > > > > > > On Tue, Mar 26, 2013 at 5:23 PM, Marco Springer <
> > > > [email protected]
> > > > > > >wrote:
> > > > > > > >> I'm building a Gantt like interface with Wicket (nearly
> > > finished).
> > > > > > > >> It was a requirement to see multiple years of planned items,
> > in
> > > > the
> > > > > > > >> extreme
> > > > > > > >> range even.
> > > > > > > >>
> > > > > > > >> I've down-tuned it to be around max ~3k (8 years) of
> > components
> > > in
> > > > > > that
> > > > > > > >> listview, through the power of persuasion and as a test.
> > > > > > > >> At 3k components, the getId() method is called quite a
> > > reasonable
> > > > > > amount
> > > > > > > >> of
> > > > > > > >> times. around 4.5M'ish times through the children_indexOf
> > > method.
> > > > > > > >>
> > > > > > > >> But you're absolutely right, 100k components is bull.
> > > > > > > >>
> > > > > > > >> Right now I've settled with them that I'd change the view of
> > the
> > > > > > Gantt to
> > > > > > > >> be
> > > > > > > >> less detailed when that amount of data is in there. The UI
> is
> > > > quite
> > > > > > > >> flexible in
> > > > > > > >> that I can change what I render.
> > > > > > > >>
> > > > > > > >> With 2 years, only 731 columns are rendered, each day is a
> > > column.
> > > > > > > >> When > 2 years, I change the view to a more zoomed out
> > version.
> > > > > > > >> With 8 years, only 97 columns are rendered, each month
> being a
> > > > > column.
> > > > > > > >>
> > > > > > > >> Etc...
> > > > > > > >>
> > > > > > > >> Still with all the components taken in as it is a Gantt
> chart
> > > > kinda
> > > > > > > >> interface,
> > > > > > > >> the browsers that I test in are only getting a bit sluggish
> > when
> > > > I'm
> > > > > > > >> displaying around 2k of components on this Intel Q8200.
> > > > > > > >> I'm not displaying any fancy gif's/flash or whatever, only
> > allot
> > > > of
> > > > > > div's
> > > > > > > >> and
> > > > > > > >> some svg overlays through jsPlumb for dependency display.
> > > > > > > >>
> > > > > > > >> I mainly found it staggering that the getId() function was
> > > called
> > > > > that
> > > > > > > >> much.
> > > > > > > >> As Martin said, I'm targeting to limit the amount of
> > components
> > > > that
> > > > > > > >> should be
> > > > > > > >> rendered now, although sometimes hard with this kind of
> > > interface.
> > > > > > > >>
> > > > > > > >> Cheers.
> > > > > > > >>
> > > > > > > >> On Tuesday 26 March 2013 08:23:19 Igor Vaynberg wrote:
> > > > > > > >> > putting a 100000 components into a page is ill advised
> even
> > if
> > > > > they
> > > > > > > >> > are under different parents.
> > > > > > > >>
> > > > > > > >>
> > > > >
> ---------------------------------------------------------------------
> > > > > > > >> To unsubscribe, e-mail: [email protected]
> > > > > > > >> For additional commands, e-mail:
> [email protected]
> > > > > > > >
> > > > > > > > --
> > > > > > > > Regards - Ernesto Reinaldo Barreiro
> > > > > >
> > > > > >
> > ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: [email protected]
> > > > > > For additional commands, e-mail: [email protected]
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Regards - Ernesto Reinaldo Barreiro
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Martin Grigorov
> > > > jWeekend
> > > > Training, Consulting, Development
> > > > http://jWeekend.com <http://jweekend.com/>
> > > >
> > >
> > >
> > >
> > > --
> > > regards,
> > >
> > > Vineet Semwal
> > >
> >
> >
> >
> > --
> > Martin Grigorov
> > jWeekend
> > Training, Consulting, Development
> > http://jWeekend.com <http://jweekend.com/>
> >
>
>
>
> --
> regards,
>
> Vineet Semwal
>

Reply via email to