diff options
Diffstat (limited to 'src/com/android/launcher3/pageindicators/PageIndicator.java')
-rw-r--r-- | src/com/android/launcher3/pageindicators/PageIndicator.java | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/src/com/android/launcher3/pageindicators/PageIndicator.java b/src/com/android/launcher3/pageindicators/PageIndicator.java index 77c579c93..7c5949598 100644 --- a/src/com/android/launcher3/pageindicators/PageIndicator.java +++ b/src/com/android/launcher3/pageindicators/PageIndicator.java @@ -1,16 +1,37 @@ package com.android.launcher3.pageindicators; +import android.content.Context; +import android.util.AttributeSet; import android.view.View; -import java.util.ArrayList; +/** + * Base class for a page indicator. + */ +public abstract class PageIndicator extends View { -public interface PageIndicator { - View getView(); - void setScroll(int currentScroll, int totalScroll); + protected int mNumPages = 1; - void setActiveMarker(int activePage); + public PageIndicator(Context context, AttributeSet attrs, int defStyleAttr) { + super(context, attrs, defStyleAttr); + } - void addMarker(); - void removeMarker(); - void setMarkersCount(int numMarkers); + public abstract void setScroll(int currentScroll, int totalScroll); + + public abstract void setActiveMarker(int activePage); + + public void addMarker() { + mNumPages++; + onPageCountChanged(); + } + + public void removeMarker() { + mNumPages--; + onPageCountChanged(); + } + public void setMarkersCount(int numMarkers) { + mNumPages = numMarkers; + onPageCountChanged(); + } + + protected abstract void onPageCountChanged(); } |