Preferences.java :  » Widget » scrollablecontacts » com » boombuler » widgets » contacts » Android Open Source

Android Open Source » Widget » scrollablecontacts 
scrollablecontacts » com » boombuler » widgets » contacts » Preferences.java
package com.boombuler.widgets.contacts;

import java.util.ArrayList;
import java.util.List;

import android.appwidget.AppWidgetManager;
import android.content.ComponentName;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.preference.PreferenceManager;

import com.boombuler.widgets.contacts.sizes.ContactWidget_1_2;
import com.boombuler.widgets.contacts.sizes.ContactWidget_1_3;
import com.boombuler.widgets.contacts.sizes.ContactWidget_1_4;
import com.boombuler.widgets.contacts.sizes.ContactWidget_2_2;
import com.boombuler.widgets.contacts.sizes.ContactWidget_2_3;
import com.boombuler.widgets.contacts.sizes.ContactWidget_2_4;
import com.boombuler.widgets.contacts.sizes.ContactWidget_3_2;
import com.boombuler.widgets.contacts.sizes.ContactWidget_3_3;
import com.boombuler.widgets.contacts.sizes.ContactWidget_3_4;
import com.boombuler.widgets.contacts.sizes.ContactWidget_4_2;
import com.boombuler.widgets.contacts.sizes.ContactWidget_4_3;
import com.boombuler.widgets.contacts.sizes.ContactWidget_4_4;

public class Preferences {
  public static final long GROUP_FACEBOOK = -1;
  public static final long GROUP_ALLCONTACTS = 0;
  public static final long GROUP_STARRED = -2;

  public static final int VIRTUAL_GROUP_COUNT = 3;

  public static final int NAME_DISPLAY_NAME = 0;
  public static final int NAME_GIVEN_NAME = 1;
  public static final int NAME_FAMILY_NAME = 2;

  public static final String SPAN_X = "SpanX-%d";

    public static final String GROUP_ID = "GroupId-%d";
    public static final String DISPLAY_LABEL = "DisplayLabel-%d";
    public static final String SHOW_NAME = "ShowName-%d";
    public static final String NAME_KIND = "NameKind-%d";
    public static final String BACKGROUND_ALPHA = "BackgroundAlpha-%d";

    public static final String COLUMN_COUNT = "CoulumnCount-%d";
    public static final String TEXT_ALIGN = "TextAlign-%d";

    public static final String ON_CLICK = "onClick-%d";
    public static final int CLICK_QCB = 0;
    public static final int CLICK_DIAL = 1;
    public static final int CLICK_SHWCONTACT = 2;
    public static final int CLICK_SMS = 3;

    public static final String BGIMAGE = "BGImage-%d";
    public static final int BG_BLACK = 0;
    public static final int BG_WHITE = 1;
    public static final int BG_TRANS = 2;

    public static final int ALIGN_LEFT = 1;
    public static final int ALIGN_CENTER = 0;
    public static final int ALIGN_RIGHT = 2;

    public static String get(String aPref, int aAppWidgetId) {
      return String.format(aPref, aAppWidgetId);
    }

    public static long getGroupId(Context context, int aAppWidgetId) {
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return Long.parseLong(prefs.getString(Preferences.get(Preferences.GROUP_ID, aAppWidgetId), "0"));
    }

    public static String getDisplayLabel(Context context, int aAppWidgetId) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return prefs.getString(Preferences.get(Preferences.DISPLAY_LABEL, aAppWidgetId), "");
    }

    public static int getBGImage(Context context, int aAppWidgetId) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return Integer.parseInt(prefs.getString(Preferences.get(Preferences.BGIMAGE, aAppWidgetId), "0"));
    }

    public static int getNameKind(Context context, int aAppWidgetId) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return Integer.parseInt(prefs.getString(Preferences.get(Preferences.NAME_KIND, aAppWidgetId), "0"));
    }

    public static boolean getShowName(Context context, int aAppWidgetId) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return prefs.getBoolean(Preferences.get(Preferences.SHOW_NAME, aAppWidgetId), true);
    }

    public static int getColumnCount(Context context, int aAppWidgetId) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return prefs.getInt(Preferences.get(Preferences.COLUMN_COUNT, aAppWidgetId), 1);
    }

    public static int getBackgroundAlpha(Context context, int aAppWidgetId) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return prefs.getInt(Preferences.get(Preferences.BACKGROUND_ALPHA, aAppWidgetId), 255);
    }

    public static int getSpanX(Context context, int aAppWidgetId, int defaultValue) {
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return prefs.getInt(Preferences.get(Preferences.SPAN_X, aAppWidgetId), defaultValue);
    }

    public static int getOnClickAction(Context context, int aAppWidgetId) {
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return Integer.parseInt(prefs.getString(Preferences.get(Preferences.ON_CLICK, aAppWidgetId), String.valueOf(CLICK_QCB)));
    }

    public static void setSpanX(Context context, int aAppWidgetId, int value) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    Editor edit = prefs.edit();
    edit.putInt(Preferences.get(SPAN_X, aAppWidgetId), value);
    edit.commit();
    }

    public static int getTextAlign(Context context, int aAppWidgetId) {
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    return Integer.parseInt(prefs.getString(Preferences.get(Preferences.TEXT_ALIGN, aAppWidgetId), String.valueOf(ALIGN_CENTER)));
    }

    public static void DropSettings(Context context, int[] appWidgetIds) {
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    Editor edit = prefs.edit();
    for(int appWId : appWidgetIds) {
      edit.remove(Preferences.get(Preferences.GROUP_ID, appWId));
      edit.remove(Preferences.get(Preferences.BGIMAGE, appWId));
      edit.remove(Preferences.get(Preferences.SHOW_NAME, appWId));
      edit.remove(Preferences.get(Preferences.DISPLAY_LABEL, appWId));
      edit.remove(Preferences.get(Preferences.COLUMN_COUNT, appWId));
      edit.remove(Preferences.get(Preferences.NAME_KIND, appWId));
      edit.remove(Preferences.get(Preferences.BACKGROUND_ALPHA, appWId));
      edit.remove(Preferences.get(Preferences.SPAN_X, appWId));
      edit.remove(Preferences.get(Preferences.ON_CLICK, appWId));
      edit.remove(Preferences.get(Preferences.TEXT_ALIGN, appWId));
    }
    edit.commit();
    }

    public static int[] getAllWidgetIds(Context context) {
      AppWidgetManager awm = AppWidgetManager.getInstance(context);
      List<int[]> result = new ArrayList<int[]>();

      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_1_2.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_1_3.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_1_4.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_2_2.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_2_3.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_2_4.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_3_2.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_3_3.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_3_4.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_4_2.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_4_3.class)));
      result.add(awm.getAppWidgetIds(new ComponentName(context, ContactWidget_4_4.class)));

      int i = 0;
      for(int[] arr : result)
        i += arr.length;

      int[] res = new int[i];
      i = 0;
      for (int[] arr : result) {
        for (int id : arr) {
          res[i++] = id;
        }
      }

      return res;
    }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.