1 /*
2  * Copyright (C) 2009 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.camera;
18 
19 import android.content.ContentResolver;
20 import android.content.Context;
21 import android.content.SharedPreferences;
22 import android.util.AttributeSet;
23 
24 /**
25  * {@code RecordLocationPreference} is used to keep the "store locaiton"
26  * option in {@code SharedPreference}.
27  */
28 public class RecordLocationPreference extends IconListPreference {
29 
30     public static final String VALUE_NONE = "none";
31     public static final String VALUE_ON = "on";
32     public static final String VALUE_OFF = "off";
33 
34     private final ContentResolver mResolver;
35 
RecordLocationPreference(Context context, AttributeSet attrs)36     public RecordLocationPreference(Context context, AttributeSet attrs) {
37         super(context, attrs);
38         mResolver = context.getContentResolver();
39     }
40 
41     @Override
getValue()42     public String getValue() {
43         return get(getSharedPreferences(), mResolver) ? VALUE_ON : VALUE_OFF;
44     }
45 
get( SharedPreferences pref, ContentResolver resolver)46     public static boolean get(
47             SharedPreferences pref, ContentResolver resolver) {
48         String value = pref.getString(
49                 CameraSettings.KEY_RECORD_LOCATION, VALUE_NONE);
50         return VALUE_ON.equals(value);
51     }
52 
isSet(SharedPreferences pref)53     public static boolean isSet(SharedPreferences pref) {
54         String value = pref.getString(
55                 CameraSettings.KEY_RECORD_LOCATION, VALUE_NONE);
56         return !VALUE_NONE.equals(value);
57     }
58 }
59