private void SetupCSSElements() { _viewCSSElements.Clear(); foreach (var cssElementName in _fontSettings.CssElements.Keys) { foreach (var cssElementCode in _fontSettings.CssElements[cssElementName].Keys) { CSSElementListItem item = new CSSElementListItem { Name = cssElementName, Class = cssElementCode }; foreach (var font in _fontSettings.CssElements[cssElementName][cssElementCode]) { item.Fonts.Add(font); } _viewCSSElements.Add(item); } } _myDataSourceCSS.DataSource = _viewCSSElements; listBoxCSSElements.DataSource = _myDataSourceCSS; listBoxCSSElements.DisplayMember = "FullName"; _myDataSourceCSSFonts.DataSource = _myDataSourceCSS; _myDataSourceCSSFonts.DataMember = "Fonts"; listBoxCSSFonts.DataSource = _myDataSourceCSSFonts; listBoxCSSFonts.DisplayMember = "Name"; }
private void AddCSSElement(string name, string className) { CSSElementListItem newViewElement; if (!_fontSettings.CssElements.ContainsKey(name)) { _fontSettings.CssElements.Add(name, new Dictionary<string, List<ICSSFontFamily>>()); _fontSettings.CssElements[name].Add(className, new List<ICSSFontFamily>()); newViewElement = new CSSElementListItem {Class = className, Name = name}; _viewCSSElements.Add(newViewElement); } else { if (!_fontSettings.CssElements[name].ContainsKey(className)) { _fontSettings.CssElements[name].Add(className, new List<ICSSFontFamily>()); newViewElement = new CSSElementListItem { Class = className, Name = name }; _viewCSSElements.Add(newViewElement); } else { newViewElement = _viewCSSElements.Find(x=>((x.Name== name)&&(x.Class == className))); } } _myDataSourceCSS.ResetBindings(false); if (newViewElement != null && _myDataSourceCSS.Count != 0 ) { _myDataSourceCSS.MoveNext(); while (_myDataSourceCSS.Current != newViewElement) { _myDataSourceCSS.MoveNext(); } } }
private void buttonAddCSSFont_Click(object sender, EventArgs e) { AddFontsForm addForm = new AddFontsForm(_fontSettings.Fonts); DialogResult result = addForm.ShowDialog(this); if (result == DialogResult.OK && addForm.SelectedFont != null) { CSSElementListItem currentElement = _myDataSourceCSS.Current as CSSElementListItem; if (currentElement != null) { ICSSFontFamily font = _fontSettings.Fonts[addForm.SelectedFont]; if (font != null) { currentElement.Fonts.Add(font); _fontSettings.CssElements[currentElement.Name][currentElement.Class].Add(font); _myDataSourceCSSFonts.ResetBindings(false); } } } }
private void buttonRemoveCSS_Click(object sender, EventArgs e) { CSSElementListItem current = _myDataSourceCSS.Current as CSSElementListItem; if (current != null) { _myDataSourceCSS.RemoveCurrent(); if (_fontSettings.CssElements.ContainsKey(current.Name)) { if (_fontSettings.CssElements[current.Name].ContainsKey(current.Class)) { _fontSettings.CssElements[current.Name].Remove(current.Class); } if (_fontSettings.CssElements[current.Name].Count == 0) { _fontSettings.CssElements.Remove(current.Name); } } } }
private void AddCSSElement(string name, string className) { CSSElementListItem newViewElement; if (!_fontSettings.CssElements.ContainsKey(name)) { _fontSettings.CssElements.Add(name, new Dictionary <string, List <ICSSFontFamily> >()); _fontSettings.CssElements[name].Add(className, new List <ICSSFontFamily>()); newViewElement = new CSSElementListItem { Class = className, Name = name }; _viewCSSElements.Add(newViewElement); } else { if (!_fontSettings.CssElements[name].ContainsKey(className)) { _fontSettings.CssElements[name].Add(className, new List <ICSSFontFamily>()); newViewElement = new CSSElementListItem { Class = className, Name = name }; _viewCSSElements.Add(newViewElement); } else { newViewElement = _viewCSSElements.Find(x => ((x.Name == name) && (x.Class == className))); } } _myDataSourceCSS.ResetBindings(false); if (newViewElement != null && _myDataSourceCSS.Count != 0) { _myDataSourceCSS.MoveNext(); while (_myDataSourceCSS.Current != newViewElement) { _myDataSourceCSS.MoveNext(); } } }
private void SetupCSSElements() { _viewCSSElements.Clear(); foreach (var cssElementName in _fontSettings.CssElements.Keys) { foreach (var cssElementCode in _fontSettings.CssElements[cssElementName].Keys) { CSSElementListItem item = new CSSElementListItem {Name = cssElementName, Class = cssElementCode}; foreach (var font in _fontSettings.CssElements[cssElementName][cssElementCode]) { item.Fonts.Add(font); } _viewCSSElements.Add(item); } } _myDataSourceCSS.DataSource = _viewCSSElements; listBoxCSSElements.DataSource = _myDataSourceCSS; listBoxCSSElements.DisplayMember = "FullName"; _myDataSourceCSSFonts.DataSource = _myDataSourceCSS; _myDataSourceCSSFonts.DataMember = "Fonts"; listBoxCSSFonts.DataSource = _myDataSourceCSSFonts; listBoxCSSFonts.DisplayMember = "Name"; }