summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/data/CameraPreviewData.java
diff options
context:
space:
mode:
authorAngus Kong <shkong@google.com>2013-07-30 11:36:00 -0700
committerAngus Kong <shkong@google.com>2013-08-01 16:36:34 -0700
commit8e5e4eedb25a4589342660b928935acca4375fc7 (patch)
tree51e63c6a3bcaeea4e29b98c7e93d50bd9c98873a /src/com/android/camera/data/CameraPreviewData.java
parentbfed27177046f4b1325bf1bc145ce3bb6b82b1ec (diff)
downloadandroid_packages_apps_Snap-8e5e4eedb25a4589342660b928935acca4375fc7.tar.gz
android_packages_apps_Snap-8e5e4eedb25a4589342660b928935acca4375fc7.tar.bz2
android_packages_apps_Snap-8e5e4eedb25a4589342660b928935acca4375fc7.zip
Add LocalDataAdapter and wrappers.
1. FixedFirstDataAdapter wraps another adapter and add a data at the first position. 2. FixedLastDataAdapter wraps another adapter and add a data at the last position. 3. Make the LocalData interface more complete. - onFullScreen() - canSwipeInFullScreen() - getPath() 3. Add methods to the FilmStripView.DataAdapter to receive UI events. - onDataCentered() - onDataFullScreen() Change-Id: I26d3a3b7facd0c451af43ce5fbbcab2baaaec427
Diffstat (limited to 'src/com/android/camera/data/CameraPreviewData.java')
-rw-r--r--src/com/android/camera/data/CameraPreviewData.java63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/com/android/camera/data/CameraPreviewData.java b/src/com/android/camera/data/CameraPreviewData.java
new file mode 100644
index 000000000..8f8e2138d
--- /dev/null
+++ b/src/com/android/camera/data/CameraPreviewData.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2013 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.data;
+
+import android.view.View;
+
+import com.android.camera.ui.FilmStripView.ImageData;
+
+/**
+ * A class implementing {@link LocalData} to represent a camera preview.
+ */
+public class CameraPreviewData extends LocalData.LocalViewData {
+
+ private boolean mPreviewLocked;
+
+ /**
+ * Constructor.
+ *
+ * @param v The {@link android.view.View} for camera preview.
+ * @param width The width of the camera preview.
+ * @param height The height of the camera preview.
+ */
+ public CameraPreviewData(View v, int width, int height) {
+ super(v, width, height, -1, -1);
+ mPreviewLocked = true;
+ }
+
+ @Override
+ public int getType() {
+ return ImageData.TYPE_CAMERA_PREVIEW;
+ }
+
+ @Override
+ public boolean canSwipeInFullScreen() {
+ return !mPreviewLocked;
+ }
+
+ /**
+ * Locks the camera preview. When the camera preview is locked, swipe
+ * to film strip is not allowed. One case is when the video recording
+ * is in progress.
+ *
+ * @param lock {@code true} if the preview should be locked. {@code false}
+ * otherwise.
+ */
+ public void lockPreview(boolean lock) {
+ mPreviewLocked = lock;
+ }
+}