Android Open Source - MobilHackathon2014 Card Presenter






From Project

Back to project page MobilHackathon2014.

License

The source code is released under:

GNU General Public License

If you think the Android project MobilHackathon2014 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.github.barcodeeye.scan.api;
//from   w ww  .j  a  v  a 2 s.  c  o m
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import android.app.PendingIntent;
import android.content.Context;
import android.net.Uri;
import android.os.Parcel;
import android.os.Parcelable;
import android.provider.MediaStore;
import android.util.Log;
import android.view.View;

import com.google.android.glass.app.Card;

public class CardPresenter implements Parcelable {

    private static final String TAG = CardPresenter.class.getSimpleName();
    private final List<Uri> mImages = new ArrayList<Uri>();
    private String mText;
    private String mFooter;
    private PendingIntent mPendingIntent;

    public CardPresenter() {
    }

    public CardPresenter(String text, String footer, PendingIntent intent,
            List<Uri> images) {
        mText = text;
        mFooter = footer;
        mPendingIntent = intent;
        if (images != null) {
            mImages.addAll(images);
        }
    }

    public String getText() {
        return mText;
    }

    public CardPresenter setText(String text) {
        mText = text;
        return this;
    }

    public String getFooter() {
        return mFooter;
    }

    public CardPresenter setFooter(String footer) {
        mFooter = footer;
        return this;
    }

    public PendingIntent getPendingIntent() {
        return mPendingIntent;
    }

    public CardPresenter setPendingIntent(PendingIntent pendingIntent) {
        mPendingIntent = pendingIntent;
        return this;
    }

    public List<Uri> getImages() {
        return mImages;
    }

    public CardPresenter addImage(Context context, int resourceId) {
        String packageName = context.getPackageName();
        return addImage(Uri.parse(
                "android.resource://" + packageName + "/" + resourceId));
    }

    public CardPresenter addImage(Uri uri) {
        if (uri != null) {
            mImages.add(uri);
        } else {
            Log.w(TAG, "PhotoUri was null!");
        }
        return this;
    }

    public View getCardView(Context context) {
        Card card = new Card(context);
        card.setText(mText);
        card.setFootnote(mFooter);
        for (Uri uri : mImages) {
            if (uri != null) {
                Log.w(TAG, "ImageUri: " + uri.toString());
                try {
                    card.addImage(MediaStore.Images.Media.getBitmap(
                            context.getContentResolver(), uri));
                } catch (IOException e) {
                    Log.e(TAG, "Failed to load: " + e);
                }
            } else {
                Log.w(TAG, "We got a null imageUri!");
            }
        }

        return card.getView();
    }

    /* *********************************************************************
     * Parcelable interface related methods
     */
    protected CardPresenter(Parcel in) {
        in.readList(mImages, Uri.class.getClassLoader());
        mText = in.readString();
        mFooter = in.readString();
        mPendingIntent = in.readParcelable(PendingIntent.class.getClassLoader());
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeList(mImages);
        dest.writeString(mText);
        dest.writeString(mFooter);
        dest.writeParcelable(mPendingIntent, 0);
    }

    public static final Parcelable.Creator<CardPresenter> CREATOR = new Parcelable.Creator<CardPresenter>() {
        @Override
        public CardPresenter createFromParcel(Parcel in) {
            return new CardPresenter(in);
        }

        @Override
        public CardPresenter[] newArray(int size) {
            return new CardPresenter[size];
        }
    };
}




Java Source Code List

com.github.barcodeeye.BaseGlassActivity.java
com.github.barcodeeye.LaunchActivity.java
com.github.barcodeeye.image.ImageManager.java
com.github.barcodeeye.migrated.AmbientLightManager.java
com.github.barcodeeye.migrated.BeepManager.java
com.github.barcodeeye.migrated.DecodeFormatManager.java
com.github.barcodeeye.migrated.DecodeHintManager.java
com.github.barcodeeye.migrated.FinishListener.java
com.github.barcodeeye.migrated.HttpHelper.java
com.github.barcodeeye.migrated.InactivityTimer.java
com.github.barcodeeye.migrated.Intents.java
com.github.barcodeeye.migrated.LocaleManager.java
com.github.barcodeeye.scan.CaptureActivityHandler.java
com.github.barcodeeye.scan.CaptureActivity.java
com.github.barcodeeye.scan.DecodeHandler.java
com.github.barcodeeye.scan.DecodeThread.java
com.github.barcodeeye.scan.ResultsActivity.java
com.github.barcodeeye.scan.api.CardPresenter.java
com.github.barcodeeye.scan.ui.ViewfinderView.java
com.google.android.glass.eye.EyeEventReceiver.java
com.google.android.glass.eye.EyeGestureManager.java
com.google.android.glass.eye.EyeGesture.java
com.google.zxing.client.android.camera.AutoFocusManager.java
com.google.zxing.client.android.camera.CameraConfigurationManager.java
com.google.zxing.client.android.camera.CameraManager.java
com.google.zxing.client.android.camera.PreviewCallback.java
com.google.zxing.client.android.camera.open.OpenCameraInterface.java
com.google.zxing.client.android.clipboard.ClipboardInterface.java
com.google.zxing.client.android.encode.ContactEncoder.java
com.google.zxing.client.android.encode.Formatter.java
com.google.zxing.client.android.encode.MECARDContactEncoder.java
com.google.zxing.client.android.encode.VCardContactEncoder.java
com.google.zxing.client.android.history.DBHelper.java
com.google.zxing.client.android.history.HistoryItemAdapter.java
com.google.zxing.client.android.history.HistoryItem.java
com.google.zxing.client.android.share.AppInfo.java
com.google.zxing.client.android.share.AppPickerActivity.java
com.google.zxing.client.android.share.BookmarkAdapter.java
com.google.zxing.client.android.share.BookmarkPickerActivity.java
com.google.zxing.client.android.share.LoadPackagesAsyncTask.java
com.google.zxing.client.android.wifi.NetworkType.java
com.google.zxing.client.android.wifi.WifiConfigManager.java
edu.hackathon.perseus.app.AboutActivity.java
edu.hackathon.perseus.app.MainActivity.java
edu.hackathon.perseus.app.MainService.java
edu.hackathon.perseus.core.appLogger.java
edu.hackathon.perseus.core.httpSpeedTest.java