private async void Save_Clicked(object sender, RoutedEventArgs e)
 {
     using (var stream = await ApplicationData.Current.LocalFolder.OpenStreamForWriteAsync(saveFileName, CreationCollisionOption.ReplaceExisting))
     {
         await inkManager.SaveAsync(stream.AsOutputStream());
     }
 }
Example #2
0
        async private void appBarSave_Click(object sender, RoutedEventArgs e)
        {
            if (inkManager.GetStrokes().Count > 0)
            {
                try
                {
                    FileSavePicker savePicker = new FileSavePicker();
                    savePicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
                    savePicker.FileTypeChoices.Add("Gif", new List <string> {
                        ".gif"
                    });
                    StorageFile file = await savePicker.PickSaveFileAsync();

                    if (file != null)
                    {
                        using (IRandomAccessStream stream = await file.OpenAsync(FileAccessMode.ReadWrite))
                        {
                            // BUG 339829 SaveAsync and misc other bugs now scheduled for OS/Future.
                            await inkManager.SaveAsync(stream);

                            status.Log(LocalizableStrings.INK_SAVE_SUCCESS);
                        }
                    }
                }
                catch (Exception ex)
                {
                    status.Log(ex.Message);
                }
            }
            else
            {
                status.Log(LocalizableStrings.INK_EMPTY_INK_SAVE);
            }
        }
Example #3
0
        private async void btnSaveWritingAsImage_Click(object sender, RoutedEventArgs e)
        {
            if (MyInkManager.GetStrokes().Count > 0)
            {
                try
                {
                    Windows.Storage.Pickers.FileSavePicker SavePicker = new Windows.Storage.Pickers.FileSavePicker();
                    SavePicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.Desktop;
                    SavePicker.DefaultFileExtension   = ".png";
                    SavePicker.FileTypeChoices.Add("PNG", new string[] { ".png" });
                    SavePicker.FileTypeChoices.Add("JPG", new string[] { ".jpg" });
                    StorageFile filesave = await SavePicker.PickSaveFileAsync();

                    IOutputStream ab = await filesave.OpenAsync(FileAccessMode.ReadWrite);

                    if (ab != null)
                    {
                        await MyInkManager.SaveAsync(ab);
                    }
                }

                catch (Exception)
                {
                    var MsgDlg = new MessageDialog("Only handwriting can be saved as image.", "Error while saving");
                    MsgDlg.ShowAsync();
                }
            }
            else
            {
                var MsgDlg = new MessageDialog("Only handwriting can be saved as image.", "Error while saving");
                await MsgDlg.ShowAsync();
            }
        }
Example #4
0
        private async void SaveDrawing()
        {
            try
            {
                FileSavePicker save = new FileSavePicker();
                save.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
                save.DefaultFileExtension   = ".png";
                save.FileTypeChoices.Add("PNG", new string[] { ".png" });

                StorageFile fileSave = await save.PickSaveFileAsync();

                IOutputStream ab = await fileSave.OpenAsync(FileAccessMode.ReadWrite);

                if (ab != null)
                {
                    await _inkManager.SaveAsync(ab);
                }

                var dlg = new MessageDialog("Your image has been saved.");
                await dlg.ShowAsync();
            }
            catch (Exception ex)
            {
                var dlg = new MessageDialog(ex.Message);
                dlg.ShowAsync();
            }
        }
 private async void Save_Clicked(object sender, RoutedEventArgs e)
 {
     using (var stream = await ApplicationData.Current.LocalFolder.OpenStreamForWriteAsync(saveFileName, CreationCollisionOption.ReplaceExisting))
     {
         // InkManager.SaveAsync fails if there are zero strokes, so we just leave the file empty if there is no actual ink.
         if (inkManager.GetStrokes().Any())
         {
             await inkManager.SaveAsync(stream.AsOutputStream());
         }
     }
 }
        // </Snippetcs_show_savepicker>

        // <Snippetcs_write_ink>
        async void WriteInk(StorageFile storageFile)
        {
            if (storageFile != null)
            {
                IRandomAccessStream writeStream = await storageFile.OpenAsync(FileAccessMode.ReadWrite);

                IOutputStream outputStream = writeStream.GetOutputStreamAt(0);
                await _inkManager.SaveAsync(outputStream);

                await outputStream.FlushAsync();

                Windows.Storage.FileProperties.BasicProperties props = await storageFile.GetBasicPropertiesAsync();

                // Call an application-defined function to display the file size.
                DisplayStatus("Saved " + props.Size.ToString() + " bytes.");
            }
        }
Example #7
0
        async private void panelcanvas_PointerReleased(object sender, PointerRoutedEventArgs e)
        {
            try
            {
                if (e.Pointer.PointerId == _penID)
                {
                    Windows.UI.Input.PointerPoint pt = e.GetCurrentPoint(PanelCanvas);


                    // Pass the pointer information to the InkManager.
                    _inkManager.ProcessPointerUp(pt);
                }

                else if (e.Pointer.PointerId == _touchID)
                {
                    // Process touch input
                    PointerPoint pt = e.GetCurrentPoint(PanelCanvas);


                    // Pass the pointer information to the InkManager.
                    _inkManager.ProcessPointerUp(pt);
                }

                _touchID = 0;
                _penID   = 0;

                var backMarkup = await ApplicationData.Current.RoamingFolder.CreateFileAsync("markupimage_" + App.Task.CaseNumber + this.listView.SelectedIndex, CreationCollisionOption.ReplaceExisting);

                if (_inkManager.GetStrokes().Count > 0)
                {
                    //buffer.Seek(0);
                    using (var os = await backMarkup.OpenAsync(FileAccessMode.ReadWrite))
                    {
                        await _inkManager.SaveAsync(os);
                    }
                }

                // Call an application-defined function to render the ink strokes.
                e.Handled = true;
            }
            catch (Exception ex)
            {
                //new MessageDialog(ex.Message,"Error").ShowAsync();
            }
        }
