summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/CameraSettings.java
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-03 19:32:20 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-03 19:32:20 -0800
commitb64d345c9d51cabce43b5191532a0c185d2a70a5 (patch)
treecb393a35078ffef3dc6d6c0cfa0d9cd349e8cf08 /src/com/android/camera/CameraSettings.java
parentbecfb351a5bc43050128f44eb1bcfbcc0c6dcb7a (diff)
downloadLegacyCamera-b64d345c9d51cabce43b5191532a0c185d2a70a5.zip
LegacyCamera-b64d345c9d51cabce43b5191532a0c185d2a70a5.tar.gz
LegacyCamera-b64d345c9d51cabce43b5191532a0c185d2a70a5.tar.bz2
auto import from //depot/cupcake/@135843
Diffstat (limited to 'src/com/android/camera/CameraSettings.java')
-rw-r--r--src/com/android/camera/CameraSettings.java93
1 files changed, 93 insertions, 0 deletions
diff --git a/src/com/android/camera/CameraSettings.java b/src/com/android/camera/CameraSettings.java
new file mode 100644
index 0000000..0145d64
--- /dev/null
+++ b/src/com/android/camera/CameraSettings.java
@@ -0,0 +1,93 @@
+/*
+ * Copyright (C) 2007 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 com.android.camera;
+
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
+import android.os.Bundle;
+import android.preference.ListPreference;
+import android.preference.PreferenceActivity;
+
+/**
+ * CameraSettings
+ */
+public class CameraSettings extends PreferenceActivity
+ implements OnSharedPreferenceChangeListener
+{
+ public static final String KEY_VIDEO_QUALITY = "pref_camera_videoquality_key";
+ public static final boolean DEFAULT_VIDEO_QUALITY_VALUE = true;
+
+ private ListPreference mVideoQuality;
+
+ public CameraSettings()
+ {
+ }
+
+ /** Called with the activity is first created. */
+ @Override
+ public void onCreate(Bundle icicle)
+ {
+ super.onCreate(icicle);
+ addPreferencesFromResource(R.xml.camera_preferences);
+
+ initUI();
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+ updateVideoQuality();
+ }
+
+ private void initUI() {
+ mVideoQuality = (ListPreference) findPreference(KEY_VIDEO_QUALITY);
+ getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
+ }
+
+ private void updateVideoQuality() {
+ boolean vidQualityValue = getBooleanPreference(mVideoQuality, DEFAULT_VIDEO_QUALITY_VALUE);
+ int vidQualityIndex = vidQualityValue ? 1 : 0;
+ String[] vidQualities =
+ getResources().getStringArray(R.array.pref_camera_videoquality_entries);
+ String vidQuality = vidQualities[vidQualityIndex];
+ mVideoQuality.setSummary(vidQuality);
+ }
+
+ private static int getIntPreference(ListPreference preference, int defaultValue) {
+ String s = preference.getValue();
+ int result = defaultValue;
+ try {
+ result = Integer.parseInt(s);
+ } catch (NumberFormatException e) {
+ // Ignore, result is already the default value.
+ }
+ return result;
+ }
+
+ private boolean getBooleanPreference(ListPreference preference, boolean defaultValue) {
+ return getIntPreference(preference, defaultValue ? 1 : 0) != 0;
+ }
+
+ public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
+ String key) {
+ if (key.equals(KEY_VIDEO_QUALITY)) {
+ updateVideoQuality();
+ }
+
+ }
+}
+