public void setQuickFilterLossless(final Map<QuickFilter, Boolean> newQuickFilter) {
        if (!canSetQuickFilterLossless() || hasSameQuickFilter(newQuickFilter)) {
            return;
        }

        StatusGeocacheFilter statusFilter = findInChain(getAndChainIfPossible(), StatusGeocacheFilter.class);
        if (statusFilter == null) {
            statusFilter = GeocacheFilterType.STATUS.create();
            and(statusFilter);
        }
        final Map<QuickFilter, Boolean> quickFilter = getQuickFilter();
        final StatusGeocacheFilter sFilter = statusFilter;
        setSingleQuickFilter(quickFilter, newQuickFilter, QuickFilter.FOUND, f -> sFilter.setStatusFound(f ? null : false));
        setSingleQuickFilter(quickFilter, newQuickFilter, QuickFilter.OWNED, f -> sFilter.setStatusOwned(f ? null : false));
        setSingleQuickFilter(quickFilter, newQuickFilter, QuickFilter.HAS_OFFLINE_FOUND_LOG, f -> sFilter.setStatusHasOfflineFoundLog(f ? null : false));
        setSingleQuickFilter(quickFilter, newQuickFilter, QuickFilter.DISABLED, f -> sFilter.setExcludeDisabled(!f));
        setSingleQuickFilter(quickFilter, newQuickFilter, QuickFilter.ARCHIVED, f -> sFilter.setExcludeArchived(!f));
    }
Extracts quickfilter settings from this filter. For each quickfilter, an entry is returned
For each quickfilter, it is stored whether corresponding caches shall be shown (true) or not (false)
main/src/main/java/cgeo/geocaching/filters/core/GeocacheFilter.java