internal ImageDecoratorsList(ImageDecoratorsManager decoratorsManager, BlogPostSettingsBag settingsBag, bool addDefaultBorderDecorator)
        {
            _decoratorsManager     = decoratorsManager;
            _decoratorsSettingsBag = settingsBag;
            List <ImageDecorator> decorators = new List <ImageDecorator>();

            string appliedDecorators = settingsBag.GetString(APPLIED_DECORATORS, "");

            //Add all of the defined decorators from the settings bag to the decoratorslist.
            //Bug fix note: collect decorators into an arraylist to avoid enumeration modified exception
            //from _decoratorsSettingsBag.SubsettingNames when calling AddDecorator(decorator);
            foreach (string decoratorId in appliedDecorators.Split(','))
            {
                ImageDecorator decorator = decoratorsManager.GetImageDecorator(decoratorId);
                if (decorator != null)
                {
                    decorators.Add(decorator);
                }
            }

            AddDecorator(decorators.ToArray());

            if (addDefaultBorderDecorator && (BorderImageDecorator == null))
            {
                AddDecorator(HtmlBorderDecorator.Id);
            }
        }
        internal ImageDecoratorsList(ImageDecoratorsManager decoratorsManager, BlogPostSettingsBag settingsBag, bool addDefaultBorderDecorator)
        {
            _decoratorsManager = decoratorsManager;
            _decoratorsSettingsBag = settingsBag;
            List<ImageDecorator> decorators = new List<ImageDecorator>();

            string appliedDecorators = settingsBag.GetString(APPLIED_DECORATORS, "");
            //Add all of the defined decorators from the settings bag to the decoratorslist.
            //Bug fix note: collect decorators into an arraylist to avoid enumeration modified exception
            //from _decoratorsSettingsBag.SubsettingNames when calling AddDecorator(decorator);
            foreach (string decoratorId in appliedDecorators.Split(','))
            {
                ImageDecorator decorator = decoratorsManager.GetImageDecorator(decoratorId);
                if (decorator != null)
                {
                    decorators.Add(decorator);
                }
            }

            AddDecorator(decorators.ToArray());

            if (addDefaultBorderDecorator && (BorderImageDecorator == null))
                AddDecorator(HtmlBorderDecorator.Id);
        }
Exemple #3
0
 public string GetString(string key, string defaultValue)
 {
     return(_settingsBag.GetString(key, defaultValue));
 }