public void MouseUpSupport() { if (_supportObj != null) { //_supportObj.Pen.Width -= 5; _supportObj = null; } }
public override void ExecuteCommand() { if (string.IsNullOrEmpty(Pivots)) { // if they didn't specify any pivot keywords, just install the package they asked for. base.ExecuteCommand(); return; } // otherwise, they have specified at least one pivot, and therefore we should just grab the pivot list // and install everything that we completely match in the pivot list. var pivotListPath = Path.Combine(OverlayPackageDirectory, @"build\native\pivot-list.txt"); if (!File.Exists(pivotListPath)) { throw new Exception(string.Format("Can't fine pivot list at '{0}'", pivotListPath)); } var allPivots = File.ReadAllLines(pivotListPath); IEnumerable <string> keywords = Pivots.Split(new char[] { ' ', ',' }, StringSplitOptions.RemoveEmptyEntries); if (this.Arguments.Count > 0) { keywords = keywords.Union(this.Arguments); } keywords = keywords.Select(each => each.ToLower()).ToArray(); IEnumerable <string> selectedPivots = keywords.All(each => each == "all") ? allPivots : (from p in allPivots let piv = p.ToLower() where keywords.All(piv.Contains) select p); // just looking? if (List) { this.Console.WriteLine("Overlay packages found:"); foreach (var overlayPivot in selectedPivots) { this.Console.WriteLine(" {0}", overlayPivot); } return; } // otherwise, just install each one. Pivots = null; foreach (var overlayPivot in selectedPivots) { try { Arguments.Clear(); Arguments.Add(overlayPivot); ExecuteCommand(); } catch (Exception e) { Console.WriteLine("{0}/{1}/{2}", e.GetType().Name, e.Message, e.StackTrace); } } }
public void ScaleSelectFigureTest() { var line = Mock.Create <Line>(() => new Line()); Figure figure = new Figure(new Pen(Color.AliceBlue), new GraphicsPath(), Color.Bisque, 1, false); Pivots pivots = new Pivots(new Pen(Color.AliceBlue), new GraphicsPath()); line.ScaleSelectFigure(figure, pivots, new int(), new int()); Mock.Assert(() => line.ScaleSelectFigure(figure, pivots, new int(), new int()), Occurs.AtLeastOnce()); }
public void AddListFigureTest() { Pen examplePen = new Pen(Color.AliceBlue); GraphicsPath grPath = new GraphicsPath(); var figure = Mock.Create <Figure>(() => new Figure(examplePen, grPath, Color.Bisque, 1, false)); Pivots sp = new Pivots(examplePen, grPath); figure.AddPivots(sp); Mock.Assert(() => figure.AddPivots(sp), Occurs.AtLeastOnce()); }
/// <summary> /// Метод, выполняющий отрисовку опорных точек. /// </summary> /// <para name = "figure">Переменная хранащая объект для которого нужно построить опорные точки</para> public void AddPivots(Figure figure, Color ColorLine) { for (int i = 0; i < figure.PointSelect.Length; i++) { _pivots = new Pivots(new Pen(ColorLine, 1), new GraphicsPath()); _pivots.Path.AddEllipse(_rectangleLTRB.SelectFigure(figure.PointSelect[i], figure.Pen.Width)); _pivots.IdFigure = figure.IdFigure; _pivots.ControlPointF = i; figure.AddPivots(_pivots); } }
private IEnumerable <IResult> LoadTwunches() { IEnumerable <Twunch> twunches = null; yield return(new Twunch.Fetcher(x => { twunches = x; }, false)); foreach (var pivot in Pivots.OfType <ITwunchesViewModel>()) { Execute.OnUIThread(() => pivot.SetAllTwunches(twunches)); } }
/// <summary> /// Checks or unchecks the specified pivot mode. /// </summary> public void SetPivot(T pivotMode, bool checked_) { var pivot = Pivots.First(o => o.Mode.Equals(pivotMode)); if (checked_) { objectListView.CheckObject(pivot); } else { objectListView.UncheckObject(pivot); } }
/// <summary> /// Метод, выполняющий отмену выделения. /// </summary> public void MouseUp() { foreach (Figure SelectObject in _selectedFigures) { if (SelectObject != null) { //SelectObject.Pen.Width -= 1;//Возвращаем ширину пера SelectObject.ClearListPivots(); SelectObject.PointSelect = null; SelectObject.SelectFigure = false; //SelectObject. = null;//Убираем ссылку на объект _supportObj = null; } } _selectedFigures.Clear(); }
public void SavePoint(MouseEventArgs e) { _oldPoint = e.Location; if (_selectedFigures.Count != 0) { foreach (Figure selectObject in _selectedFigures) { foreach (Pivots supportObjecFigure in selectObject.ReturnListPivots()) { _rectangleF = supportObjecFigure.Path.GetBounds(); if (_rectangleF.Contains(e.Location)) { _supportObj = supportObjecFigure; } } } } }
public BuildScript(string filename) { try { Filename = filename.GetFullPath(); _project = new ProjectPlus(this, Filename + ".msbuild"); _project.Xml.AddImport(Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "etc", "MSBuild.ExtensionPack.tasks")); _sheet = new RootPropertySheet(_project); _sheet.ParseFile(Filename); _pivots = new Pivots(_sheet.View.configurations); _sheet.AddChildRoutes(_project.MemberRoutes); // _sheet.AddChildRoutesForType(typeof (ProjectTargetElement), _project.TargetRoutes); _sheet.CurrentView.AddMacroHandler((name, context) => _macros.ContainsKey(name.ToLower()) ? _macros[name.ToLower()] : null); _sheet.CurrentView.AddMacroHandler((name, context) => Environment.GetEnvironmentVariable(name)); // convert #product-info into a dictionary. productInformation = _sheet.Metadata.Value.Keys.Where(each => each.StartsWith("product-info")).ToXDictionary(each => each.Substring(12), each => _sheet.Metadata.Value[each]); } catch(Exception e) { // e.PrintDump(); Dispose(); } }
public BuildScript(string filename) { try { Filename = filename.GetFullPath(); _project = new ProjectPlus(this, Filename + ".msbuild"); _project.Xml.AddImport(Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "etc", "MSBuild.ExtensionPack.tasks")); _sheet = new RootPropertySheet(_project); _sheet.ParseFile(Filename); _pivots = new Pivots(_sheet.View.configurations); _sheet.AddChildRoutes(_project.MemberRoutes); // _sheet.AddChildRoutesForType(typeof (ProjectTargetElement), _project.TargetRoutes); _sheet.CurrentView.AddMacroHandler((name, context) => _macros.ContainsKey(name.ToLower()) ? _macros[name.ToLower()] : null); _sheet.CurrentView.AddMacroHandler((name, context) => Environment.GetEnvironmentVariable(name)); // convert #product-info into a dictionary. productInformation = _sheet.Metadata.Value.Keys.Where(each => each.StartsWith("product-info")).ToXDictionary(each => each.Substring(12), each => _sheet.Metadata.Value[each]); } catch { Dispose(); } }
/// <summary> /// Метод, отвечающий за перемещение и масштабирование фигур. /// </summary> /// <para name = "figureSelect">Переменная хранащая объект для которого нужно выполнять действия</para> /// <para name = "pivotsFigure">Переменная хранащая опорные точки выбранного объекта</para> /// <para name = "DeltaX">Переменная хранащая разницу по координате X</para> /// <para name = "DeltaY">Переменная хранащая разницу по координате Y</para> public void ScaleSelectFigure(Figure figureSelect, Pivots pivotsFigure, int DeltaX, int DeltaY) { if ((figureSelect.PointSelect[0].X - figureSelect.PointSelect[1].X != 0) && (figureSelect.PointSelect[0].Y - figureSelect.PointSelect[1].Y != 0)) { figureSelect.PointSelect = figureSelect.Path.PathPoints; } if (figureSelect.IdFigure == pivotsFigure.IdFigure) { figureSelect.PointSelect[pivotsFigure.ControlPointF].X += DeltaX; figureSelect.PointSelect[pivotsFigure.ControlPointF].Y += DeltaY; PointF[] PointF = figureSelect.PointSelect.ToArray(); figureSelect.Path.Reset(); figureSelect.Path.AddLines(PointF); if (figureSelect.CurrentFigure == 4) { figureSelect.Path.CloseFigure(); } } if (figureSelect.CurrentFigure != 1) { for (int i = 0; i < figureSelect.PointSelect.Length; i++) { figureSelect.EditPivots(i, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); } } else { int k = 0; for (int i = 0; i < figureSelect.PointSelect.Length; i += 3) { figureSelect.EditPivots(k, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); k++; } } }
public PivotMessage(Pivots pivot, bool visible, bool?show = null) { Pivot = pivot; Visible = visible; Show = show; }
/// <summary> /// Метод, отвечающий за перемещение и масштабирование фигур. /// </summary> /// <para name = "figureSelect">Переменная хранащая объект для которого нужно выполнять действия</para> /// <para name = "pivots">Переменная хранащая опорные точки выбранного объекта</para> /// <para name = "DeltaX">Переменная хранащая разницу по координате X</para> /// <para name = "DeltaY">Переменная хранащая разницу по координате Y</para> public void ScaleSelectFigure(Figure figureSelect, Pivots pivots, int DeltaX, int DeltaY) { figureSelect.PointSelect = figureSelect.Path.PathPoints; if (figureSelect.IdFigure == pivots.IdFigure) { switch (pivots.ControlPointF) { case 12: if (figureSelect.PointSelect[0].X + DeltaX > figureSelect.PointSelect[6].X) { figureSelect.PointSelect[0].X += DeltaX; } figureSelect.PointSelect[0].Y += DeltaY; _pointStart.X = figureSelect.PointSelect[6].X; _pointStart.Y = figureSelect.PointSelect[9].Y; _pointEnd.X = figureSelect.PointSelect[0].X; _pointEnd.Y = figureSelect.PointSelect[3].Y; figureSelect.Path.Reset(); figureSelect.Path.AddEllipse(_rectangleLTRBd.ShowRectangle(_pointEnd, _pointStart)); break; case 3: if (figureSelect.PointSelect[3].Y + DeltaY > figureSelect.PointSelect[9].Y) { figureSelect.PointSelect[3].Y += DeltaY; } figureSelect.PointSelect[3].X += DeltaX; _pointStart.X = figureSelect.PointSelect[6].X; _pointStart.Y = figureSelect.PointSelect[9].Y; _pointEnd.X = figureSelect.PointSelect[0].X; _pointEnd.Y = figureSelect.PointSelect[3].Y; figureSelect.Path.Reset(); figureSelect.Path.AddEllipse(_rectangleLTRBd.ShowRectangle(_pointStart, _pointEnd)); break; case 6: if (figureSelect.PointSelect[6].X + DeltaX < figureSelect.PointSelect[0].X) { figureSelect.PointSelect[6].X += DeltaX; } figureSelect.PointSelect[6].Y += DeltaY; _pointStart.X = figureSelect.PointSelect[6].X; _pointStart.Y = figureSelect.PointSelect[9].Y; _pointEnd.X = figureSelect.PointSelect[0].X; _pointEnd.Y = figureSelect.PointSelect[3].Y; figureSelect.Path.Reset(); figureSelect.Path.AddEllipse(_rectangleLTRBd.ShowRectangle(_pointStart, _pointEnd)); break; case 9: if (figureSelect.PointSelect[9].Y + DeltaY < figureSelect.PointSelect[3].Y) { figureSelect.PointSelect[9].Y += DeltaY; } figureSelect.PointSelect[9].X += DeltaX; _pointStart.X = figureSelect.PointSelect[6].X; _pointStart.Y = figureSelect.PointSelect[9].Y; _pointEnd.X = figureSelect.PointSelect[0].X; _pointEnd.Y = figureSelect.PointSelect[3].Y; figureSelect.Path.Reset(); figureSelect.Path.AddEllipse(_rectangleLTRBd.ShowRectangle(_pointStart, _pointEnd)); break; } } if (figureSelect.CurrentFigure != 1) { for (int i = 0; i < figureSelect.PointSelect.Length; i++) { figureSelect.EditPivots(i, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); } } else { int k = 0; for (int i = 0; i < figureSelect.PointSelect.Length; i += 3) { figureSelect.EditPivots(k, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); k++; } } }
/// <summary> /// Метод, отвечающий за перемещение и масштабирование фигур. /// </summary> /// <para name = "_figure">Переменная хранащая объект для которого нужно выполнять действия</para> /// <para name = "pivots">Переменная хранащая опорные точки выбранного объекта</para> /// <para name = "DeltaX">Переменная хранащая разницу по координате X</para> /// <para name = "DeltaY">Переменная хранащая разницу по координате Y</para> public void ScaleSelectFigure(Figure Selectedfigure, Pivots pivots, int DeltaX, int DeltaY) { if ((Selectedfigure.PointSelect[0].X - Selectedfigure.PointSelect[2].X != 0) && (Selectedfigure.PointSelect[0].Y - Selectedfigure.PointSelect[2].Y != 0)) { Selectedfigure.PointSelect = Selectedfigure.Path.PathPoints; } if (Selectedfigure.IdFigure == pivots.IdFigure) { switch (pivots.ControlPointF) { case 0: if (Selectedfigure.PointSelect[0].X + DeltaX < Selectedfigure.PointSelect[1].X) { Selectedfigure.PointSelect[0].X += DeltaX; } if (Selectedfigure.PointSelect[0].Y + DeltaY < Selectedfigure.PointSelect[3].Y) { Selectedfigure.PointSelect[0].Y += DeltaY; } Selectedfigure.Path.Reset(); Selectedfigure.Path.AddRectangle(_rectangleLTRBd.ShowRectangle(Selectedfigure.PointSelect[0], Selectedfigure.PointSelect[2])); break; case 1: if (Selectedfigure.PointSelect[2].X + DeltaX > Selectedfigure.PointSelect[0].X) { Selectedfigure.PointSelect[2].X += DeltaX; } if (Selectedfigure.PointSelect[0].Y + DeltaY < Selectedfigure.PointSelect[2].Y) { Selectedfigure.PointSelect[0].Y += DeltaY; } Selectedfigure.Path.Reset(); Selectedfigure.Path.AddRectangle(_rectangleLTRBd.ShowRectangle(Selectedfigure.PointSelect[0], Selectedfigure.PointSelect[2])); break; case 2: if (Selectedfigure.PointSelect[2].X + DeltaX > Selectedfigure.PointSelect[3].X) { Selectedfigure.PointSelect[2].X += DeltaX; } if (Selectedfigure.PointSelect[2].Y + DeltaY > Selectedfigure.PointSelect[1].Y) { Selectedfigure.PointSelect[2].Y += DeltaY; } Selectedfigure.Path.Reset(); Selectedfigure.Path.AddRectangle(_rectangleLTRBd.ShowRectangle(Selectedfigure.PointSelect[0], Selectedfigure.PointSelect[2])); break; case 3: if (Selectedfigure.PointSelect[0].X + DeltaX < Selectedfigure.PointSelect[2].X) { Selectedfigure.PointSelect[0].X += DeltaX; } if (Selectedfigure.PointSelect[2].Y + DeltaY > Selectedfigure.PointSelect[0].Y) { Selectedfigure.PointSelect[2].Y += DeltaY; } Selectedfigure.Path.Reset(); Selectedfigure.Path.AddRectangle(_rectangleLTRBd.ShowRectangle(Selectedfigure.PointSelect[0], Selectedfigure.PointSelect[2])); break; } } if (Selectedfigure.CurrentFigure != 1) { for (int i = 0; i < Selectedfigure.PointSelect.Length; i++) { Selectedfigure.EditPivots(i, _rectangleForPivots.SelectFigure(Selectedfigure.PointSelect[i], Selectedfigure.Pen.Width)); } } else { int k = 0; for (int i = 0; i < Selectedfigure.PointSelect.Length; i += 3) { Selectedfigure.EditPivots(k, _rectangleForPivots.SelectFigure(Selectedfigure.PointSelect[i], Selectedfigure.Pen.Width)); k++; } } }
/// <summary> /// Метод, отвечающий за перемещение и масштабирование фигур. /// </summary> /// <para name = "figureSelect">Переменная хранащая объект для которого нужно выполнять действия</para> /// <para name = "pivots">Переменная хранащая опорные точки выбранного объекта</para> /// <para name = "DeltaX">Переменная хранащая разницу по координате X</para> /// <para name = "DeltaY">Переменная хранащая разницу по координате Y</para> public void ScaleSelectFigure(Figure figureSelect, Pivots pivots, int DeltaX, int DeltaY) { if ((figureSelect.PointSelect[0].X - figureSelect.PointSelect[1].X != 0) && (figureSelect.PointSelect[0].Y - figureSelect.PointSelect[1].Y != 0)) { figureSelect.PointSelect = figureSelect.Path.PathPoints; } if (figureSelect.IdFigure == pivots.IdFigure) { switch (pivots.ControlPointF) { case 0: figureSelect.PointSelect[0].X += DeltaX; figureSelect.PointSelect[0].Y += DeltaY; figureSelect.Path.Reset(); figureSelect.Path.AddLine(figureSelect.PointSelect[0], figureSelect.PointSelect[1]); break; case 1: figureSelect.PointSelect[1].X += DeltaX; figureSelect.PointSelect[1].Y += DeltaY; figureSelect.Path.Reset(); figureSelect.Path.AddLine(figureSelect.PointSelect[0], figureSelect.PointSelect[1]); break; } } if (figureSelect.CurrentFigure != 1) { for (int i = 0; i < figureSelect.PointSelect.Length; i++) { figureSelect.EditPivots(i, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); } } else { int k = 0; for (int i = 0; i < figureSelect.PointSelect.Length; i += 3) { figureSelect.EditPivots(k, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); k++; } } if (figureSelect.CurrentFigure != 1) { for (int i = 0; i < figureSelect.PointSelect.Length; i++) { figureSelect.EditPivots(i, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); } } else { int k = 0; for (int i = 0; i < figureSelect.PointSelect.Length; i += 3) { figureSelect.EditPivots(k, _rectangleForPivots.SelectFigure(figureSelect.PointSelect[i], figureSelect.Pen.Width)); k++; } } }
public PackageScript(string filename) { Event<Verbose>.Raise("PackageScript", "Constructor"); _sheet = new RootPropertySheet(this); // get the full path to the .autopkgFile FullPath = filename.GetFullPath(); // parse the script _sheet.ParseFile(filename); _sheet.ImportText(_requiredTemplate, "required"); // temp hack to work around static & ltcg getting marked as used when they are just in the template. var scriptText = File.ReadAllText(filename); if (scriptText.IndexOf("static", StringComparison.InvariantCultureIgnoreCase) > -1) { _sheet.ImportText(_requiredTemplateStatic, "required_static"); } // end hack if (scriptText.IndexOf("ltcg", StringComparison.InvariantCultureIgnoreCase) > -1) { _sheet.ImportText(_requiredTemplateLTCG, "required_ltcg"); } // ensure we have at least the package ID var packageName = _sheet.View.nuget.nuspec.id; if (string.IsNullOrEmpty(packageName)) { throw new ClrPlusException("the Field nuget.nuspec.id can not be null or empty. You must specify an id for a package."); } // set the package name macro _sheet.AddMacro("pkgname", packageName); _sheet.CurrentView.AddMacroHandler( (name, context) => _macros.ContainsKey(name.ToLower()) ? _macros[name.ToLower()] : null); _sheet.CurrentView.AddMacroHandler((name, context) => System.Environment.GetEnvironmentVariable(name)); Pivots = new Pivots(_sheet.CurrentView.GetProperty("configurations")); }