Example #8
0
        private async Task <byte[]> GetImage()
        {
            InkManager inkMgr = MedcialInkManager;

            if (inkMgr.GetStrokes().Count == 0)
            {
                return(null);
            }
            using (var stream = new InMemoryRandomAccessStream())
            {
                await inkMgr.SaveAsync(stream);

                await stream.FlushAsync();

                stream.Seek(0);
                byte[]  bytes  = new byte[stream.Size];
                IBuffer buffer = bytes.AsBuffer();
                await stream.ReadAsync(buffer, (uint)stream.Size, InputStreamOptions.None);

                return(bytes);
            }
        }
Example #9
0
        private async Task SaveIt()             //Implement The Saving Mechanism
        {
            try
            {
                FileSavePicker fileSave = new FileSavePicker();             //Insantiating a fileSave Object In Order To Save The Drawn Object
                fileSave.SuggestedStartLocation = PickerLocationId.DocumentsLibrary;        //Picking A Start Location For Choosing Where To Save
                fileSave.DefaultFileExtension = ".png";                                 //Setting The Default FileFormat To png
                fileSave.FileTypeChoices.Add("PNG", new String[] { ".png" });           //Adding PNG To The File Type Choice
                StorageFile storage = await fileSave.PickSaveFileAsync();
                using (IOutputStream fileStream = await storage.OpenAsync(FileAccessMode.ReadWrite))
                {
                    if (fileStream != null)
                    {
                        await inkManager.SaveAsync(fileStream);
                    }
                }
            }
            catch (Exception ex)
            {

            }
        }
        /// The methods provided in this section are simply used to allow
        /// NavigationHelper to respond to the page's navigation methods.
        ///
        /// Page specific logic should be placed in event handlers for the
        /// <see cref="GridCS.Common.NavigationHelper.LoadState"/>
        /// and <see cref="GridCS.Common.NavigationHelper.SaveState"/>.
        /// The navigation parameter is available in the LoadState method
        /// in addition to page state preserved during an earlier session.

        //protected override void OnNavigatedFrom(NavigationEventArgs e)
        //{
        //    navigationHelper.OnNavigatedFrom(e);
        //}

        #endregion

        private async void CheckInButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                base64String = "";
                if (_inkManager.GetStrokes() != null && _inkManager.GetStrokes().Count > 0)
                {
                    RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap();
                    await renderTargetBitmap.RenderAsync(InkCanvas);

                    //PhotoControl.Source = renderTargetBitmap;
                    using (var stream = new InMemoryRandomAccessStream())
                    {
                        await _inkManager.SaveAsync(stream);

                        await stream.FlushAsync();

                        stream.Seek(0);
                        //byte[] bytes = new byte[stream.Size];

                        Byte[] bytes  = new Byte[0];
                        var    reader = new DataReader(stream.GetInputStreamAt(0));
                        bytes = new Byte[stream.Size];
                        await reader.LoadAsync((uint)stream.Size);

                        reader.ReadBytes(bytes);
                        // Convert the byte array to Base 64 string
                        base64String = Convert.ToBase64String(bytes);
                        ////PhotoCopy.Source = await ImageProcessor.Base64StringToBitmap(base64String);
                    }

                    var phoneNumber = txtPhoneNumber.Text;
                    var ivCode      = txtInvitationCode.Text;
                    //
                    if (string.IsNullOrEmpty(phoneNumber))
                    {
                        MessageDialog md = new MessageDialog("Please enter phone Number");
                        await md.ShowAsync();

                        return;
                    }

                    if ((string.IsNullOrEmpty(ivCode)) && (stackPanelIV.Visibility == Visibility.Visible))
                    {
                        MessageDialog md = new MessageDialog("Please enter your invitation code");
                        await md.ShowAsync();

                        return;
                    }

                    else
                    {
                        //Check user

                        if (userRegistrationStatus == "Registered")
                        {
                            //This is to check-IN
                            newGuest();
                        }

                        else
                        {
                            MessageDialog notRegistration = new MessageDialog("Visitor not registered");
                            notRegistration.Commands.Add(new UICommand("Register Visitor")
                            {
                                Id = 0
                            });
                            notRegistration.Commands.Add(new UICommand("Cancel")
                            {
                                Id = 1
                            });
                            var result = await notRegistration.ShowAsync();

                            if (Convert.ToInt32(result.Id) == 0)
                            {
                                //Navigate to the Registration Page
                                this.Frame.Navigate(typeof(RegistrationPage));
                            }

                            else
                            {
                                //Do nothing
                                //This is  equivalent to Cancel since either way you are going back
                            }
                        }
                    }
                }

                else
                {
                    MessageDialog md     = new MessageDialog("Please input signature");
                    bool          result = false;
                    md.Commands.Add(new UICommand("OK", new UICommandInvokedHandler((cmd) => result = true)));
                    await md.ShowAsync();
                }
            }
            catch (Exception ex)
            {
                MessageDialog msg = new MessageDialog(ex.Message + " Void - CheckInButton");
                //msg.ShowAsync();
            }
        }
Example #11
0
 private async void SaveButton_Click(object sender, RoutedEventArgs e)
 {
     await inkManager.SaveAsync(inkStream.AsOutputStream());
 }