Exemplo n.º 1
0
        public static async Task <string> saveAsCustomBackgroundImageAsync(StorageFile file)
        {
            StorageFolder folder = await ApplicationData.Current.LocalFolder.CreateFolderAsync("BackgroundImage", CreationCollisionOption.OpenIfExists);

            if (folder != null)
            {
                // Delete image:
                await deleteCustomBackgroundImage();

                // Save new image:
                string      fileName = DateTime.Now.ToFileTime().ToString();
                StorageFile f        = await folder.CreateFileAsync(fileName, CreationCollisionOption.OpenIfExists);

                if (f != null)
                {
                    await file.CopyAndReplaceAsync(f);

                    customBackgroundImage = new BackgroundImageTemplate()
                    {
                        imagePath = f.Path,
                        name      = f.Name,
                        selected  = false
                    };

                    Settings.setSetting(SettingsConsts.CHAT_CUSTOM_BACKGROUND_IMAGE_NAME, fileName);
                    return(f.Path);
                }
            }
            return(null);
        }
Exemplo n.º 2
0
 //--------------------------------------------------------Constructor:----------------------------------------------------------------\\
 #region --Constructors--
 /// <summary>
 /// Basic Constructor
 /// </summary>
 /// <history>
 /// 04/09/2017 Created [Fabian Sauter]
 /// </history>
 public PersonalizeSettingsPage()
 {
     this.InitializeComponent();
     Windows.UI.Core.SystemNavigationManager.GetForCurrentView().BackRequested += AbstractBackRequestPage_BackRequested;
     this.BACKGROUND_IMAGES     = BackgroundImageCache.backgroundImages;
     this.CustomBackgroundImage = BackgroundImageCache.customBackgroundImage;
 }
Exemplo n.º 3
0
 private void initBackgroundImageTemplate(PdfWriter writer, Document document)
 {
     _backgroundImageTemplate = new BackgroundImageTemplate {
         PageSetup = PageSetup
     };
     _backgroundImageTemplate.InitBackgroundImageTemplate(writer, document);
 }
Exemplo n.º 4
0
 private void AdaptiveGridView_ItemClick(object sender, ItemClickEventArgs e)
 {
     if (e.ClickedItem is BackgroundImageTemplate)
     {
         BackgroundImageTemplate img = e.ClickedItem as BackgroundImageTemplate;
         BackgroundImageCache.setExampleBackgroundImage(img);
         //chatDetailsDummy_cdc.loadBackgrundImage();
     }
 }
