From 094e5f2a699394c70a70221fe7590fa1dc3d31c4 Mon Sep 17 00:00:00 2001 From: Mattia Iavarone Date: Sat, 31 Aug 2019 15:31:48 +0200 Subject: [PATCH] Add options in demo app --- .../cameraview/demo/CameraActivity.java | 3 +- .../otaliastudios/cameraview/demo/Option.java | 48 +++++++++++++++++++ 2 files changed, 50 insertions(+), 1 deletion(-) diff --git a/demo/src/main/java/com/otaliastudios/cameraview/demo/CameraActivity.java b/demo/src/main/java/com/otaliastudios/cameraview/demo/CameraActivity.java index 3d8c8078..baa4a94b 100644 --- a/demo/src/main/java/com/otaliastudios/cameraview/demo/CameraActivity.java +++ b/demo/src/main/java/com/otaliastudios/cameraview/demo/CameraActivity.java @@ -111,6 +111,7 @@ public class CameraActivity extends AppCompatActivity implements View.OnClickLis new Option.Mode(), new Option.Engine(), new Option.Preview(), // Some controls new Option.Flash(), new Option.WhiteBalance(), new Option.Hdr(), + new Option.PictureMetering(), new Option.PictureSnapshotMetering(), // Video recording new Option.VideoCodec(), new Option.Audio(), // Gestures @@ -126,7 +127,7 @@ public class CameraActivity extends AppCompatActivity implements View.OnClickLis List dividers = Arrays.asList( false, true, false, false, true, - false, false, true, + false, false, false, false, true, false, true, false, false, false, false, true, false, false, true, diff --git a/demo/src/main/java/com/otaliastudios/cameraview/demo/Option.java b/demo/src/main/java/com/otaliastudios/cameraview/demo/Option.java index 89ba17ea..34f66279 100644 --- a/demo/src/main/java/com/otaliastudios/cameraview/demo/Option.java +++ b/demo/src/main/java/com/otaliastudios/cameraview/demo/Option.java @@ -252,6 +252,54 @@ public abstract class Option { } } + public static class PictureMetering extends Option { + + public PictureMetering() { + super("Picture Metering"); + } + + @NonNull + @Override + public Boolean get(@NonNull CameraView view) { + return view.getPictureMetering(); + } + + @NonNull + @Override + public Collection getAll(@NonNull CameraView view, @NonNull CameraOptions options) { + return Arrays.asList(true, false); + } + + @Override + public void set(@NonNull CameraView view, @NonNull Boolean value) { + view.setPictureMetering(value); + } + } + + public static class PictureSnapshotMetering extends Option { + + public PictureSnapshotMetering() { + super("Picture Snapshot Metering"); + } + + @NonNull + @Override + public Boolean get(@NonNull CameraView view) { + return view.getPictureSnapshotMetering(); + } + + @NonNull + @Override + public Collection getAll(@NonNull CameraView view, @NonNull CameraOptions options) { + return Arrays.asList(true, false); + } + + @Override + public void set(@NonNull CameraView view, @NonNull Boolean value) { + view.setPictureSnapshotMetering(value); + } + } + public static class VideoCodec extends ControlOption { public VideoCodec() { super(com.otaliastudios.cameraview.controls.VideoCodec.class, "Video Codec");