package uk.org.smithfamily.mslogger.dashboards; import java.util.List; import android.content.Context; import android.support.v4.view.*; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.view.View; import android.view.ViewGroup; /** * */ public class DashboardPagerAdapter extends PagerAdapter implements OnPageChangeListener { private final Context context; private final List<Dashboard> dashboards; private final DashboardViewPager parent; /** * * @param c * @param parent */ public DashboardPagerAdapter(final Context c, final DashboardViewPager parent) { this.context = c; this.parent = parent; dashboards = DashboardIO.INSTANCE.loadDash(); } /** * * @return */ @Override public int getCount() { return dashboards.size(); } /** * * @param collection * @param position * * @return */ @Override public Object instantiateItem(final ViewGroup collection, final int position) { final Dashboard d = dashboards.get(position); final DashboardView dvg = new DashboardView(context, position, parent, d); dvg.setDashboard(d); ((ViewPager) collection).addView(dvg, 0); return dvg; } /** * * @param collection * @param position * @param v */ @Override public void destroyItem(final View collection, final int position, final Object v) { final ViewPager viewPager = (ViewPager) collection; final View view = (View) v; viewPager.removeView(view); } /** * * @param view * @param o * * @return */ @Override public boolean isViewFromObject(final View view, final Object o) { return view == ((View) o); } /** * * @param arg0 */ @Override public void onPageScrollStateChanged(final int arg0) { // TODO Auto-generated method stub } /** * * @param arg0 * @param arg1 * @param arg2 */ @Override public void onPageScrolled(final int arg0, final float arg1, final int arg2) { // TODO Auto-generated method stub } /** * * @param arg0 */ @Override public void onPageSelected(final int arg0) { // TODO Auto-generated method stub } }