/// <summary>
        /// Update styles variation iamges before its flyout is open
        /// </summary>
        /// <param name="source"></param>
        /// <param name="contentSlide"></param>
        /// <param name="slideWidth"></param>
        /// <param name="slideHeight"></param>
        /// <param name="givenOptions"></param>
        /// <param name="givenVariants"></param>
        public void UpdateStyleVariationImagesWhenOpenFlyout(ImageItem source, Slide contentSlide, float slideWidth, float slideHeight,
                                                             List <StyleOption> givenOptions = null, Dictionary <string, List <StyleVariant> > givenVariants = null)
        {
            Logger.Log("Variation stage is open");
            var targetStyleItem = StylesPreviewListSelectedItem.ImageItem;

            StylesVariationList.Clear();

            if (!IsAbleToUpdateStylesVariationImages(source, targetStyleItem, contentSlide))
            {
                return;
            }

            InitStylesVariationCategories(givenOptions, givenVariants, targetStyleItem.Tooltip);
            if (Settings.GetDefaultAspectWhenCustomize() == Aspect.PictureAspect)
            {
                UpdateStylesVariationImages(source, contentSlide, slideWidth, slideHeight, isMockPreviewImages: true);
            }
            else
            {
                UpdateStylesVariationImages(source, contentSlide, slideWidth, slideHeight);
            }

            StylesVariationListSelectedId.Number = 0;
            View.SetVariationListBoxScrollOffset(0d);
            _isPictureVariationInit = false;

            if (Settings.GetDefaultAspectWhenCustomize() == Aspect.PictureAspect)
            {
                CurrentVariantCategoryId.Number =
                    VariantsCategory.IndexOf(PictureSlidesLabText.VariantCategoryPicture);
            }
            Logger.Log("Variation open completed");
        }
        /// <summary>
        /// Update styles variation images after its flyout been open
        /// </summary>
        public void UpdateStylesVariationImagesAfterOpenFlyout(ImageItem source, Slide contentSlide, float slideWidth, float slideHeight, bool isUpdateSelectedPreviewOnly = false)
        {
            Logger.Log("Variation is already open, update preview images");
            var selectedId      = StylesVariationListSelectedId.Number;
            var scrollOffset    = View.GetVariationListBoxScrollOffset();
            var targetStyleItem = StylesPreviewListSelectedItem.ImageItem;

            if (!isUpdateSelectedPreviewOnly)
            {
                StylesVariationList.Clear();
            }

            if (!IsAbleToUpdateStylesVariationImages(source, targetStyleItem, contentSlide))
            {
                return;
            }

            StylesVariationListSelectedId.Number = selectedId < 0 ? 0 : selectedId;

            if (isUpdateSelectedPreviewOnly)
            {
                UpdateStylesVariationImages(source, contentSlide, slideWidth, slideHeight, selectedId: StylesVariationListSelectedId.Number);
            }
            else
            {
                UpdateStylesVariationImages(source, contentSlide, slideWidth, slideHeight);
            }

            View.SetVariationListBoxScrollOffset(scrollOffset);
        }
        private void UpdateStylesVariationImages(ImageItem source, Slide contentSlide,
                                                 float slideWidth, float slideHeight, bool isMockPreviewImages = false)
        {
            Logger.Log("UpdateStylesVariationImages begins");
            var copiedPicture = LoadClipboardPicture();

            try
            {
                if (isMockPreviewImages)
                {
                    Logger.Log("Generate mock images for Picture aspect");
                }
                Logger.Log("Number of styles: " + _styleOptions.Count);
                for (var i = 0; i < _styleOptions.Count; i++)
                {
                    var         styleOption = _styleOptions[i];
                    PreviewInfo previewInfo;
                    if (isMockPreviewImages)
                    {
                        previewInfo = new PreviewInfo
                        {
                            PreviewApplyStyleImagePath = StoragePath.NoPicturePlaceholderImgPath
                        };
                    }
                    else
                    {
                        previewInfo = Designer.PreviewApplyStyle(
                            IsInPictureVariation()
                                ? _8PicturesInPictureVariation[i]
                                : source,
                            contentSlide, slideWidth, slideHeight, styleOption);
                    }
                    StylesVariationList.Add(new ImageItem
                    {
                        ImageFile = previewInfo.PreviewApplyStyleImagePath,
                        Tooltip   = styleOption.OptionName
                    });
                }
                GC.Collect();
            }
            catch (Exception e)
            {
                View.ShowErrorMessageBox(TextCollection.PictureSlidesLabText.ErrorImageCorrupted, e);
                Logger.LogException(e, "UpdateStylesVariationImages");
            }
            SaveClipboardPicture(copiedPicture);
            Logger.Log("UpdateStylesVariationImages done");
        }
