@Override
    public void onFilterEnabled(Displayer displayer, DataSetGroup groupOp) {
        String firstColumnId = dataSet.getColumnByIndex(0).getId();
        List<Integer> currentFilter = super.filterIndexes(firstColumnId);

        // If selector is active then ignore external filters.
        if (currentFilter.isEmpty()) {
            if (firstColumnId.equals(groupOp.getColumnGroup().getColumnId())) {
                columnSelectionMap.put(groupOp.getColumnGroup().getColumnId(), groupOp.getSelectedIntervalList());
            }
            super.onFilterEnabled(displayer, groupOp);
        }
    }
@ Override public void onFilterEnabled ( Displayer displayer , DataSetGroup groupOp ) { String firstColumnId = dataSet . getColumnByIndex ( 0 ) . getId ( ) ; List < Integer > currentFilter = super . filterIndexes ( firstColumnId ) ; if ( currentFilter . isEmpty ( ) ) { if ( firstColumnId . equals ( groupOp . getColumnGroup ( ) . getColumnId ( ) ) ) { columnSelectionMap . put ( groupOp . getColumnGroup ( ) . getColumnId ( ) , groupOp . getSelectedIntervalList ( ) ) ; } super . onFilterEnabled ( displayer , groupOp ) ; } }
KEEP IN SYNC THE CURRENT SELECTION WITH ANY EXTERNAL FILTER