internal void HandleAttachment(FeedbackAttachmentVM attachment) { if (attachment.MarkedAsDeleted) { if (!attachment.IsNewAttachment) { this.Attachments.Remove(attachment); } } else if (attachment.IsNewAttachment) { this.Attachments.Add(attachment); } }
internal static async Task <FeedbackAttachmentVM> LoadFromStorageAsync(string filename) { var helper = HockeyClient.Current.AsInternal().PlatformHelper; var imageFileName = filename.Substring(filename.IndexOf(AttachmentNameSeparator) + 1).Replace(AttachmentFileExt, ""); var fbAttachVM = new FeedbackAttachmentVM(); using (var stream = (await helper.GetStreamAsync(filename, ConstantsUniversal.FeedbackAttachmentTmpDir)).AsRandomAccessStream()) { var buffer = WindowsRuntimeBuffer.Create((int)stream.Size); await stream.ReadAsync(buffer, (uint)stream.Size, InputStreamOptions.None); fbAttachVM.ImageBuffer = buffer; fbAttachVM.InitialImage = await buffer.AsBitmapImageAsync(); fbAttachVM.FeedbackAttachment.FileName = imageFileName; } return(fbAttachVM); }
internal static async Task <FeedbackMessageVM> LoadFeedbackMessageVMFromStorageAsync() { var helper = HockeyClient.Current.AsInternal().PlatformHelper; var feedbackVM = new FeedbackMessageVM(); if (await helper.FileExistsAsync(ConstantsUniversal.OpenFeedbackMessageFile, ConstantsUniversal.FeedbackAttachmentTmpDir)) { DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(FeedbackMessage)); using (var stream = await helper.GetStreamAsync(ConstantsUniversal.OpenFeedbackMessageFile, ConstantsUniversal.FeedbackAttachmentTmpDir)) { feedbackVM.FeedbackMessage = serializer.ReadObject(stream) as FeedbackMessage; } var files = await helper.GetFileNamesAsync(ConstantsUniversal.FeedbackAttachmentTmpDir, "*" + FeedbackAttachmentVM.AttachmentFileExt); foreach (var filename in files.ToList().OrderBy(f => f)) { feedbackVM.Attachments.Add(await FeedbackAttachmentVM.LoadFromStorageAsync(filename)); } } return(feedbackVM); }
internal void HandleAttachment(FeedbackAttachmentVM attachment) { if (attachment.MarkedAsDeleted) { if(!attachment.IsNewAttachment) { this.Attachments.Remove(attachment); } } else if (attachment.IsNewAttachment) { this.Attachments.Add(attachment); } }
internal static async Task<FeedbackAttachmentVM> LoadFromStorageAsync(string filename) { var helper = HockeyClient.Current.AsInternal().PlatformHelper; var imageFileName = filename.Substring(filename.IndexOf(AttachmentNameSeparator) + 1).Replace(AttachmentFileExt, ""); var fbAttachVM = new FeedbackAttachmentVM(); using (var stream = (await helper.GetStreamAsync(filename, ConstantsUniversal.FeedbackAttachmentTmpDir)).AsRandomAccessStream()) { var buffer = WindowsRuntimeBuffer.Create((int)stream.Size); await stream.ReadAsync(buffer, (uint)stream.Size, InputStreamOptions.None); fbAttachVM.ImageBuffer = buffer; fbAttachVM.InitialImage = await buffer.AsBitmapImageAsync(); fbAttachVM.FeedbackAttachment.FileName = imageFileName; } return fbAttachVM; }
internal async Task<object> GetDataContextNavigatedToImagePage(NavigationEventArgs args, Canvas canvas, Image showArea) { await InitializeIfNeeded(); dynamic pars = args.Parameter as DynamicNavigationParameters ?? new DynamicNavigationParameters(); FeedbackAttachmentVM attachVM = pars.Attachment; //when called from Formpage if (attachVM == null) // called from filePickerResume { attachVM = new FeedbackAttachmentVM(); attachVM.IsNewAttachment = true; var file = (pars.ImageFile as StorageFile); attachVM.FeedbackAttachment.FileName = file.Name; var img = await file.GetBitmapImageAsync(); attachVM.InitialImage = img; } attachVM.Canvas = canvas; if (attachVM.IsNotReadOnly) { canvas.Children.Clear(); canvas.Background = attachVM.InitialImage.AsImageBrush(); } attachVM.OrientationChanged(canvas, showArea); return attachVM; }