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); } } } } }
/// <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(); } }
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); } }
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); }
internal PasswordGenerator(ItemPolicy item) { this.item = item; this.charValiation = (byte)item.UsableChars.Count;// ASCII なので、高々byte }
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(); } }