Пример #1
0
 public void OnExtensionAvailable(Type featureProviderType)
 {
     if (this._seenFeatureProviderTypes == null)
     {
         this._seenFeatureProviderTypes = new HashSet <Type>();
     }
     if (this._seenFeatureProviderTypes.Contains(featureProviderType))
     {
         return;
     }
     this._seenFeatureProviderTypes.Add(featureProviderType);
     foreach (UsesItemPolicyAttribute itemPolicyAttribute in featureProviderType.GetCustomAttributes(typeof(UsesItemPolicyAttribute), true))
     {
         Type itemPolicyType = itemPolicyAttribute.ItemPolicyType;
         if (typeof(ItemPolicy).IsAssignableFrom(itemPolicyType) && !this._policies.ContainsKey(itemPolicyType))
         {
             ConstructorInfo constructor = itemPolicyType.GetConstructor(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic, (Binder)null, Type.EmptyTypes, (ParameterModifier[])null);
             if (constructor != null)
             {
                 ItemPolicy policy = constructor.Invoke((object[])null) as ItemPolicy;
                 if (policy != null)
                 {
                     this.AttemptActivatePolicy(policy);
                 }
             }
         }
     }
 }
Пример #2
0
        /// <summary>
        /// Opens the ItemPolicy form to make changes on the selected item and refreshes the grid
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void toolBtnEdit_Click(object sender, EventArgs e)
        {
            DataRow dr = gridItemChoiceView.GetFocusedDataRow();

            if (dr != null)
            {
                int        itemId = Convert.ToInt32(dr["ID"]);
                ItemPolicy addItm = new ItemPolicy(itemId, true);
                addItm.ShowDialog();
                ImportItems();
            }
        }
Пример #3
0
 private void AttemptActivatePolicy(ItemPolicy policy)
 {
     if (this._policies.ContainsKey(policy.GetType()))
     {
         return;
     }
     ItemPolicyConnector.PolicyData policyData = new ItemPolicyConnector.PolicyData();
     policyData.Validator             = new RequirementValidator(this._manager, policy.GetType());
     policyData.Policy                = policy;
     this._policies[policy.GetType()] = policyData;
     if (policyData.Validator.MeetsRequirements)
     {
         this.ActivatePolicy(policyData);
     }
     else
     {
         policyData.Validator.RequirementsChanged += new EventHandler(this.OnPolicyRequirementsChanged);
     }
 }
