Ejemplo n.º 1
0
        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            if (pixelationPicker.Items.Count == 0)
            {
                pixelationPicker.Items.Add(3);
                pixelationPicker.Items.Add(4);
                pixelationPicker.Items.Add(5);
                pixelationPicker.Items.Add(6);
                pixelationPicker.Items.Add(7);
                pixelationPicker.Items.Add(8);
                pixelationPicker.Items.Add(9);
                pixelationPicker.Items.Add(10);
            }

            var currentPixelation = new PixelationSizeQuery().Get();
            pixelationPicker.SelectedItem = currentPixelation;

            var saveToCameraRoll = new SaveOriginalToCameraRollQuery().Get();
            saveToCameraRollCheckBox.IsChecked = saveToCameraRoll;

            pixelationPicker.SelectionChanged += OnPixelationChanged;
            saveToCameraRollCheckBox.Checked += OnSaveToCameraRollCheckBoxChecked;
            saveToCameraRollCheckBox.Unchecked += OnSaveToCameraRollCheckBoxUnchecked;
        }
Ejemplo n.º 2
0
        private void OnCameraCaptureImageAvailable(object sender, ContentReadyEventArgs e)
        {
            var newSaveCounter = new SaveCounterQuery().Get() + 1;
            if (newSaveCounter > 10 && _isTrial)
            {
                Deployment.Current.Dispatcher.BeginInvoke(() =>
                                                              {
                                                                  var messageBoxResult = MessageBox.Show("The trial version of this app is limited to taking 10 images. Thanks for trying out 8cam! Press OK to buy the full version.", "Trial", MessageBoxButton.OKCancel);
                                                                  if (messageBoxResult == MessageBoxResult.OK)
                                                                  {
                                                                      new MarketplaceDetailTask().Show();
                                                                  }
                                                              });

                return;
            }

            var fileName = "PixImg_" + newSaveCounter + ".jpg";
            try
            {
                var saveOriginalToCameraRoll = new SaveOriginalToCameraRollQuery().Get();
                var stream = new MemoryStream();
                _wb.SaveJpeg(stream, _wb.PixelWidth, _wb.PixelHeight, 0, 100);

                Deployment.Current.Dispatcher.BeginInvoke(() =>
                                                              {
                                                                  var rotatedStream = RotateStream(stream);

                                                                   if (saveOriginalToCameraRoll)
                                                                  {
                                                                      _mediaLibrary.SavePictureToCameraRoll(fileName, e.ImageStream);
                                                                  }

                                                                  _mediaLibrary.SavePicture(fileName, rotatedStream.ToArray());

                                                                  new ShowSavedMessageCommand().Show();
                                                              });

            }
            catch (Exception exception)
            {
                // TODO: do something with exception?
            }

            new SaveCounterCommand().Set(newSaveCounter);
        }
Ejemplo n.º 3
0
        private void SavePicture(int newSaveCounter, Stream imageStream)
        {
            var fileName = "PixImg_" + newSaveCounter + ".jpg";
            try
            {
                var saveOriginalToCameraRoll = new SaveOriginalToCameraRollQuery().Get();
                var stream = new MemoryStream();
                _wb.SaveJpeg(stream, _wb.PixelWidth, _wb.PixelHeight, 0, 100);

                Deployment.Current.Dispatcher.BeginInvoke(() =>
                {
                    var rotatedStream = RotateStream(stream);

                    if (saveOriginalToCameraRoll)
                    {
                        _mediaLibrary.SavePictureToCameraRoll(fileName, imageStream);
                    }

                    _mediaLibrary.SavePicture(fileName, rotatedStream.ToArray());

                    new ShowSavedMessageCommand().Show();
                });

            }
            catch (Exception exception)
            {
                // TODO: do something with exception?
            }

            new SaveCounterCommand().Set(newSaveCounter);
        }