summaryrefslogtreecommitdiffstats
path: root/core/java
diff options
context:
space:
mode:
authorAdam Powell <adamp@google.com>2010-12-06 17:41:47 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-12-06 17:41:47 -0800
commit11a8af5ea1e5a760e6d40f025f9cbc356edf1894 (patch)
tree4aadf1a86e36f3cc58b2d024313be09159aa3afb /core/java
parent8da8fc1f3662befd044fb2a92765c789f88aa45d (diff)
parentcf0357639e952a87f0d535c82691919af81f058b (diff)
downloadframeworks_base-11a8af5ea1e5a760e6d40f025f9cbc356edf1894.zip
frameworks_base-11a8af5ea1e5a760e6d40f025f9cbc356edf1894.tar.gz
frameworks_base-11a8af5ea1e5a760e6d40f025f9cbc356edf1894.tar.bz2
Merge "Clean up button bar styles"
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/app/ActionBar.java3
-rw-r--r--core/java/android/widget/ButtonGroup.java260
-rw-r--r--core/java/com/android/internal/view/menu/ActionMenuView.java8
3 files changed, 2 insertions, 269 deletions
diff --git a/core/java/android/app/ActionBar.java b/core/java/android/app/ActionBar.java
index 2f69520..67eb02d 100644
--- a/core/java/android/app/ActionBar.java
+++ b/core/java/android/app/ActionBar.java
@@ -16,7 +16,6 @@
package android.app;
-import android.app.ActionBar.Tab;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.drawable.Drawable;
@@ -39,7 +38,7 @@ public abstract class ActionBar {
/**
* Standard navigation mode. Consists of either a logo or icon
* and title text with an optional subtitle. Clicking any of these elements
- * will dispatch onActionItemSelected to the registered Callback with
+ * will dispatch onOptionsItemSelected to the host Activity with
* a MenuItem with item ID android.R.id.home.
*/
public static final int NAVIGATION_MODE_STANDARD = 0;
diff --git a/core/java/android/widget/ButtonGroup.java b/core/java/android/widget/ButtonGroup.java
deleted file mode 100644
index 7548ef6..0000000
--- a/core/java/android/widget/ButtonGroup.java
+++ /dev/null
@@ -1,260 +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 android.widget;
-
-import android.content.Context;
-import android.content.res.TypedArray;
-import android.graphics.Canvas;
-import android.graphics.Rect;
-import android.graphics.drawable.Drawable;
-import android.util.AttributeSet;
-import android.util.Log;
-import android.view.View;
-import android.view.ViewGroup;
-
-/**
- * @hide
- */
-public class ButtonGroup extends LinearLayout {
- private static final String LOG = "ButtonGroup";
-
- private Drawable mDivider;
- private int mDividerWidth;
- private int mDividerHeight;
- private int mButtonBackgroundRes;
- private int mShowDividers;
-
- /**
- * Don't show any dividers.
- */
- public static final int SHOW_DIVIDER_NONE = 0;
- /**
- * Show a divider at the beginning of the group.
- */
- public static final int SHOW_DIVIDER_BEGINNING = 1;
- /**
- * Show dividers between each item in the group.
- */
- public static final int SHOW_DIVIDER_MIDDLE = 2;
- /**
- * Show a divider at the end of the group.
- */
- public static final int SHOW_DIVIDER_END = 4;
-
- private final Rect mTempRect = new Rect();
-
- public ButtonGroup(Context context) {
- this(context, null);
- }
-
- public ButtonGroup(Context context, AttributeSet attrs) {
- this(context, attrs, com.android.internal.R.attr.buttonGroupStyle);
- }
-
- public ButtonGroup(Context context, AttributeSet attrs, int defStyleRes) {
- super(context, attrs, defStyleRes);
-
- TypedArray a = context.obtainStyledAttributes(attrs,
- com.android.internal.R.styleable.ButtonGroup, defStyleRes, 0);
-
- setDividerDrawable(a.getDrawable(com.android.internal.R.styleable.ButtonGroup_divider));
- mButtonBackgroundRes = a.getResourceId(
- com.android.internal.R.styleable.ButtonGroup_buttonBackground, 0);
- setShowDividers(a.getInt(com.android.internal.R.styleable.ButtonGroup_showDividers,
- SHOW_DIVIDER_MIDDLE));
- a.recycle();
- }
-
- /**
- * Set how dividers should be shown between items in this button group.
- *
- * @param showDividers One or more of {@link #SHOW_DIVIDER_BEGINNING},
- * {@link #SHOW_DIVIDER_MIDDLE}, or {@link #SHOW_DIVIDER_END},
- * or {@link #SHOW_DIVIDER_NONE} to show no dividers.
- */
- public void setShowDividers(int showDividers) {
- if (showDividers != mShowDividers) {
- requestLayout();
- }
- mShowDividers = showDividers;
- }
-
- /**
- * @return A flag set indicating how dividers should be shown around items.
- * @see #setShowDividers(int)
- */
- public int getShowDividers() {
- return mShowDividers;
- }
-
- /**
- * Set a drawable to be used as a divider between items.
- * @param divider Drawable that will divide each item.
- */
- public void setDividerDrawable(Drawable divider) {
- if (divider == mDivider) {
- return;
- }
- mDivider = divider;
- if (divider != null) {
- mDividerWidth = divider.getIntrinsicWidth();
- mDividerHeight = divider.getIntrinsicHeight();
- } else {
- mDividerWidth = 0;
- mDividerHeight = 0;
- }
- requestLayout();
- }
-
- /**
- * Retrieve the drawable used to draw dividers between items.
- * @return The divider drawable
- */
- public Drawable getDividerDrawable() {
- return mDivider;
- }
-
- @Override
- public void addView(View child, int index, ViewGroup.LayoutParams params) {
- if (child instanceof Button && mButtonBackgroundRes != 0) {
- // Preserve original padding as we change the background
- final int paddingLeft = child.getPaddingLeft();
- final int paddingRight = child.getPaddingRight();
- final int paddingTop = child.getPaddingTop();
- final int paddingBottom = child.getPaddingBottom();
- child.setBackgroundResource(mButtonBackgroundRes);
- child.setPadding(paddingLeft, paddingTop, paddingRight, paddingBottom);
- }
-
- super.addView(child, index, params);
- }
-
- @Override
- public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- super.onMeasure(widthMeasureSpec, heightMeasureSpec);
-
- // Add the extra size that dividers contribute.
- int dividerCount = 0;
- if ((mShowDividers & SHOW_DIVIDER_MIDDLE) == SHOW_DIVIDER_MIDDLE) {
- final int childCount = getChildCount();
- for (int i = 0; i < childCount; i++) {
- if (getChildAt(i).getVisibility() != GONE) {
- dividerCount++;
- }
- }
- dividerCount = Math.max(0, dividerCount);
- }
- if ((mShowDividers & SHOW_DIVIDER_BEGINNING) == SHOW_DIVIDER_BEGINNING) {
- dividerCount++;
- }
- if ((mShowDividers & SHOW_DIVIDER_END) == SHOW_DIVIDER_END) {
- dividerCount++;
- }
-
- if (getOrientation() == VERTICAL) {
- final int dividerSize = mDividerHeight * dividerCount;
- setMeasuredDimension(getMeasuredWidthAndState(),
- resolveSizeAndState(getMeasuredHeight() + dividerSize, heightMeasureSpec,
- getMeasuredHeightAndState()));
- } else {
- final int dividerSize = mDividerWidth * dividerCount;
- setMeasuredDimension(resolveSizeAndState(getMeasuredWidth() + dividerSize,
- widthMeasureSpec, getMeasuredWidthAndState()),
- getMeasuredHeightAndState());
- }
- }
-
- @Override
- public void onLayout(boolean changed, int l, int t, int r, int b) {
- super.onLayout(changed, l, t, r, b);
-
- final boolean begin = (mShowDividers & SHOW_DIVIDER_BEGINNING) == SHOW_DIVIDER_BEGINNING;
- final boolean middle = (mShowDividers & SHOW_DIVIDER_MIDDLE) == SHOW_DIVIDER_MIDDLE;
-
- // Offset children to leave space for dividers.
- if (getOrientation() == VERTICAL) {
- int offset = begin ? mDividerHeight : 0;
- final int childCount = getChildCount();
- for (int i = 0; i < childCount; i++) {
- View child = getChildAt(i);
- child.offsetTopAndBottom(offset);
- if (middle && child.getVisibility() != GONE) {
- offset += mDividerHeight;
- }
- }
- } else {
- int offset = begin ? mDividerWidth : 0;
- final int childCount = getChildCount();
- for (int i = 0; i < childCount; i++) {
- View child = getChildAt(i);
- child.offsetLeftAndRight(offset);
- if (middle && child.getVisibility() != GONE) {
- offset += mDividerWidth;
- }
- }
- }
- }
-
- @Override
- public void dispatchDraw(Canvas canvas) {
- if (mDivider == null) {
- super.dispatchDraw(canvas);
- return;
- }
-
- final boolean begin = (mShowDividers & SHOW_DIVIDER_BEGINNING) == SHOW_DIVIDER_BEGINNING;
- final boolean middle = (mShowDividers & SHOW_DIVIDER_MIDDLE) == SHOW_DIVIDER_MIDDLE;
- final boolean end = (mShowDividers & SHOW_DIVIDER_END) == SHOW_DIVIDER_END;
- final boolean vertical = getOrientation() == VERTICAL;
-
- final Rect bounds = mTempRect;
- bounds.left = mPaddingLeft;
- bounds.right = mRight - mLeft - mPaddingRight;
- bounds.top = mPaddingTop;
- bounds.bottom = mBottom - mTop - mPaddingBottom;
-
- if (begin) {
- if (vertical) {
- bounds.bottom = bounds.top + mDividerHeight;
- } else {
- bounds.right = bounds.left + mDividerWidth;
- }
- mDivider.setBounds(bounds);
- mDivider.draw(canvas);
- }
-
- final int childCount = getChildCount();
- int i = 0;
- while (i < childCount) {
- final View child = getChildAt(i);
- i++;
- if ((middle && i < childCount && child.getVisibility() != GONE) || end) {
- if (vertical) {
- bounds.top = child.getBottom();
- bounds.bottom = bounds.top + mDividerHeight;
- } else {
- bounds.left = child.getRight();
- bounds.right = bounds.left + mDividerWidth;
- }
- mDivider.setBounds(bounds);
- mDivider.draw(canvas);
- }
- }
-
- super.dispatchDraw(canvas);
- }
-}
diff --git a/core/java/com/android/internal/view/menu/ActionMenuView.java b/core/java/com/android/internal/view/menu/ActionMenuView.java
index 84067d0..871973d 100644
--- a/core/java/com/android/internal/view/menu/ActionMenuView.java
+++ b/core/java/com/android/internal/view/menu/ActionMenuView.java
@@ -95,8 +95,7 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo
TypedArray a = context.obtainStyledAttributes(com.android.internal.R.styleable.Theme);
final int buttonStyle = a.getResourceId(
com.android.internal.R.styleable.Theme_actionButtonStyle, 0);
- final int groupStyle = a.getResourceId(
- com.android.internal.R.styleable.Theme_buttonGroupStyle, 0);
+ mDivider = a.getDrawable(com.android.internal.R.styleable.Theme_dividerVertical);
a.recycle();
a = context.obtainStyledAttributes(buttonStyle, com.android.internal.R.styleable.View);
@@ -104,11 +103,6 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo
mButtonPaddingRight = a.getDimension(com.android.internal.R.styleable.View_paddingRight, 0);
a.recycle();
- a = context.obtainStyledAttributes(groupStyle,
- com.android.internal.R.styleable.ButtonGroup);
- mDivider = a.getDrawable(com.android.internal.R.styleable.ButtonGroup_divider);
- a.recycle();
-
mDividerPadding = DIVIDER_PADDING * res.getDisplayMetrics().density;
setBaselineAligned(false);