Beispiel #1
0
        private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            displayRequest.RequestActive();

            InitializeVisualStates();
            DisplayInformation.GetForCurrentView().OrientationChanged += MainPage_OrientationChanged;

            if (ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
            {
                HardwareButtons.CameraHalfPressed += HardwareButtons_CameraHalfPressed;
                HardwareButtons.CameraReleased    += HardwareButtons_CameraReleased;
                HardwareButtons.CameraPressed     += HardwareButtons_CameraPressed;
            }

            LiveviewUnit.RotateLiveviewImage(0);
        }
Beispiel #2
0
        private void Status_PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            var status = sender as CameraStatus;

            switch (e.PropertyName)
            {
            case nameof(CameraStatus.BatteryInfo):
                BatteryStatusDisplay.BatteryInfo = status.BatteryInfo;
                break;

            case nameof(CameraStatus.ContShootingResult):
                EnqueueContshootingResult(status.ContShootingResult);
                break;

            case nameof(CameraStatus.Status):
                OnCameraStatusChanged(status);
                break;

            case nameof(CameraStatus.ShootMode):
                UpdateShutterButton(status);
                RevaluateLiveviewState(status);
                break;

            case nameof(CameraStatus.FocusStatus):
                UpdateFocusStatus(status.FocusStatus);
                break;

            case nameof(CameraStatus.TouchFocusStatus):
                UpdateTouchFocus(status.TouchFocusStatus);
                break;

            case nameof(CameraStatus.LiveviewOrientation):
                if (ApplicationSettings.GetInstance().LiveviewRotationEnabled)
                {
                    LiveviewUnit.RotateLiveviewImage(status.LiveviewOrientationAsDouble);
                }
                break;

            default:
                break;
            }
        }