package edu.gatech.oad.rocket.findmythings.list; import android.app.LoaderManager; import java.util.List; /** * A type-parametrized List Fragment that asynchronously loads content with a progress bar with filtering support. * User: zw * Date: 4/21/13 * Time: 3:38 AM */ public abstract class FilterableArrayListFragment<T, U extends CustomFilter.Constraint<T>> extends ArrayListFragment<T> implements LoaderManager.LoaderCallbacks<List<T>> { /** * Create adapter to display items * * @return adapter */ protected abstract FilterableArrayListAdapter<T, U> onCreateAdapter(); /** * Get list adapter * * @return list adapter */ @SuppressWarnings("unchecked") public FilterableArrayListAdapter<T, U> getListAdapter() { return (FilterableArrayListAdapter<T, U>) super.getListAdapter(); } /** * Set list adapter to use on list view * * @param adapter Provide an adapter for the list view. */ public void setListAdapter(final FilterableArrayListAdapter<T, U> adapter) { super.setListAdapter(adapter); } }