From 7babdf719ca5641b8ad7ea1421c342d6cfcc427a Mon Sep 17 00:00:00 2001 From: Tarek Oraby <42799254+tarekoraby@users.noreply.github.com> Date: Wed, 26 Aug 2020 17:31:58 +0300 Subject: Add API to detect if GridMultiSelect select-all checkbox is checked (#12086) --- .../com/vaadin/ui/components/grid/GridMultiSelect.java | 14 ++++++++++++++ .../com/vaadin/ui/components/grid/MultiSelectionModel.java | 12 ++++++++++++ .../vaadin/ui/components/grid/MultiSelectionModelImpl.java | 10 +--------- 3 files changed, 27 insertions(+), 9 deletions(-) (limited to 'server') diff --git a/server/src/main/java/com/vaadin/ui/components/grid/GridMultiSelect.java b/server/src/main/java/com/vaadin/ui/components/grid/GridMultiSelect.java index 2e98230a6f..e376f72711 100644 --- a/server/src/main/java/com/vaadin/ui/components/grid/GridMultiSelect.java +++ b/server/src/main/java/com/vaadin/ui/components/grid/GridMultiSelect.java @@ -187,6 +187,20 @@ public class GridMultiSelect implements MultiSelect { model.setUserSelectionAllowed(allowed); } + /** + * Returns whether all items are selected or not. + *

+ * This is only {@code true} if user has selected all rows with the select + * all checkbox on client side, or if {@link #selectAll()} has been used + * from server side. + * + * @return {@code true} if all selected, {@code false} if not + * @since 8.12.0 + */ + public boolean isAllSelected() { + return model.isAllSelected(); + } + /** * Checks if the user is allowed to change the selection. *

diff --git a/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModel.java b/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModel.java index 305a4fbaf9..35f948ca46 100644 --- a/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModel.java +++ b/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModel.java @@ -135,4 +135,16 @@ public interface MultiSelectionModel * @see #setSelectAllCheckBoxVisibility(SelectAllCheckBoxVisibility) */ public boolean isSelectAllCheckBoxVisible(); + + /** + * Returns whether all items are selected or not. + *

+ * This is only {@code true} if user has selected all rows with the select + * all checkbox on client side, or if {@link #selectAll()} has been used + * from server side. + * + * @return {@code true} if all selected, {@code false} if not + * @since 8.12.0 + */ + boolean isAllSelected(); } diff --git a/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModelImpl.java b/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModelImpl.java index 0ef1d1a5f7..7d8c6d7d85 100644 --- a/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModelImpl.java +++ b/server/src/main/java/com/vaadin/ui/components/grid/MultiSelectionModelImpl.java @@ -131,15 +131,7 @@ public class MultiSelectionModelImpl extends AbstractSelectionModel return getState(false).selectAllCheckBoxVisible; } - /** - * Returns whether all items are selected or not. - *

- * This is only {@code true} if user has selected all rows with the select - * all checkbox on client side, or if {@link #selectAll()} has been used - * from server side. - * - * @return {@code true} if all selected, {@code false} if not - */ + @Override public boolean isAllSelected() { return getState(false).allSelected; } -- cgit v1.2.3