public FillProps(Draws drw) { //Thread.CurrentThread.CurrentUICulture = new CultureInfo("en"); InitializeComponent(); // ------------------------------------------------------------------- cbColor.Items.Clear(); cbColor.Items.AddRange(DrawUtils.GetAllColorNames()); // получение всех имён доступных цветов cbColor.Items.Add("Выбор цвета..."); // добавление пункта выбора цвета cbColor.Text = DrawUtils.GetColorNameFromIndex(LastColorIndex); // ------------------------------------------------------------------- cbColorPattern.Items.Clear(); cbColorPattern.Items.AddRange(DrawUtils.GetAllColorNames()); // получение всех имён доступных цветов cbColorPattern.Items.Add("Выбор цвета..."); // добавление пункта выбора цвета cbColorPattern.Text = DrawUtils.GetColorNameFromIndex(LastPatternColorIndex); // ------------------------------------------------------------------- cbPattern.Items.Clear(); cbPattern.Items.AddRange(DrawUtils.GetAllPatternNames()); // получение всех имён доступных паттернов cbPattern.SelectedIndex = 1; // ------------------------------------------------------------------- if (drw != null) { fill.Assign(drw.Fill); } // ------------------------------- int Index = DrawUtils.ColorToIndex(fill.Color); if (Index < 0) { DrawUtils.AddCustomColor(fill.Color); cbColor.Items.Insert(cbColor.Items.Count - 1, "Мой цвет"); Index = cbColor.Items.Count - 2; } if (Index >= 0) { cbColor.SelectedIndex = Index; } // ------------------------------- Index = DrawUtils.ColorToIndex(fill.PatternColor); if (Index < 0) { DrawUtils.AddCustomColor(fill.PatternColor); cbColorPattern.Items.Insert(cbColorPattern.Items.Count - 1, "Мой цвет"); Index = cbColorPattern.Items.Count - 2; } if (Index >= 0) { cbColorPattern.SelectedIndex = Index; } // ------------------------------- tbTrasparent.Value = 255 - fill.Alpha; lbTrasparent.Text = String.Format(CultureInfo.InvariantCulture, "{0}", (int)(tbTrasparent.Value / 255.0 * 100.0)) + " %"; // ------------------------------- cbPattern.SelectedIndex = fill.PatternIndex; cbColorPattern.Enabled = (cbPattern.SelectedIndex > 1); }
private void cbColor_SelectedIndexChanged(object sender, EventArgs e) { ComboBox cbox = (ComboBox)sender; if (cbox.SelectedIndex == cbox.Items.Count - 1) { try { int selIndex; dlgSelectColor.Color = DrawUtils.ColorFromIndex(LastColorIndex); selIndex = LastColorIndex; if (dlgSelectColor.ShowDialog() == DialogResult.OK) { Color selColor = dlgSelectColor.Color; stroke.Color = selColor; if (!DrawUtils.FindColor(selColor)) { DrawUtils.AddCustomColor(selColor); dlgSelectColor.CustomColors = DrawUtils.GetCustomColors(); cbColor.Items.Insert(cbColor.Items.Count - 1, "Мой цвет"); cbColor.SelectedIndex = cbColor.Items.Count - 2; } else { cbox.SelectedIndex = DrawUtils.ColorToIndex(selColor); } } else { cbox.SelectedIndex = selIndex; } } catch { } } else { LastColorIndex = cbox.SelectedIndex; cbox.Refresh(); pbPreview.Refresh(); } }
public StrokeProps(Draws drw) { InitializeComponent(); // ------------------------------------------------------------------- cbPattern.Items.Clear(); cbPattern.Items.AddRange(DrawUtils.GetPenPatternNames()); // получение всех имён доступных типов линий cbPattern.SelectedIndex = 1; // ------------------------------------------------------------------- cbWidth.Items.Clear(); for (int i = 1; i < 61; i++) { cbWidth.Items.Add(i.ToString()); } // ------------------------------------------------------------------- cbColor.Items.Clear(); cbColor.Items.AddRange(DrawUtils.GetAllColorNames()); // получение всех имён доступных цветов cbColor.Items.Add("Выбор цвета..."); // добавление пункта выбора цвета cbColor.Text = DrawUtils.GetColorNameFromIndex(LastColorIndex); // ------------------------------------------------------------------- stroke.Assign(drw.Stroke); // ------------------------------- int Index = DrawUtils.ColorToIndex(stroke.Color); if (Index < 0) { DrawUtils.AddCustomColor(stroke.Color); cbColor.Items.Insert(cbColor.Items.Count - 1, "Мой цвет"); Index = cbColor.Items.Count - 2; } if (Index >= 0) { cbColor.SelectedIndex = Index; } // ------------------------------- tbTrasparent.Value = 255 - stroke.Alpha; lbTrasparent.Text = String.Format("{0} %", (int)(tbTrasparent.Value / 255.0 * 100.0)); // ------------------------------- cbWidth.SelectedIndex = (int)stroke.Width - 1; // ------------------------------- if (stroke.DashStyle == DashStyle.Custom) { cbPattern.SelectedIndex = 0; } else { cbPattern.SelectedIndex = (int)stroke.DashStyle + 1; } // ------------------------------------------------------------------- cbLineJoin.Items.Clear(); // получение всех имён доступных типов соединений линий cbLineJoin.Items.AddRange(DrawUtils.GetLineJoinNames()); cbLineJoin.SelectedIndex = (int)stroke.LineJoin; // ------------------------------------------------------------------- cbStartCap.Items.Clear(); // получение всех имён доступных типов окончаний линий cbStartCap.Items.AddRange(DrawUtils.GetLineCapNames()); cbStartCap.SelectedIndex = (int)stroke.StartCap; // ------------------------------------------------------------------- cbEndCap.Items.Clear(); // получение всех имён доступных типов окончаний линий cbEndCap.Items.AddRange(DrawUtils.GetLineCapNames()); cbEndCap.SelectedIndex = (int)stroke.EndCap; }
public TextProps(Draws drw) { InitializeComponent(); FontFamily[] ffam = FontFamily.Families; cbFont.Items.Clear(); foreach (FontFamily ff in ffam) { cbFont.Items.Add(ff.Name); } // ------------------------------------------------------------------- cbFont.SelectedIndex = cbFont.Items.IndexOf(cbFont.Text); cbColor.Items.Clear(); // получение всех имён доступных цветов cbColor.Items.AddRange(DrawUtils.GetAllColorNames()); // добавление пункта выбора цвета cbColor.Items.Add("Выбор цвета..."); cbColor.Text = DrawUtils.GetColorNameFromIndex(LastColorIndex); // ------------------------------------------------------------------- text.Assign(drw.Text); // ------------------------------- int Index = DrawUtils.ColorToIndex(text.Color); if (Index < 0) { DrawUtils.AddCustomColor(text.Color); cbColor.Items.Insert(cbColor.Items.Count - 1, "Мой цвет"); Index = cbColor.Items.Count - 2; } if (Index >= 0) { cbColor.SelectedIndex = Index; } // ------------------------------- tbTrasparent.Value = 255 - text.Alpha; lbTrasparent.Text = String.Format("{0} %", (int)(tbTrasparent.Value / 255.0 * 100.0)); // ------------------------------- cbFont.Text = text.FontName; // ------------------------------- cbSize.Text = text.FontSize.ToString(); // ------------------------------- if (text.Bold && text.Italic) { cbStyle.SelectedIndex = 3; } else if (text.Bold) { cbStyle.SelectedIndex = 2; } else if (text.Italic) { cbStyle.SelectedIndex = 1; } else { cbStyle.SelectedIndex = 0; } // ------------------------------- cbUnderline.Checked = text.Underline; // ------------------------------- cbSrikeout.Checked = text.Strikeout; // ------------------------------- cbHorizontal.SelectedIndex = (int)(text.Alignment); cbVertical.SelectedIndex = (int)(text.LineAlignment); cbVerticalText.Checked = text.Vertical; }
private void cbColor_SelectedIndexChanged(object sender, System.EventArgs e) { ComboBox cbox = (ComboBox)sender; if (cbox.SelectedIndex == cbox.Items.Count - 1) { try { int selIndex; if (cbox == cbColor) { dlgSelectColor.Color = DrawUtils.ColorFromIndex(LastColorIndex); selIndex = LastColorIndex; } else { dlgSelectColor.Color = DrawUtils.ColorFromIndex(LastPatternColorIndex); selIndex = LastPatternColorIndex; } if (dlgSelectColor.ShowDialog() == DialogResult.OK) { Color selColor = dlgSelectColor.Color; if (cbox == cbColor) { fill.Color = selColor; } else { fill.PatternColor = selColor; } if (!DrawUtils.FindColor(selColor)) { DrawUtils.AddCustomColor(selColor); dlgSelectColor.CustomColors = DrawUtils.GetCustomColors(); cbColor.Items.Insert(cbColor.Items.Count - 1, "Мой цвет"); cbColorPattern.Items.Insert(cbColorPattern.Items.Count - 1, "Мой цвет"); if (cbox == cbColor) { cbColor.SelectedIndex = cbColor.Items.Count - 2; } else { cbColorPattern.SelectedIndex = cbColorPattern.Items.Count - 2; } } else { cbox.SelectedIndex = DrawUtils.ColorToIndex(selColor); } } else { cbox.SelectedIndex = selIndex; } } catch (Exception ex) { Console.WriteLine("{0} Exception caught.", ex); throw; } } else { if (cbox == cbColor) { LastColorIndex = cbox.SelectedIndex; } else { LastPatternColorIndex = cbox.SelectedIndex; } cbox.Refresh(); pbPreview.Refresh(); } }