private List <Draws> UngroupFigures(Draws drw) { List <Draws> par = new List <Draws>(); par.Add(drw); return(UngroupFigures(par)); }
public void SetItemColor(Color color) { if (DrawsList.Count > 0) { Draws drw = (Draws)DrawsList[0]; drw.Fill.Color = color; } }
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); }
public ScriptProps(Draws drw, string text, string[] errors) { InitializeComponent(); this.drw = drw; tbScriptText.Text = text; lbScriptErrors.Items.Clear(); if (errors != null) { lbScriptErrors.Items.AddRange(errors); } }
private void miAddFigureNode_Click(object sender, EventArgs e) { Draws drw = (Draws)cmsFigPopup.Tag; if (drw != null) { FileChanged = true; drw.InsertFigureNode(SelMrkPnt); this.Refresh(); } }
private void miDeleteFigureNode_Click(object sender, EventArgs e) { Draws drw = (Draws)cmsFigPopup.Tag; if (drw != null) { FileChanged = true; drw.DeleteFigureNode(markerIndex); this.Refresh(); } }
private void miEndChangeNodes_Click(object sender, EventArgs e) { if (SelList.Count == 1) { Draws drw = (Draws)SelList[0]; if (drw.NodeChanging) { drw.NodeChanging = false; this.Refresh(); } } }
private void miBeginChangeNodes_Click(object sender, EventArgs e) { if (SelList.Count == 1) { Draws drw = (Draws)SelList[0]; if (!drw.NodeChanging) { drw.NodeChanging = true; DoSelectObjMode(); this.Refresh(); } } }
private void miScriptEdit_Click(object sender, EventArgs e) { if (SelList.Count == 1) { Draws drw = (Draws)SelList[0]; using (ScriptProps form = new ScriptProps(drw, drw.ScriptOnDoubleClick, drw.ScriptErrors())) { if (form.ShowDialog(this) == DialogResult.OK) { FileChanged = true; drw.ScriptOnDoubleClick = form.GetEditedText(); } } } }
private void drawBox_DoubleClick(object sender, EventArgs e) { Draws drw = DrawsList.PointInFigure(LstPnt); if (drw != null) { // элемент был выбран мышкой using (EditText form = new EditText(drw.Text.Caption)) { if (form.ShowDialog(this) == DialogResult.OK) { drw.Text.Caption = form.Caption; FileChanged = true; this.Refresh(); } } } }
private void miStrokeChange_Click(object sender, EventArgs e) { Draws d = (Draws)cmsFigPopup.Tag; using (StrokeProps form = new StrokeProps(d)) { if (SelList.Count > 0) { form.Stroke = new Stroke(); form.Stroke.Assign(d.Stroke); } if (form.ShowDialog(this) == DialogResult.OK) { FileChanged = true; foreach (Draws drw in SelList) { drw.Stroke.Assign(form.Stroke); } this.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 drawBox_MouseDown(object sender, MouseEventArgs e) { FstPnt = new PointF(e.X, e.Y); LstPnt = FstPnt; if (!tsbSelObj.Checked) { SelList.Clear(); } if (tsbSelObj.Checked || (e.Button == MouseButtons.Right)) { Draws drw = DrawsList.PointInFigure(FstPnt); if (drw != null) { // элемент был выбран мышкой markerIndex = drw.MarkerIndex; if (markerIndex >= 0) { foreach (Draws d in SelList) { d.MarkerIndex = markerIndex; // раздача всем остальным } } if (controlPressed) { if (SelList.IndexOf(drw) >= 0) { // удаление из списка уже выделенного элемента if (SelList.Count > 1) // последний элемент при Ctrl не убирается { drw.Selected = false; SelList.Remove(drw); } } else { SelList.Add(drw); // добавление к списку } } else { if (!SelList.FigureInList(drw)) { SelList.Clear(); // очистка списков SelList.Add(drw); // выделение одного элемента } } this.Refresh(); } else { SelList.Clear(); // очистка списков drawBox.Capture = true; // захват мышки } } // вызов контекстного меню if ((e.Button == MouseButtons.Right)) { if (SelList.Count > 0) { Draws drw = DrawsList.PointInFigure(FstPnt); bool ModifyFiguresNode = (drw != null) && drw.NodeChanging; if (drw != null) { markerIndex = drw.MarkerIndex; SelMrkPnt = e.Location; } else { markerIndex = 0; } miAddFigureNode.Visible = ModifyFiguresNode && (drw.MarkerIndex == 0); if (drw is Polygones) { miDeleteFigureNode.Visible = ModifyFiguresNode && (drw.MarkerIndex < 0) && (((Polygones)drw).Points.Count > 2); } else { miDeleteFigureNode.Visible = false; } miBeginChangeNodes.Visible = (SelList.Count == 1) && (drw is Polygones) && drw.CanNodeChanging() && !drw.NodeChanging; miEndChangeNodes.Visible = (SelList.Count == 1) && (drw is Polygones) && drw.NodeChanging; miGroupFigures.Enabled = (SelList.Count > 1); miUngroupFigures.Enabled = drw is Groups; cmsFigPopup.Tag = drw; cmsFigPopup.Show(drawBox, e.Location); } else { cmsBkgPopup.Show(drawBox, e.Location); } } }
public void AddFigure(Draws drw) { list.Add(drw); }