Bruno, your problem is more of an issue with code beauty and design? I agree that it's a bit misleading to have an setVisible method that does nothing... As adding a fairly synthetic AjaxComponent subclass to Component for using as a parent for every ajax-enabled component doesn't seem justified, what if ListView (and other possible repeaters) would throw UnsupportedOperationException or something like that?
Of course, that would mean making Component.setVisible not final... Alvar On 5/18/06, Igor Vaynberg <[EMAIL PROTECTED]> wrote:
i disagree, wicket's primary usecase is not ajax, but regular rendering. ajax is a very nice bonus and does not always work as smoothly as we would like. now the ajax solution for the listview is quiet easy, put it into a webmarkupcontainer and update that container instead of the listview via ajax WebMarkupContainer listviewcontainer=new WebMarkupContainer("listviewcontainer"); ListView listview=new ListView("listview", ..... listviewContainer.add(listview); <span wicket:id="listviewcontainer"><ul><li wicket:id="listview">blah</li></ul></span> ... target.addComponent(listviewcontainer); this has the added advantage of hiding the listview's container, be that a ul or a table -Igor On 5/17/06, Bruno Borges <[EMAIL PROTECTED]> wrote: > > > > one thing we might try is to add an isvisible check to internalOnAttach() so that lsitview does not create children if it is not visible. johan what do you think? > > > > > Igor, the problem is that we need to make possible the call for setVisible(false), just like any other component... _after_ the component was printed out (for example, hidding a list view within an AjaxLink). > > If this can't be done, ListView must be of other type except Component. > > > > > > > > On 5/17/06, Igor Vaynberg <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > > > Sure, I know about that, but the way we code for other things like Label or TextField, it works, right? So, for ListView it should work too. It's a component just like other. > > > > > > > > listview is very much different from ordinary components like label and textfield. listview is a repeater. repeaters have no markup of their own and they produce no markup. > > > > the markup you assign to the listview using wicket:id the listview delegates to its children. the markup you see in the output generated by listview does not come from the listview itself, but from its children that render themselves. > > > > one thing we might try is to add an isvisible check to internalOnAttach() so that lsitview does not create children if it is not visible. johan what do you think? > > > > -Igor > > > > > > > > > -- > Bruno Borges > Summa Technologies
------------------------------------------------------- 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&kid0709&bid&3057&dat1642 _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user