diff options
Diffstat (limited to 'src/com/android/gallery3d/ui/ScrollBarView.java')
-rw-r--r-- | src/com/android/gallery3d/ui/ScrollBarView.java | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/src/com/android/gallery3d/ui/ScrollBarView.java b/src/com/android/gallery3d/ui/ScrollBarView.java deleted file mode 100644 index 34fbcef7a..000000000 --- a/src/com/android/gallery3d/ui/ScrollBarView.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (C) 2010 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.gallery3d.ui; - -import android.content.Context; -import android.graphics.Rect; -import android.util.TypedValue; - -import com.android.gallery3d.glrenderer.GLCanvas; -import com.android.gallery3d.glrenderer.NinePatchTexture; - -public class ScrollBarView extends GLView { - @SuppressWarnings("unused") - private static final String TAG = "ScrollBarView"; - - private int mBarHeight; - - private int mGripHeight; - private int mGripPosition; // left side of the grip - private int mGripWidth; // zero if the grip is disabled - private int mGivenGripWidth; - - private int mContentPosition; - private int mContentTotal; - - private NinePatchTexture mScrollBarTexture; - - public ScrollBarView(Context context, int gripHeight, int gripWidth) { - TypedValue outValue = new TypedValue(); - context.getTheme().resolveAttribute( - android.R.attr.scrollbarThumbHorizontal, outValue, true); - mScrollBarTexture = new NinePatchTexture( - context, outValue.resourceId); - mGripPosition = 0; - mGripWidth = 0; - mGivenGripWidth = gripWidth; - mGripHeight = gripHeight; - } - - @Override - protected void onLayout( - boolean changed, int left, int top, int right, int bottom) { - if (!changed) return; - mBarHeight = bottom - top; - } - - // The content position is between 0 to "total". The current position is - // in "position". - public void setContentPosition(int position, int total) { - if (position == mContentPosition && total == mContentTotal) { - return; - } - - invalidate(); - - mContentPosition = position; - mContentTotal = total; - - // If the grip cannot move, don't draw it. - if (mContentTotal <= 0) { - mGripPosition = 0; - mGripWidth = 0; - return; - } - - // Map from the content range to scroll bar range. - // - // mContentTotal --> getWidth() - mGripWidth - // mContentPosition --> mGripPosition - mGripWidth = mGivenGripWidth; - float r = (getWidth() - mGripWidth) / (float) mContentTotal; - mGripPosition = Math.round(r * mContentPosition); - } - - @Override - protected void render(GLCanvas canvas) { - super.render(canvas); - if (mGripWidth == 0) return; - Rect b = bounds(); - int y = (mBarHeight - mGripHeight) / 2; - mScrollBarTexture.draw(canvas, mGripPosition, y, mGripWidth, mGripHeight); - } -} |