package com.external.HorizontalVariableListView.widget; import android.widget.BaseAdapter; import com.external.HorizontalVariableListView.utils.DataSetObservableExtended; import com.external.HorizontalVariableListView.utils.DataSetObserverExtended; public abstract class BaseAdapterExtended extends BaseAdapter { private final DataSetObservableExtended mDataSetObservableExtended = new DataSetObservableExtended(); public void registerDataSetObserverExtended( DataSetObserverExtended observer ) { mDataSetObservableExtended.registerObserver( observer ); } public void unregisterDataSetObserverExtended( DataSetObserverExtended observer ) { mDataSetObservableExtended.unregisterObserver( observer ); } /** * Notifies the attached observers that the underlying data has been changed and any View reflecting the data set should refresh * itself. */ @Override public void notifyDataSetChanged() { super.notifyDataSetChanged(); mDataSetObservableExtended.notifyChanged(); } /** * Notifies the attached observers that the underlying data is no longer valid or available. Once invoked this adapter is no * longer valid and should not report further data set changes. */ @Override public void notifyDataSetInvalidated() { super.notifyDataSetInvalidated(); mDataSetObservableExtended.notifyInvalidated(); } public void notifyDataSetAdded() { mDataSetObservableExtended.notifyAdded(); } public void notifyDataSetRemoved() { mDataSetObservableExtended.notifyRemoved(); } }