public EllipsePropertiesViewModel(ElementEllipse element, CommonDesignerCanvas designerCanvas) { Title = "Свойства фигуры: Эллипс"; _elementEllipse = element; PositionSettingsViewModel = new PositionSettingsViewModel(element as ElementBase, designerCanvas); ImagePropertiesViewModel = new ImagePropertiesViewModel(_elementEllipse); CopyProperties(); }
public static PlanElement FromEllipse(ElementEllipse item) { var result = Dispatcher.CurrentDispatcher.Invoke( () => { Debug.WriteLine( "App thread is {0}, with appartment = {1}", Thread.CurrentThread.ManagedThreadId, Thread.CurrentThread.GetApartmentState()); return item.GetRectangle(); }); var rect = result; var pt = new PointCollection { rect.TopLeft, rect.TopRight, rect.BottomRight, rect.BottomLeft }; var shape = new PlanElement { Path = InternalConverter.PointsToPath(pt.ToWindowsPointCollection(), PathKind.Ellipse), Border = InternalConverter.ConvertColor(item.BorderColor.ToWindowsColor()), Fill = InternalConverter.ConvertColor(item.BackgroundColor.ToWindowsColor()), BorderMouseOver = InternalConverter.ConvertColor(item.BorderColor.ToWindowsColor()), FillMouseOver = InternalConverter.ConvertColor(item.BackgroundColor.ToWindowsColor()), Name = item.PresentationName, Id = "pe" + item.UID, Hint = item.ShowTooltip ? GetElementHint(item) : null, BorderThickness = item.BorderThickness, Type = ShapeTypes.Path.ToString(), HasOverlay = false }; return shape; }