/******************************************************************************* * Copyright (c) 2007 Spring IDE Developers * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Spring IDE Developers - initial API and implementation *******************************************************************************/ package org.springframework.ide.eclipse.ajdt.ui.xref; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.StringTokenizer; import org.eclipse.jface.preference.IPreferenceStore; /** * @author Christian Dupuis * @since 2.0 */ public class CrossReferenceViewPreferenceUtils { public static final String XREF_CHECKED_FILTERS = Activator.PLUGIN_ID + ".checked.filters"; //$NON-NLS-1$ public static final String XREF_CHECKED_FILTERS_INPLACE = Activator.PLUGIN_ID + ".checked.filters.inplace"; @SuppressWarnings("unchecked") public static void setCheckedInplaceFilters(List l) { StringBuffer sb = new StringBuffer(); sb.append("set: "); //$NON-NLS-1$ for (Iterator iter = l.iterator(); iter.hasNext();) { String name = (String) iter.next(); sb.append(name); if (iter.hasNext()) { sb.append(","); //$NON-NLS-1$ } } IPreferenceStore pstoreInplace = Activator.getDefault() .getPreferenceStore(); pstoreInplace.setValue(XREF_CHECKED_FILTERS_INPLACE, sb.toString()); } public static List<Object> getFilterCheckedInplaceList() { IPreferenceStore pstoreInplace = Activator.getDefault() .getPreferenceStore(); String xRefCheckedFilters = pstoreInplace .getString(XREF_CHECKED_FILTERS_INPLACE); if (!xRefCheckedFilters.startsWith("set: ")) { //$NON-NLS-1$ return null; } xRefCheckedFilters = xRefCheckedFilters.substring("set: ".length()); //$NON-NLS-1$ List<Object> checkedList = new ArrayList<Object>(); StringTokenizer tokenizer = new StringTokenizer(xRefCheckedFilters, ","); //$NON-NLS-1$ while (tokenizer.hasMoreTokens()) { checkedList.add(tokenizer.nextElement()); } return checkedList; } @SuppressWarnings("unchecked") public static void setCheckedFilters(List l) { StringBuffer sb = new StringBuffer(); sb.append("set: "); //$NON-NLS-1$ for (Iterator iter = l.iterator(); iter.hasNext();) { String name = (String) iter.next(); sb.append(name); if (iter.hasNext()) { sb.append(","); //$NON-NLS-1$ } } IPreferenceStore pstore = Activator.getDefault().getPreferenceStore(); pstore.setValue(XREF_CHECKED_FILTERS, sb.toString()); } public static List<Object> getFilterCheckedList() { IPreferenceStore pstore = Activator.getDefault().getPreferenceStore(); String xRefCheckedFilters = pstore.getString(XREF_CHECKED_FILTERS); if (!xRefCheckedFilters.startsWith("set: ")) { //$NON-NLS-1$ return null; } xRefCheckedFilters = xRefCheckedFilters.substring("set: ".length()); //$NON-NLS-1$ List<Object> checkedList = new ArrayList<Object>(); StringTokenizer tokenizer = new StringTokenizer(xRefCheckedFilters, ","); //$NON-NLS-1$ while (tokenizer.hasMoreTokens()) { checkedList.add(tokenizer.nextElement()); } return checkedList; } }