Beispiel #4
0
        /// <summary>
        /// Update styles variation images after its flyout been open
        /// </summary>
        public void UpdateStylesVariationImagesAfterOpenFlyout(ImageItem source, Slide contentSlide, float slideWidth, float slideHeight)
        {
            var selectedId      = StylesVariationListSelectedId.Number;
            var scrollOffset    = View.GetVariationListBoxScrollOffset();
            var targetStyleItem = StylesPreviewListSelectedItem.ImageItem;

            StylesVariationList.Clear();

            if (!IsAbleToUpdateStylesVariationImages(source, targetStyleItem, contentSlide))
            {
                return;
            }

            UpdateStylesVariationImages(source, contentSlide, slideWidth, slideHeight);

            StylesVariationListSelectedId.Number = selectedId;
            View.SetVariationListBoxScrollOffset(scrollOffset);
        }
Beispiel #5
0
        /// <summary>
        /// Update styles variation iamges before its flyout is open
        /// </summary>
        /// <param name="source"></param>
        /// <param name="contentSlide"></param>
        /// <param name="slideWidth"></param>
        /// <param name="slideHeight"></param>
        /// <param name="givenOptions"></param>
        /// <param name="givenVariants"></param>
        public void UpdateStyleVariationImagesWhenOpenFlyout(ImageItem source, Slide contentSlide, float slideWidth, float slideHeight,
                                                             List <StyleOptions> givenOptions = null, Dictionary <string, List <StyleVariants> > givenVariants = null)
        {
            var targetStyleItem = StylesPreviewListSelectedItem.ImageItem;

            StylesVariationList.Clear();

            if (!IsAbleToUpdateStylesVariationImages(source, targetStyleItem, contentSlide))
            {
                return;
            }

            InitStylesVariationCategories(givenOptions, givenVariants, targetStyleItem.Tooltip);
            UpdateStylesVariationImages(source, contentSlide, slideWidth, slideHeight);

            StylesVariationListSelectedId.Number = 0;
            View.SetVariationListBoxScrollOffset(0d);
        }
Beispiel #6
0
 private void UpdateStylesVariationImages(ImageItem source, Slide contentSlide,
                                          float slideWidth, float slideHeight)
 {
     try
     {
         foreach (var styleOption in _styleOptions)
         {
             var previewInfo = Designer.PreviewApplyStyle(source, contentSlide,
                                                          slideWidth, slideHeight, styleOption);
             StylesVariationList.Add(new ImageItem
             {
                 ImageFile = previewInfo.PreviewApplyStyleImagePath,
                 Tooltip   = styleOption.OptionName
             });
         }
     }
     catch
     {
         View.ShowErrorMessageBox(TextCollection.PictureSlidesLabText.ErrorImageCorrupted);
     }
 }
        private void UpdateStylesVariationImages(ImageItem source, Slide contentSlide,
                                                 float slideWidth, float slideHeight, bool isMockPreviewImages = false, int selectedId = -1)
        {
            Logger.Log("UpdateStylesVariationImages begins");
            var copiedPicture = LoadClipboardPicture();

            try
            {
                if (isMockPreviewImages)
                {
                    Logger.Log("Generate mock images for Picture aspect");
                }
                Logger.Log("Number of styles: " + _styleOptions.Count);
                if (selectedId != -1)
                {
                    StylesVariationList[selectedId] =
                        GenerateImageItem(source, contentSlide, slideWidth, slideHeight, isMockPreviewImages, selectedId);
                }
                else
                {
                    for (var i = 0; i < _styleOptions.Count; i++)
                    {
                        StylesVariationList.Add(
                            GenerateImageItem(source, contentSlide, slideWidth, slideHeight, isMockPreviewImages, i));
                    }
                }
                GC.Collect();
            }
            catch (Exception e)
            {
                View.ShowErrorMessageBox(PictureSlidesLabText.ErrorImageCorrupted, e);
                Logger.LogException(e, "UpdateStylesVariationImages");
            }
            SaveClipboardPicture(copiedPicture);
            Logger.Log("UpdateStylesVariationImages done");
        }