This is an automated email from the ASF dual-hosted git repository.

reiern70 pushed a commit to branch make_datatables_more_easy_to_override_10_X
in repository https://gitbox.apache.org/repos/asf/wicket.git

commit 55e10832ce22e7a122003d6c88e8e549814aa6c2
Author: reiern70 <reier...@gmail.com>
AuthorDate: Thu Nov 18 12:17:14 2021 +0300

    [WICKET-6935] several minor datatable improvements
---
 .../data/table/AjaxFallbackDefaultDataTable.java        | 11 ++++++++++-
 .../html/repeater/data/table/NavigationToolbar.java     | 17 ++++++-----------
 .../markup/html/repeater/data/table/NavigatorLabel.java |  8 ++++----
 3 files changed, 20 insertions(+), 16 deletions(-)

diff --git 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
index 0cf9af3..795cef7 100644
--- 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
+++ 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/repeater/data/table/AjaxFallbackDefaultDataTable.java
@@ -71,8 +71,17 @@ public class AjaxFallbackDefaultDataTable<T, S> extends 
DataTable<T, S>
                super(id, columns, dataProvider, rowsPerPage);
                setOutputMarkupId(true);
                setVersioned(false);
+               addToolBars(dataProvider);
+       }
+
+       /**
+        * Factory method for toolbars
+        * @param dataProvider {@link 
org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider}
+        */
+       protected void addToolBars(final ISortableDataProvider<T, S> 
dataProvider)
+       {
                addTopToolbar(new AjaxNavigationToolbar(this));
-               addTopToolbar(new AjaxFallbackHeadersToolbar(this, 
dataProvider));
+               addTopToolbar(new AjaxFallbackHeadersToolbar<>(this, 
dataProvider));
                addBottomToolbar(new NoRecordsToolbar(this));
        }
 
diff --git 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
index 70515de..1adee04 100644
--- 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
+++ 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigationToolbar.java
@@ -17,8 +17,10 @@
 package org.apache.wicket.extensions.markup.html.repeater.data.table;
 
 import org.apache.wicket.AttributeModifier;
+import org.apache.wicket.Component;
 import org.apache.wicket.markup.html.WebComponent;
 import org.apache.wicket.markup.html.WebMarkupContainer;
+import org.apache.wicket.markup.html.navigation.paging.IPageableItems;
 import org.apache.wicket.markup.html.navigation.paging.PagingNavigator;
 import org.apache.wicket.model.IModel;
 
@@ -44,14 +46,7 @@ public class NavigationToolbar extends AbstractToolbar
 
                WebMarkupContainer span = new WebMarkupContainer("span");
                add(span);
-               span.add(AttributeModifier.replace("colspan", new 
IModel<String>()
-               {
-                       @Override
-                       public String getObject()
-                       {
-                               return 
String.valueOf(table.getColumns().size()).intern();
-                       }
-               }));
+               span.add(AttributeModifier.replace("colspan", (IModel<String>) 
() -> String.valueOf(table.getColumns().size()).intern()));
 
                span.add(newPagingNavigator("navigator", table));
                span.add(newNavigatorLabel("navigatorLabel", table));
@@ -73,16 +68,16 @@ public class NavigationToolbar extends AbstractToolbar
        }
 
        /**
-        * Factory method used to create the navigator label that will be used 
by the datatable
+        * Factory method used to create the navigator label.
         * 
         * @param navigatorId
         *            component id navigator label should be created with
         * @param table
-        *            dataview used by datatable
+        *            DataTable used by datatable
         * @return navigator label that will be used to navigate the data table
         * 
         */
-       protected WebComponent newNavigatorLabel(final String navigatorId, 
final DataTable<?, ?> table)
+       protected Component newNavigatorLabel(final String navigatorId, final 
DataTable<?, ?> table)
        {
                return new NavigatorLabel(navigatorId, table);
        }
diff --git 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
index 283118e..fbbfcbe 100644
--- 
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
+++ 
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/NavigatorLabel.java
@@ -40,8 +40,8 @@ public class NavigatorLabel extends Label
        /**
         * Construct.
         * 
-        * @param id
-        * @param pageable
+        * @param id The id
+        * @param pageable {@link 
org.apache.wicket.markup.html.navigation.paging.IPageableItems}
         */
        public NavigatorLabel(final String id, final IPageableItems pageable)
        {
@@ -50,7 +50,7 @@ public class NavigatorLabel extends Label
                        new Model<>(new LabelModelObject(pageable))));
        }
 
-       private static class LabelModelObject implements IClusterable
+       public static class LabelModelObject implements IClusterable
        {
                private static final long serialVersionUID = 1L;
                private final IPageableItems pageable;
@@ -58,7 +58,7 @@ public class NavigatorLabel extends Label
                /**
                 * Construct.
                 * 
-                * @param table
+                * @param table {@link 
org.apache.wicket.markup.html.navigation.paging.IPageableItems}
                 */
                public LabelModelObject(final IPageableItems table)
                {

Reply via email to