Skip to content
This repository was archived by the owner on May 5, 2021. It is now read-only.

Commit 35845fb

Browse files
SORMAS-Foundation#2993 add reset filters button in countries view
1 parent a5f843e commit 35845fb

1 file changed

Lines changed: 29 additions & 0 deletions

File tree

  • sormas-ui/src/main/java/de/symeda/sormas/ui/configuration/infrastructure

sormas-ui/src/main/java/de/symeda/sormas/ui/configuration/infrastructure/CountriesView.java

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import java.util.Date;
44

55
import com.vaadin.icons.VaadinIcons;
6+
import com.vaadin.navigator.ViewChangeListener;
67
import com.vaadin.server.FileDownloader;
78
import com.vaadin.server.StreamResource;
89
import com.vaadin.ui.Alignment;
@@ -184,6 +185,7 @@ private HorizontalLayout createFilterBar() {
184185
relevanceStatusFilter.setId("relevanceStatus");
185186
relevanceStatusFilter.setWidth(220, Unit.PERCENTAGE);
186187
relevanceStatusFilter.setNullSelectionAllowed(false);
188+
relevanceStatusFilter.addItems((Object[]) EntityRelevanceStatus.values());
187189
relevanceStatusFilter.setItemCaption(EntityRelevanceStatus.ACTIVE, I18nProperties.getCaption(Captions.countryActiveCountries));
188190
relevanceStatusFilter.setItemCaption(EntityRelevanceStatus.ARCHIVED, I18nProperties.getCaption(Captions.countryArchivedCountries));
189191
relevanceStatusFilter.setItemCaption(EntityRelevanceStatus.ALL, I18nProperties.getCaption(Captions.countryAllCountries));
@@ -227,4 +229,31 @@ private HorizontalLayout createFilterBar() {
227229
return filterLayout;
228230
}
229231

232+
@Override
233+
public void enter(ViewChangeListener.ViewChangeEvent event) {
234+
235+
super.enter(event);
236+
String params = event.getParameters().trim();
237+
if (params.startsWith("?")) {
238+
params = params.substring(1);
239+
criteria.fromUrlParams(params);
240+
}
241+
updateFilterComponents();
242+
grid.reload();
243+
}
244+
245+
public void updateFilterComponents() {
246+
247+
// TODO replace with Vaadin 8 databinding
248+
applyingCriteria = true;
249+
250+
resetButton.setVisible(criteria.hasAnyFilterActive());
251+
252+
if (relevanceStatusFilter != null) {
253+
relevanceStatusFilter.setValue(criteria.getRelevanceStatus());
254+
}
255+
searchField.setValue(criteria.getNameCodeLike());
256+
257+
applyingCriteria = false;
258+
}
230259
}

0 commit comments

Comments
 (0)