docs: public void updateFilters(List<CmsDataViewFilter> newFilters) {
  
          if (newFilters.isEmpty()) {
              m_filterContainer.setVisible(false);
          }
          if (m_filters.equals(newFilters)) {
              return;
          }
          m_filterContainer.removeAllComponents();
          m_filters = newFilters;
          m_filterMap.clear();
          for (CmsDataViewFilter filter : newFilters) {
              m_filterMap.put(filter.getId(), filter);
              final CmsDataViewFilter finalFilter = filter;
              ComboBox select = new ComboBox(filter.getNiceName());
              select.setWidth("175px");
              select.setNullSelectionAllowed(false);
              select.setPageLength(0);
              Map<String, String> options = filter.getOptions();
              for (Map.Entry<String, String> entry : options.entrySet()) {
                  String key = entry.getKey();
                  String value = entry.getValue();
                  select.addItem(key);
                  select.setItemCaption(key, value);
              }
              select.setValue(filter.getValue());
              if (filter.getHelpText() != null) {
                  select.setDescription(filter.getHelpText());
              }
  
              select.addValueChangeListener(new ValueChangeListener() {
  
                  private static final long serialVersionUID = 1L;
  
                  public void valueChange(ValueChangeEvent event) {
  
                      String newValue = (String)(event.getProperty().getValue());
                      updateFilter(finalFilter.getId(), newValue);
                  }
              });
              m_filterContainer.addComponent(select);
          }
      }