Skip to content

Commit f4b33df

Browse files
javier-godoypaodb
authored andcommitted
feat: add overloads for addFilterableColumn with column key
Close #95
1 parent f9bc392 commit f4b33df

File tree

1 file changed

+20
-3
lines changed

1 file changed

+20
-3
lines changed

src/main/java/com/flowingcode/vaadin/addons/twincolgrid/TwinColGrid.java

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
import java.util.LinkedHashSet;
6060
import java.util.List;
6161
import java.util.Objects;
62+
import java.util.Optional;
6263
import java.util.Set;
6364
import java.util.function.BinaryOperator;
6465
import java.util.function.Consumer;
@@ -913,11 +914,14 @@ public TwinColGrid<T> addFilterableColumn(
913914
SerializableFunction<T, String> filterableValue,
914915
final String header,
915916
String filterPlaceholder,
916-
boolean enableClearButton) {
917+
boolean enableClearButton, String key) {
917918
forEachSide(
918919
side -> {
919920
Column<T> column =
920921
side.grid.addColumn(new TextRenderer<>(itemLabelGenerator)).setHeader(header);
922+
923+
Optional.ofNullable(key).ifPresent(column::setKey);
924+
921925
TextField filterTF = new TextField();
922926
filterTF.setClearButtonVisible(enableClearButton);
923927

@@ -947,8 +951,21 @@ public TwinColGrid<T> addFilterableColumn(
947951
final String header,
948952
String filterPlaceholder,
949953
boolean enableClearButton) {
950-
return addFilterableColumn(
951-
itemLabelGenerator, itemLabelGenerator, header, filterPlaceholder, enableClearButton);
954+
return addFilterableColumn(itemLabelGenerator, null, header, filterPlaceholder,
955+
enableClearButton, null);
956+
}
957+
958+
public TwinColGrid<T> addFilterableColumn(ItemLabelGenerator<T> itemLabelGenerator,
959+
SerializableFunction<T, String> filterableValue, String header, String filterPlaceholder,
960+
boolean enableClearButton) {
961+
return addFilterableColumn(itemLabelGenerator, filterableValue, header, filterPlaceholder,
962+
enableClearButton, null);
963+
}
964+
965+
public TwinColGrid<T> addFilterableColumn(ItemLabelGenerator<T> itemLabelGenerator, String header,
966+
String filterPlaceholder, boolean enableClearButton, String key) {
967+
return addFilterableColumn(itemLabelGenerator, null, header, filterPlaceholder,
968+
enableClearButton, key);
952969
}
953970

954971
public TwinColGrid<T> selectRowOnClick() {

0 commit comments

Comments
 (0)