diff options
Diffstat (limited to 'src/com/cyngn/theme/chooser/WallpaperCardView.java')
-rw-r--r-- | src/com/cyngn/theme/chooser/WallpaperCardView.java | 146 |
1 files changed, 0 insertions, 146 deletions
diff --git a/src/com/cyngn/theme/chooser/WallpaperCardView.java b/src/com/cyngn/theme/chooser/WallpaperCardView.java deleted file mode 100644 index 337af65..0000000 --- a/src/com/cyngn/theme/chooser/WallpaperCardView.java +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Copyright (C) 2014 The Cyanogen, Inc - */ -package com.cyngn.theme.chooser; - -import android.animation.Animator; -import android.animation.AnimatorSet; -import android.animation.ObjectAnimator; -import android.animation.ValueAnimator; -import android.content.Context; -import android.content.res.TypedArray; -import android.graphics.drawable.Drawable; -import android.util.AttributeSet; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewOverlay; -import android.widget.FrameLayout; -import android.widget.ImageView; -import android.widget.TextView; - -public class WallpaperCardView extends ComponentCardView { - protected ImageView mImage; - protected TextView mLabel; - - public WallpaperCardView(Context context) { - this(context, null); - } - - public WallpaperCardView(Context context, AttributeSet attrs) { - this(context, attrs, 0); - } - - public WallpaperCardView(Context context, AttributeSet attrs, int defStyle) { - super(context, attrs, defStyle); - - TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.WallpaperCardView); - String labelText = a.getString(R.styleable.WallpaperCardView_labelText); - a.recycle(); - - setOrientation(VERTICAL); - - setBackgroundResource(R.drawable.card_bg); - - LayoutInflater inflater = LayoutInflater.from(mContext); - FrameLayout frameLayout = - (FrameLayout) inflater.inflate(R.layout.wallpaper_card, this, false); - addView(frameLayout); - mLabel = (TextView) frameLayout.findViewById(R.id.label); - mImage = (ImageView) frameLayout.findViewById(R.id.image); - - mLabel.setText(labelText); - } - - public void setWallpaper(Drawable drawable) { - mImage.setImageDrawable(drawable); - View none = findViewById(R.id.none); - if (drawable == null) { - setBackgroundResource(R.drawable.card_wallpapertoggled_bg); - if (none != null) { - none.setVisibility(View.VISIBLE); - } - if (mLabel != null) { - mLabel.setBackgroundResource(0); - } - } else { - setBackgroundResource(0); - - if (none != null) { - none.setVisibility(View.GONE); - } - if (mLabel != null) { - mLabel.setBackgroundResource(R.drawable.wallpaper_label_bg); - } - } - } - - public void clearWallpaper() { - mImage.setImageDrawable(null); - setBackgroundResource(R.drawable.card_bg); - } - - public Drawable getWallpaperDrawable() { - return mImage.getDrawable(); - } - - @Override - public void expand(boolean showLabel) { - setEnabled(true); - } - - @Override - public void collapse() { - setEnabled(false); - } - - /** - * Animates a change in the content of the card - * @param v View in card to animate - * @param overlay Drawable to animate as a ViewOverlay - * @param duration Duration of animation - */ - @Override - public void animateContentChange(View v, final Drawable overlay, long duration) { - // Since the wallpaper IS the content, we will ignore the view passed in and animate - // the entire card - final ViewOverlay viewOverlay = this.getOverlay(); - viewOverlay.add(overlay); - final int x = 0; - final int y = 0; - final int width = v.getWidth(); - final int height = v.getHeight(); - overlay.setBounds(x, y, x + width, y + height); - - final ValueAnimator overlayAnimator = ValueAnimator.ofFloat(1f, 0f); - overlayAnimator.setDuration(duration); - overlayAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { - @Override - public void onAnimationUpdate(ValueAnimator animation) { - float value = (Float) animation.getAnimatedValue(); - overlay.setAlpha((int) (255 * value)); - } - - }); - overlayAnimator.addListener(new Animator.AnimatorListener() { - @Override - public void onAnimationStart(Animator animation) {} - - @Override - public void onAnimationEnd(Animator animation) { - // Clear out the ViewOverlay now that we are done animating - viewOverlay.clear(); - } - - @Override - public void onAnimationCancel(Animator animation) {} - - @Override - public void onAnimationRepeat(Animator animation) {} - }); - - AnimatorSet set = new AnimatorSet(); - set.play(ObjectAnimator.ofFloat(overlay, "alpha", 0f, 1f)) - .with(overlayAnimator); - set.start(); - } -} |