Exemplo n.º 5
0
        public static void setBackgroundImage(ImageEx imgControl)
        {
            BackgroundImageTemplate img = BackgroundImageCache.selectedImage;

            if (img is null || img.imagePath is null)
            {
                imgControl.Source     = null;
                imgControl.Visibility = Visibility.Collapsed;
            }
Exemplo n.º 6
0
 public static void setExampleBackgroundImage(BackgroundImageTemplate img)
 {
     Settings.setSetting(SettingsConsts.CHAT_BACKGROUND_MODE, EXAMPLE_BACKGROUND);
     Settings.setSetting(SettingsConsts.CHAT_EXAMPLE_BACKGROUND_IMAGE_NAME, img.name);
     if (selectedImage != null)
     {
         selectedImage.selected = false;
     }
     selectedImage = img;
     img.selected  = true;
 }
Exemplo n.º 7
0
        //--------------------------------------------------------Constructor:----------------------------------------------------------------\\
        #region --Constructors--


        #endregion
        //--------------------------------------------------------Set-, Get- Methods:---------------------------------------------------------\\
        #region --Set-, Get- Methods--
        public static void setCustomBackgroundImage()
        {
            Settings.setSetting(SettingsConsts.CHAT_BACKGROUND_MODE, CUSTOM_BACKGROUND);
            if (selectedImage != null)
            {
                selectedImage.selected = false;
            }
            selectedImage = customBackgroundImage;
            if (customBackgroundImage != null)
            {
                customBackgroundImage.selected = true;
            }
        }
Exemplo n.º 8
0
        //--------------------------------------------------------Misc Methods:---------------------------------------------------------------\\
        #region --Misc Methods (Public)--
        public static void removeBackgroundImage()
        {
            Settings.setSetting(SettingsConsts.CHAT_BACKGROUND_MODE, NONE_BACKGROUND);
            selectedImage = null;
            for (int i = 0; i < backgroundImages.Count; i++)
            {
                backgroundImages[i].selected = false;
            }

            if (customBackgroundImage != null)
            {
                customBackgroundImage.selected = false;
            }
        }
Exemplo n.º 9
0
        public static void setBackgroundImage(ImageEx imgControl)
        {
            BackgroundImageTemplate img = BackgroundImageCache.selectedImage;

            if (img == null || img.imagePath == null)
            {
                imgControl.Source     = null;
                imgControl.Visibility = Visibility.Collapsed;
            }
            else
            {
                imgControl.Source     = new BitmapImage(new Uri(img.imagePath));
                imgControl.Visibility = Visibility.Visible;
            }
        }
Exemplo n.º 10
0
        //--------------------------------------------------------Set-, Get- Methods:---------------------------------------------------------\\
        #region --Set-, Get- Methods--


        #endregion
        //--------------------------------------------------------Misc Methods:---------------------------------------------------------------\\
        #region --Misc Methods (Public)--


        #endregion

        #region --Misc Methods (Private)--
        private async Task browseBackgroundAsync()
        {
            FileOpenPicker picker = new FileOpenPicker
            {
                ViewMode = PickerViewMode.Thumbnail,
                SuggestedStartLocation = PickerLocationId.PicturesLibrary
            };

            picker.FileTypeFilter.Add(".jpg");
            picker.FileTypeFilter.Add(".jpeg");
            picker.FileTypeFilter.Add(".png");

            StorageFile file = await picker.PickSingleFileAsync();

            if (file != null)
            {
                string path = await BackgroundImageCache.saveAsCustomBackgroundImageAsync(file);

                if (path != null)
                {
                    BackgroundImageCache.setCustomBackgroundImage();
                    CustomBackgroundImage = null;
                    CustomBackgroundImage = BackgroundImageCache.customBackgroundImage;
                    //chatDetailsDummy_cdc.loadBackgrundImage();
                    Logger.Info("Custom background image set to: " + file.Path);
                }
                else
                {
                    showInfo("Failed to pick image!");
                    Logger.Warn("Failed to set image as background image. Path is null!");
                }
            }
            else
            {
                showInfo("Selection canceled!");
            }
        }
Exemplo n.º 11
0
        public static async Task deleteCustomBackgroundImage()
        {
            string imgName = Settings.getSettingString(SettingsConsts.CHAT_CUSTOM_BACKGROUND_IMAGE_NAME);

            if (imgName == null)
            {
                return;
            }

            try
            {
                StorageFolder folder = await ApplicationData.Current.LocalFolder.CreateFolderAsync("BackgroundImage", CreationCollisionOption.OpenIfExists);

                if (folder != null)
                {
                    StorageFile f = await folder.GetFileAsync(imgName);

                    if (f != null)
                    {
                        await f.DeleteAsync();
                    }
                }
                Logger.Info("Deleted custom background image.");
            }
            catch (Exception e)
            {
                Logger.Error("Failed to delete custom background image!", e);
            }

            Settings.setSetting(SettingsConsts.CHAT_CUSTOM_BACKGROUND_IMAGE_NAME, null);

            if (customBackgroundImage != null && customBackgroundImage.selected)
            {
                removeBackgroundImage();
            }
            customBackgroundImage = null;
        }
Exemplo n.º 12
0
        private async void deleteCustomImage_btn_Click(object sender, RoutedEventArgs e)
        {
            await BackgroundImageCache.deleteCustomBackgroundImage();

            CustomBackgroundImage = BackgroundImageCache.customBackgroundImage;
        }
Exemplo n.º 13
0
 private void initBackgroundImageTemplate(PdfWriter writer, Document document)
 {
     _backgroundImageTemplate = new BackgroundImageTemplate { PageSetup = PageSetup };
     _backgroundImageTemplate.InitBackgroundImageTemplate(writer, document);
 }
Exemplo n.º 14
0
        public static void loadCache()
        {
            if (loaded)
            {
                return;
            }

            Task.WaitAny(Task.Run(async() =>
            {
                Logger.Info("Started loading background images...");
                DateTime timeStart = DateTime.Now;
                string imgName     = Settings.getSettingString(SettingsConsts.CHAT_CUSTOM_BACKGROUND_IMAGE_NAME);
                try
                {
                    // Load custom background image:
                    if (imgName != null)
                    {
                        try
                        {
                            StorageFolder customImagefolder = await ApplicationData.Current.LocalFolder.CreateFolderAsync("BackgroundImage", CreationCollisionOption.OpenIfExists);
                            if (customImagefolder != null)
                            {
                                StorageFile f = await customImagefolder.GetFileAsync(imgName);
                                if (f != null)
                                {
                                    customBackgroundImage = new BackgroundImageTemplate()
                                    {
                                        imagePath = f.Path,
                                        name      = imgName,
                                        selected  = false
                                    };
                                }
                            }
                        }
                        catch (Exception e)
                        {
                            Logger.Error("Error during loading the custom background image!", e);
                        }
                    }

                    // Set image based on mode:
                    byte backgroundMode = Settings.getSettingByte(SettingsConsts.CHAT_BACKGROUND_MODE);
                    switch (backgroundMode)
                    {
                    case CUSTOM_BACKGROUND:
                        customBackgroundImage.selected = true;
                        selectedImage = customBackgroundImage;
                        break;

                    case NONE_BACKGROUND:
                        selectedImage = null;
                        break;
                    }

                    // Load example images:
                    imgName          = Settings.getSettingString(SettingsConsts.CHAT_EXAMPLE_BACKGROUND_IMAGE_NAME);
                    backgroundImages = new CustomObservableCollection <BackgroundImageTemplate>();
                    ImageCache.Instance.MaxMemoryCacheCount = 100;
                    StorageFolder picturesFolder            = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync(@"Assets\BackgroundImages");
                    foreach (StorageFile file in await picturesFolder.GetFilesAsync())
                    {
                        try
                        {
                            Uri imgUri                  = new Uri(file.Path);
                            bool isSelectedImage        = imgName != null && imgName.Equals(file.Name) && backgroundMode == EXAMPLE_BACKGROUND;
                            BackgroundImageTemplate bgI = new BackgroundImageTemplate
                            {
                                imagePath = file.Path,
                                name      = file.Name,
                                selected  = isSelectedImage
                            };

                            backgroundImages.Add(bgI);
                            if (isSelectedImage)
                            {
                                selectedImage = bgI;
                            }
                        }
                        catch (Exception e)
                        {
                            Logger.Error("Error during loading a background image!", e);
                        }
                    }
                    Logger.Info("Finished loading background images in: " + DateTime.Now.Subtract(timeStart).TotalMilliseconds + "ms.");
                }
                catch (Exception e)
                {
                    Logger.Error("Error during loading background images!", e);
                }
                loaded = true;
            }));
        }