Пример #4
0
        private EditorInitializer GetInitializer(EditorType eType, EditorConfiguration config, EditorSettings settings, ModuleEditorSettings mSettings)
        {
            EditorInitializer item = new EditorInitializer();

            //item.SelectedToolbarType = View.Toolbar;
            item.Toolbar  = GetToolbar(eType, config, settings, mSettings);
            item.CssFiles = config.CssFiles;
            #region "HTML edit"
            item.AllowEditHTML = AllowEditHtml(settings, mSettings);

            #endregion
            #region "Fonts"
            String names         = View.FontNames;
            String sizes         = View.FontSizes;
            String realFontSizes = View.RealFontSizes;
            item.FontNames       = (View.AllAvailableFontnames) ? config.FontNames : (!String.IsNullOrEmpty(names)) ? names : (mSettings != null) ? mSettings.FontNames : (settings != null) ? settings.FontNames : config.FontNames;
            item.FontSizes       = (!String.IsNullOrEmpty(sizes)) ? sizes : (mSettings != null) ? mSettings.FontSizes : (settings != null) ? settings.FontSizes : config.FontSizes;
            item.RealFontSizes   = (!String.IsNullOrEmpty(realFontSizes)) ? realFontSizes : (mSettings != null) ? mSettings.RealFontSizes : (settings != null) ? settings.RealFontSizes : config.RealFontSizes;
            item.UseRealFontSize = (!String.IsNullOrEmpty(realFontSizes)) ? View.UseRealFontSize : (mSettings != null) ? mSettings.UseRealFontSize : (settings != null) ? settings.UseRealFontSize : config.UseRealFontSize;

            //  FontConfiguration vConfiguration = View.DefaultFontConfiguration;
            //new FontConfiguration();
            //    vConfiguration.Background = View.DefaultBackground;
            //    vConfiguration.Color = View.DefaultColor;
            //    vConfiguration.Family = View.DefaultFontName;
            //    vConfiguration.Size = View.DefaultFontSize;
            //    vConfiguration.IsRealFontSize = View.UseRealFontSize;
            //    (mSettings != null) ? mSettings. : (settings != null) ? settings.FontFamily : config.DefaultEditor.ToolbarType;
            item.DefaultFont      = (mSettings != null && mSettings.DefaultFont != null) ? mSettings.DefaultFont : (settings != null && settings.DefaultFont != null) ? settings.DefaultFont:  config.DefaultFont;
            item.DefaultRealFont  = (mSettings != null && mSettings.DefaultRealFont != null) ? mSettings.DefaultRealFont : (settings != null && settings.DefaultRealFont != null) ? settings.DefaultRealFont : config.DefaultRealFont;
            item.FontSizeSettings = config.FontSizeSettings;
            #endregion
            #region "Other Settings"
            ItemPolicy sDefaultFonts = View.SetDefaultFont;
            ItemPolicy aPolicy       = View.AutoResizeHeight;

            item.SetDefaultFont   = (sDefaultFonts != ItemPolicy.byconfiguration) ? sDefaultFonts : (mSettings != null) ? mSettings.SetDefaultFont : (settings != null) ? settings.SetDefaultFont : ItemPolicy.notallowed;
            item.AutoResizeHeight = (aPolicy != ItemPolicy.byconfiguration) ? aPolicy : (mSettings != null) ? mSettings.AutoResizeHeight : (settings != null) ? settings.AutoResizeHeight :  ItemPolicy.notallowed;
            if (View.DisabledTags == "-")
            {
                item.DisabledTags = (mSettings != null) ? mSettings.DisabledTags : (settings != null) ? settings.DisabledTags : "";
            }
            else
            {
                item.DisabledTags = View.DisabledTags;
            }

            if (View.EnabledTags == "-")
            {
                item.EnabledTags = (mSettings != null) ? mSettings.EnabledTags : (settings != null) ? settings.EnabledTags : "";
            }
            else
            {
                item.EnabledTags = View.EnabledTags;
            }

            item.Width  = (!String.IsNullOrEmpty(View.EditorWidth)) ? View.EditorWidth : (mSettings != null) ? mSettings.Width : (settings != null) ? settings.Width : "";
            item.Height = (!String.IsNullOrEmpty(View.EditorHeight)) ? View.EditorHeight : (mSettings != null) ? mSettings.Height : (settings != null) ? settings.Height : "";
            #endregion

            #region "Link To"
            String        vItemsToLink = View.ItemsToLink;
            List <String> tags         = item.EnabledTags.Split(',').ToList();
            item.ItemsToLink = config.AvailableItemsToLink.Where(a => tags.Contains(a.Tag)).ToList();
            #endregion
            #region "Smartags"
            String vSmartags = View.SmartTags;
            #endregion
            item.ToolsPath           = (settings != null) ? settings.ToolsPath : (config.DefaultEditor == null) ? "" : config.DefaultEditor.ToolsPath;
            item.DefaultCssFilesPath = config.DefaultCssFilesPath;
            if (mSettings != null)
            {
                item.AllowMultipleFontFamily = mSettings.AllowMultipleFontFamily;
                item.AllowMultipleFontSize   = mSettings.AllowMultipleFontSize;
                if (mSettings.OvverideCssFileSettings)
                {
                    item.CssFiles = mSettings.CssFiles;
                }
            }
            return(item);
        }
Пример #5
0
 internal PasswordGenerator(ItemPolicy item)
 {
     this.item = item;
     this.charValiation = (byte)item.UsableChars.Count;// ASCII なので、高々byte
 }
Пример #6
0
 private void OpenWindow(ItemPolicy item)
 {
     if (OpenedWindows.ContainsKey(item)
         && ! OpenedWindows[item].IsDisposed)
     {
         OpenedWindows[item].Focus();
     }
     else
     {
         var window = new IndividualWindow()
         {
             Name = item.Name,
             Text = item.Name,
             Config = Config,
             Item = item,
         };
         if (OpenedWindows.ContainsKey(item))
         {
             OpenedWindows[item] = window;
         }
         else
         {
             OpenedWindows.Add(item, window);
         }
         window.Show();
     }
 }