Re: [Wicket-user] How to get desired DataTable layout
I didn't repaint it. It's just the WebMarkupContainer component that I missed putting in my Panel that caused the whole odd behaviour displaying problemAnyway it's now working for me after putting the WebMarkupContainer in the Panel. Thanks :) What Im confused about is, I don't understand why do we need to put in another WebMarkupContainer since Panel is already considered one? I never knew I have to use another WebMarkupContainer in the Panel to achieve the ajaxification of gridview in the pagination. It's a slight difference way of implementation if you compare it to the ajaxification of Pageable ListView in Panel, even though we can still use the WebMarkupContainer to achieve the same behaviour in Pageable ListView. Having said that, it reminds of another question. The question is, how do I use AjaxPagingNavigationLink and AjaxPagingNavigationIncrementLink in the Panel? The reason I want to use these two paging components is to customize the paging thingy we find in AjaxPagingNavigator. And I believe AjaxPagingNavigator comes only with the default 1 2 3 ... n paging display right? If im not mistaken, to customize the paging display, I have to use AjaxPagingNavigation and AjaxPagingNavigationBehavior as well right??? I have been trying to use AjaxPagingNavigation + NavigationLink + NavigationIncrementLink + NavigationBehavior to get this customization working, but it seems like everything I have been doing so far is not producing the behaviour I want it to be. Reason being is that when I click on the paging number or even the [First/Next] once, it doesn't flip to another page. It only does so when I clicked it twice, and if that's not enough bad, I feel like the whole page had been refreshed when it was flipped to another page after being clicked twice. Any idea on this? I think I must have missed out the association of implementation among these 4 AjaxPagingNavigation + Link + IncrementLink + Behaviour. My instinct is telling me that I may have done it a wrong way and not putting these association of 4 object correctly. All in all, I don't know where to start to get these 4 Ajax paging object working together. To guide me, it would be great if you can provide me a full skeleton code. Thanks. igor.vaynberg wrote: have you tried final WebMarkupContainer gridviewcontainer=new WebMarkupContainer(); gridviewcontainer.setOutputMarkupId(true); gridviewcontainer.add(new gridview(...)); gridviewcontainer.add(new ajaxpagingnavigator(...) { onAjaxEvent(target) { target.add(gridviewcontainer); } } this is a common practice with repeaters, you cannot repaint them directly, but rather have to repaint some container higher above. by default ajaxpagingnavigator repaints the ipageable, when that is a table tag (datatable) it works fine, when it isnt you have to do a bit more work. -igor On 4/19/07, Lec [EMAIL PROTECTED] wrote: Hie Igor, Just to provide more info on theGridView doesn't work in AjaxPagingNavigator part in case you don't get what I mean, when I said it's not working in AjaxPagingNavigator, I actually mean, the data manage to display onto the GridView, but when I try to click onto other page number, the displayed data still remain on the same page of the GridView. Any idea? Lec wrote: Hie Igor, I need to check with you. I noticed GridView only works in PagingNavigator but not in AjaxPagingNavigator, and to have it working in AjaxPagingNavigator, I tried implementing a IPageable interface into GridView but it wasn't fruitful. As far as I know and If im right about this, based on the javadoc I read, I came to know that GridView is not allowed be IPageable as GridView inherits wicket.extensions.markup.html.repeater.pageable.AbstractPageableView that have a final method of getPageCount, this is the method which we need to override if we were to implement a IPageable interface in GridView right? But this method is final and cannot be overriden. Am I missing anything here? Is there any workaround to this? It would be great if you can provide me a pointer as to how to get pageable behaviour in GridView. Thanks igor.vaynberg wrote: so what you want is an ajaxified gridview what you need is AjaxPagingNavigator which we already have, and AjaxFallbackOrderByBorder which we also already have. then you just need to create a panel that encapsulate and connects the gridview and the aforementioned two components - just like datatable does. -igor and your own version of orderbylink but On 1/16/07, Daniele Dellafiore [EMAIL PROTECTED] wrote: I want to provide different views of my data. Ajaxified table is good for multiple-columns view where columns are name title address and so on. The layout I have with the use of a GridView is such that each cell have all informations, so in cell 1,1 displays the entry number 1 with the picture and below a label
Re: [Wicket-user] How to get desired DataTable layout
On 4/20/07, Lec [EMAIL PROTECTED] wrote: I didn't repaint it. It's just the WebMarkupContainer component that I missed putting in my Panel that caused the whole odd behaviour displaying problemAnyway it's now working for me after putting the WebMarkupContainer in the Panel. Thanks :) What Im confused about is, I don't understand why do we need to put in another WebMarkupContainer since Panel is already considered one? I never knew I have to use another WebMarkupContainer in the Panel to achieve the ajaxification of gridview in the pagination. It's a slight difference way of implementation if you compare it to the ajaxification of Pageable ListView in Panel, even though we can still use the WebMarkupContainer to achieve the same behaviour in Pageable ListView. you dont need _another_ webmarkupcontainer, you just cant repaint the listview itself directly, eg do ajaxtarget.addcomponent(listview). in fact as of yesterday that will throw an exception. so you need to repaint its closest ancestor that is not a listview. Having said that, it reminds of another question. The question is, how do I use AjaxPagingNavigationLink and AjaxPagingNavigationIncrementLink in the Panel? The reason I want to use these two paging components is to customize the paging thingy we find in AjaxPagingNavigator. And I believe AjaxPagingNavigator comes only with the default 1 2 3 ... n paging display right? If im not mistaken, to customize the paging display, I have to use AjaxPagingNavigation and AjaxPagingNavigationBehavior as well right??? I have been trying to use AjaxPagingNavigation + NavigationLink + NavigationIncrementLink + NavigationBehavior to get this customization working, but it seems like everything I have been doing so far is not [...] our pagingnavigator and its ajax counterpart are not very well coded to make it easy to extend. the only thing i can tell you right now is that if you want to customize it you have to roll your own for anything but the simplest customizations. it was on our todolist to refactor, but we just havent found the time. -igor igor.vaynberg wrote: have you tried final WebMarkupContainer gridviewcontainer=new WebMarkupContainer(); gridviewcontainer.setOutputMarkupId(true); gridviewcontainer.add(new gridview(...)); gridviewcontainer.add(new ajaxpagingnavigator(...) { onAjaxEvent(target) { target.add(gridviewcontainer); } } this is a common practice with repeaters, you cannot repaint them directly, but rather have to repaint some container higher above. by default ajaxpagingnavigator repaints the ipageable, when that is a table tag (datatable) it works fine, when it isnt you have to do a bit more work. -igor On 4/19/07, Lec [EMAIL PROTECTED] wrote: Hie Igor, Just to provide more info on theGridView doesn't work in AjaxPagingNavigator part in case you don't get what I mean, when I said it's not working in AjaxPagingNavigator, I actually mean, the data manage to display onto the GridView, but when I try to click onto other page number, the displayed data still remain on the same page of the GridView. Any idea? Lec wrote: Hie Igor, I need to check with you. I noticed GridView only works in PagingNavigator but not in AjaxPagingNavigator, and to have it working in AjaxPagingNavigator, I tried implementing a IPageable interface into GridView but it wasn't fruitful. As far as I know and If im right about this, based on the javadoc I read, I came to know that GridView is not allowed be IPageable as GridView inherits wicket.extensions.markup.html.repeater.pageable.AbstractPageableView that have a final method of getPageCount, this is the method which we need to override if we were to implement a IPageable interface in GridView right? But this method is final and cannot be overriden. Am I missing anything here? Is there any workaround to this? It would be great if you can provide me a pointer as to how to get pageable behaviour in GridView. Thanks igor.vaynberg wrote: so what you want is an ajaxified gridview what you need is AjaxPagingNavigator which we already have, and AjaxFallbackOrderByBorder which we also already have. then you just need to create a panel that encapsulate and connects the gridview and the aforementioned two components - just like datatable does. -igor and your own version of orderbylink but On 1/16/07, Daniele Dellafiore [EMAIL PROTECTED] wrote: I want to provide different views of my data. Ajaxified table is good for multiple-columns view where columns are name title address and so on. The layout I have with the use of a GridView is such that each cell have all informations, so in cell 1,1 displays the entry number 1 with the picture and below a label with name, title, address on multiple lines. Cell 1,2 have the second entry and so on. In DataTable a single entry data are spaned over the row. What I want
Re: [Wicket-user] How to get desired DataTable layout
Thanks for the answer. Hmmm but my last question wasn't clearly quite answered :) Actually I was asking for a sample code of AjaxPagingNavigationLink/ AjaxPagingNavigationIncrementLink with AjaxPagingNavigationBehaviour as I had a difficult time in finding and understanding the correlations between them. My goal is to move away the default 1 2 ..n paging display in AjaxPagingNavigator to a more customized paging display. This explains the reason behind my attempt on the usage of AjaxPagingNavigationLink/ AjaxPagingNavigationIncrementLink with AjaxPagingNavigationBehaviour. But I don't know where to begin and what I'm missing now. A sample skeleton code will greatly help me to understand the correlation here. :) Any helps for me on this? igor.vaynberg wrote: On 4/20/07, Lec [EMAIL PROTECTED] wrote: I didn't repaint it. It's just the WebMarkupContainer component that I missed putting in my Panel that caused the whole odd behaviour displaying problemAnyway it's now working for me after putting the WebMarkupContainer in the Panel. Thanks :) What Im confused about is, I don't understand why do we need to put in another WebMarkupContainer since Panel is already considered one? I never knew I have to use another WebMarkupContainer in the Panel to achieve the ajaxification of gridview in the pagination. It's a slight difference way of implementation if you compare it to the ajaxification of Pageable ListView in Panel, even though we can still use the WebMarkupContainer to achieve the same behaviour in Pageable ListView. you dont need _another_ webmarkupcontainer, you just cant repaint the listview itself directly, eg do ajaxtarget.addcomponent(listview). in fact as of yesterday that will throw an exception. so you need to repaint its closest ancestor that is not a listview. Having said that, it reminds of another question. The question is, how do I use AjaxPagingNavigationLink and AjaxPagingNavigationIncrementLink in the Panel? The reason I want to use these two paging components is to customize the paging thingy we find in AjaxPagingNavigator. And I believe AjaxPagingNavigator comes only with the default 1 2 3 ... n paging display right? If im not mistaken, to customize the paging display, I have to use AjaxPagingNavigation and AjaxPagingNavigationBehavior as well right??? I have been trying to use AjaxPagingNavigation + NavigationLink + NavigationIncrementLink + NavigationBehavior to get this customization working, but it seems like everything I have been doing so far is not [...] our pagingnavigator and its ajax counterpart are not very well coded to make it easy to extend. the only thing i can tell you right now is that if you want to customize it you have to roll your own for anything but the simplest customizations. it was on our todolist to refactor, but we just havent found the time. -igor igor.vaynberg wrote: have you tried final WebMarkupContainer gridviewcontainer=new WebMarkupContainer(); gridviewcontainer.setOutputMarkupId(true); gridviewcontainer.add(new gridview(...)); gridviewcontainer.add(new ajaxpagingnavigator(...) { onAjaxEvent(target) { target.add(gridviewcontainer); } } this is a common practice with repeaters, you cannot repaint them directly, but rather have to repaint some container higher above. by default ajaxpagingnavigator repaints the ipageable, when that is a table tag (datatable) it works fine, when it isnt you have to do a bit more work. -igor On 4/19/07, Lec [EMAIL PROTECTED] wrote: Hie Igor, Just to provide more info on theGridView doesn't work in AjaxPagingNavigator part in case you don't get what I mean, when I said it's not working in AjaxPagingNavigator, I actually mean, the data manage to display onto the GridView, but when I try to click onto other page number, the displayed data still remain on the same page of the GridView. Any idea? Lec wrote: Hie Igor, I need to check with you. I noticed GridView only works in PagingNavigator but not in AjaxPagingNavigator, and to have it working in AjaxPagingNavigator, I tried implementing a IPageable interface into GridView but it wasn't fruitful. As far as I know and If im right about this, based on the javadoc I read, I came to know that GridView is not allowed be IPageable as GridView inherits wicket.extensions.markup.html.repeater.pageable.AbstractPageableView that have a final method of getPageCount, this is the method which we need to override if we were to implement a IPageable interface in GridView right? But this method is final and cannot be overriden. Am I missing anything here? Is there any workaround to this? It would be great if you can provide me a pointer as to how to get pageable behaviour in GridView. Thanks igor.vaynberg wrote: so what you want is an
Re: [Wicket-user] How to get desired DataTable layout
Hi, I tried to create a tabular listing with pagination completely from scratch using only ListView-s and you can look at the code here: http://fisheye3.cenqua.com/browse/j-trac/trunk/jtrac/src/main/java/info/jtrac/wicket/ItemListPanel.java?r=946 It's not Ajax, but may help as a reference. The pagination code is lines 75 - 167 HTML code is here: http://fisheye3.cenqua.com/browse/j-trac/trunk/jtrac/src/main/java/info/jtrac/wicket/ItemListPanel.html?r=962 Regards, Peter. On 4/20/07, Lec [EMAIL PROTECTED] wrote: Thanks for the answer. Hmmm but my last question wasn't clearly quite answered :) Actually I was asking for a sample code of AjaxPagingNavigationLink/ AjaxPagingNavigationIncrementLink with AjaxPagingNavigationBehaviour as I had a difficult time in finding and understanding the correlations between them. My goal is to move away the default 1 2 ..n paging display in AjaxPagingNavigator to a more customized paging display. This explains the reason behind my attempt on the usage of AjaxPagingNavigationLink/ AjaxPagingNavigationIncrementLink with AjaxPagingNavigationBehaviour. But I don't know where to begin and what I'm missing now. A sample skeleton code will greatly help me to understand the correlation here. :) Any helps for me on this? igor.vaynberg wrote: On 4/20/07, Lec [EMAIL PROTECTED] wrote: I didn't repaint it. It's just the WebMarkupContainer component that I missed putting in my Panel that caused the whole odd behaviour displaying problemAnyway it's now working for me after putting the WebMarkupContainer in the Panel. Thanks :) What Im confused about is, I don't understand why do we need to put in another WebMarkupContainer since Panel is already considered one? I never knew I have to use another WebMarkupContainer in the Panel to achieve the ajaxification of gridview in the pagination. It's a slight difference way of implementation if you compare it to the ajaxification of Pageable ListView in Panel, even though we can still use the WebMarkupContainer to achieve the same behaviour in Pageable ListView. you dont need _another_ webmarkupcontainer, you just cant repaint the listview itself directly, eg do ajaxtarget.addcomponent(listview). in fact as of yesterday that will throw an exception. so you need to repaint its closest ancestor that is not a listview. Having said that, it reminds of another question. The question is, how do I use AjaxPagingNavigationLink and AjaxPagingNavigationIncrementLink in the Panel? The reason I want to use these two paging components is to customize the paging thingy we find in AjaxPagingNavigator. And I believe AjaxPagingNavigator comes only with the default 1 2 3 ... n paging display right? If im not mistaken, to customize the paging display, I have to use AjaxPagingNavigation and AjaxPagingNavigationBehavior as well right??? I have been trying to use AjaxPagingNavigation + NavigationLink + NavigationIncrementLink + NavigationBehavior to get this customization working, but it seems like everything I have been doing so far is not [...] our pagingnavigator and its ajax counterpart are not very well coded to make it easy to extend. the only thing i can tell you right now is that if you want to customize it you have to roll your own for anything but the simplest customizations. it was on our todolist to refactor, but we just havent found the time. -igor igor.vaynberg wrote: have you tried final WebMarkupContainer gridviewcontainer=new WebMarkupContainer(); gridviewcontainer.setOutputMarkupId(true); gridviewcontainer.add(new gridview(...)); gridviewcontainer.add(new ajaxpagingnavigator(...) { onAjaxEvent(target) { target.add(gridviewcontainer); } } this is a common practice with repeaters, you cannot repaint them directly, but rather have to repaint some container higher above. by default ajaxpagingnavigator repaints the ipageable, when that is a table tag (datatable) it works fine, when it isnt you have to do a bit more work. -igor On 4/19/07, Lec [EMAIL PROTECTED] wrote: Hie Igor, Just to provide more info on theGridView doesn't work in AjaxPagingNavigator part in case you don't get what I mean, when I said it's not working in AjaxPagingNavigator, I actually mean, the data manage to display onto the GridView, but when I try to click onto other page number, the displayed data still remain on the same page of the GridView. Any idea? Lec wrote: Hie Igor, I need to check with you. I noticed GridView only works in PagingNavigator but not in AjaxPagingNavigator, and to have it working in AjaxPagingNavigator, I tried implementing a IPageable interface into GridView but it wasn't fruitful. As far as I know and If im right about this, based on the javadoc I read, I came to know that GridView is not allowed be IPageable as GridView inherits
Re: [Wicket-user] How to get desired DataTable layout
Hie Igor, I need to check with you. I noticed GridView only works in PagingNavigator but not in AjaxPagingNavigator, and to have it working in AjaxPagingNavigator, I tried implementing a IPageable interface into GridView but it wasn't fruitful. As far as I know and If im right about this, based on the javadoc I read, I came to know that GridView is not allowed be IPageable as GridView inherits wicket.extensions.markup.html.repeater.pageable.AbstractPageableView that have a final method of getPageCount, this is the method which we need to override if we were to implement a IPageable interface in GridView right? But this method is final and cannot be overriden. Am I missing anything here? Is there any workaround to this? It would be great if you can provide me a pointer as to how to get pageable behaviour in GridView. Thanks igor.vaynberg wrote: so what you want is an ajaxified gridview what you need is AjaxPagingNavigator which we already have, and AjaxFallbackOrderByBorder which we also already have. then you just need to create a panel that encapsulate and connects the gridview and the aforementioned two components - just like datatable does. -igor and your own version of orderbylink but On 1/16/07, Daniele Dellafiore [EMAIL PROTECTED] wrote: I want to provide different views of my data. Ajaxified table is good for multiple-columns view where columns are name title address and so on. The layout I have with the use of a GridView is such that each cell have all informations, so in cell 1,1 displays the entry number 1 with the picture and below a label with name, title, address on multiple lines. Cell 1,2 have the second entry and so on. In DataTable a single entry data are spaned over the row. What I want is that all data of a single entry stay in a single cell. What I expect is to tell my view how many columns I have and a row is created when there is no more column available. This is what a GridView already does. What I want is to obtain an ajaxified component that wraps a GridView like the AjaxFallbackDefaultDataTable does with DataGridView inheriting from DataTable. In this way I Can obtain the ajax-behavior when changing pages and resorting data. On 1/16/07, Igor Vaynberg [EMAIL PROTECTED] wrote: i dont get what you are trying to describe, can you try again? are you trying to ajaxify the gridview? use datatable to show non-tabular data? -igor On 1/16/07, Daniele Dellafiore [EMAIL PROTECTED] wrote: Hi. I am using a AjaxFallbackDefaultDataTable to display some search results and this is good for typical multiple-columns layout. I want results also to be displayed in a grid layout, where a whole single result stays in a single cell (an image and a text label below). I can't figure out how to do with a DataTable but I can do this with a GridView but I want the ajaxified version... So I have explored the various options wicket offers to display data and I have some problems. Before starting, I have noticed an error the wiki here: http://cwiki.apache.org/WICKET/tables-and-grids.html maybe this informations are just out of date? Back to the problem: DataTable wraps a DataGridView, so my question is: there is a way to obtain my desired layout with a DataGridView and so from a DataTable? Or, have I to use GridView instead? I have tried to build a solution following the second way, making a sort of DataTable that wraps a GridView, the code is taken from original DataTable. This was simple, both GridView and DataGridView extends BaseDataView and there are just some different methods (setRows instead of setRowsPerPage...) Problems arise when I try to make the ajaxified version due to the fact that a lot of components used by AjaxFallbackDefaultDataTable make direct use of DataTable... This difficoulties to me seem related to the fact that inheritance is often used where probably would have given more power to user that wanted to extends funcionality and behavior of existing classes. Maybe this is just an impression due to the fact I am new to wicket... Any advice is welcome, thanks. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your
Re: [Wicket-user] How to get desired DataTable layout
so what you want is an ajaxified gridview what you need is AjaxPagingNavigator which we already have, and AjaxFallbackOrderByBorder which we also already have. then you just need to create a panel that encapsulate and connects the gridview and the aforementioned two components - just like datatable does. -igor and your own version of orderbylink but On 1/16/07, Daniele Dellafiore [EMAIL PROTECTED] wrote: I want to provide different views of my data. Ajaxified table is good for multiple-columns view where columns are name title address and so on. The layout I have with the use of a GridView is such that each cell have all informations, so in cell 1,1 displays the entry number 1 with the picture and below a label with name, title, address on multiple lines. Cell 1,2 have the second entry and so on. In DataTable a single entry data are spaned over the row. What I want is that all data of a single entry stay in a single cell. What I expect is to tell my view how many columns I have and a row is created when there is no more column available. This is what a GridView already does. What I want is to obtain an ajaxified component that wraps a GridView like the AjaxFallbackDefaultDataTable does with DataGridView inheriting from DataTable. In this way I Can obtain the ajax-behavior when changing pages and resorting data. On 1/16/07, Igor Vaynberg [EMAIL PROTECTED] wrote: i dont get what you are trying to describe, can you try again? are you trying to ajaxify the gridview? use datatable to show non-tabular data? -igor On 1/16/07, Daniele Dellafiore [EMAIL PROTECTED] wrote: Hi. I am using a AjaxFallbackDefaultDataTable to display some search results and this is good for typical multiple-columns layout. I want results also to be displayed in a grid layout, where a whole single result stays in a single cell (an image and a text label below). I can't figure out how to do with a DataTable but I can do this with a GridView but I want the ajaxified version... So I have explored the various options wicket offers to display data and I have some problems. Before starting, I have noticed an error the wiki here: http://cwiki.apache.org/WICKET/tables-and-grids.html maybe this informations are just out of date? Back to the problem: DataTable wraps a DataGridView, so my question is: there is a way to obtain my desired layout with a DataGridView and so from a DataTable? Or, have I to use GridView instead? I have tried to build a solution following the second way, making a sort of DataTable that wraps a GridView, the code is taken from original DataTable. This was simple, both GridView and DataGridView extends BaseDataView and there are just some different methods (setRows instead of setRowsPerPage...) Problems arise when I try to make the ajaxified version due to the fact that a lot of components used by AjaxFallbackDefaultDataTable make direct use of DataTable... This difficoulties to me seem related to the fact that inheritance is often used where probably would have given more power to user that wanted to extends funcionality and behavior of existing classes. Maybe this is just an impression due to the fact I am new to wicket... Any advice is welcome, thanks. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user - Take Surveys. Earn Cash. Influence the Future of IT Join