Example #1
0
 public SeekBarObserver(ISharedPreferences preferences, Context context, DataContainer sharedData, MyGlSurfaceView renderer)
 {
     _context     = context;
     _preferences = preferences;
     _sharedData  = sharedData;
     _renderer    = renderer;
 }
Example #2
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            RequestWindowFeature(WindowFeatures.NoTitle);

            Window.AddFlags(WindowManagerFlags.Fullscreen);
            Window.ClearFlags(WindowManagerFlags.ForceNotFullscreen);

            if (CameraEnabled)
            {
                _camera.SetCameraFront(false);
                _camera.SetSharedData(_sharedData);
            }

            SetContentView(Resource.Layout.Main);

            _renderer = (MyGlSurfaceView)FindViewById(Resource.Id.myglsurfaceview);

            _renderer.SetSharedData(_sharedData);

            if (CameraEnabled)
            {
                mObserverRenderer = new RendererObserver(this, _camera);
            }
            _renderer.SetObserver(mObserverRenderer);

            View menu = FindViewById(Resource.Id.menu);

            menu.Visibility = ViewStates.Gone;

            FindViewById(Resource.Id.button_menu).Click += button_clicked;

            _preferences = GetPreferences(FileCreationMode.Private);

            _sharedData._filter = _preferences.GetInt(
                GetString(Resource.String.key_filter), 0);

            var SeekBars = new List <SeekBarInfo>()
            {
                new SeekBarInfo()
                {
                    ViewId       = Resource.Id.seekbar_brightness,
                    StringKey    = Resource.String.key_brightness,
                    DefaultValue = 5
                },
                new SeekBarInfo()
                {
                    ViewId       = Resource.Id.seekbar_contrast,
                    StringKey    = Resource.String.key_contrast,
                    DefaultValue = 5
                },
                new SeekBarInfo()
                {
                    ViewId       = Resource.Id.seekbar_saturation,
                    StringKey    = Resource.String.key_saturation,
                    DefaultValue = 8
                },
                new SeekBarInfo()
                {
                    ViewId       = Resource.Id.seekbar_corner_radius,
                    StringKey    = Resource.String.key_corner_radius,
                    DefaultValue = 3
                }
            };

            // Set SeekBar OnSeekBarChangeListeners and default progress.
            foreach (var seekBar in SeekBars)
            {
                var      seekBarView = (SeekBar)FindViewById(seekBar.ViewId);
                Resource r           = new Resource();
                _observerSeekBar = new SeekBarObserver(_preferences, this, _sharedData, _renderer);
                seekBarView.SetOnSeekBarChangeListener(_observerSeekBar);
                seekBarView.Progress = _preferences.GetInt(GetString(seekBar.StringKey), seekBar.DefaultValue);

                // SeekBar.setProgress triggers observer only in case its value
                // changes. And we're relying on this trigger to happen.
                if (seekBarView.Progress == 0)
                {
                    seekBarView.Progress = 1;
                    seekBarView.Progress = 0;
                }
            }
        }