Example #1
0
        protected override void OnMouseEnter(MouseEventArgs e)
        {
            base.OnMouseEnter(e);
            PropertyTimelineItem propertyTimelineItem = this.timelineItem as PropertyTimelineItem;

            if (propertyTimelineItem == null)
            {
                return;
            }
            PathEditMode      pathEditMode   = PathEditMode.None;
            PropertyReference targetProperty = propertyTimelineItem.TargetProperty;

            if (targetProperty[0].Equals((object)PathElement.DataProperty))
            {
                pathEditMode = PathEditMode.ScenePath;
            }
            else if (targetProperty[0].Equals((object)Base2DElement.ClipProperty))
            {
                pathEditMode = PathEditMode.ClippingPath;
            }
            if (pathEditMode == PathEditMode.None)
            {
                return;
            }
            foreach (AdornerSet adornerSet in (IEnumerable <AdornerSet>)propertyTimelineItem.Element.ViewModel.DefaultView.AdornerLayer.Get2DAdornerSets(propertyTimelineItem.Element))
            {
                PathAdornerSet pathAdornerSet = adornerSet as PathAdornerSet;
                if (pathAdornerSet != null && pathAdornerSet.PathEditorTarget.PathEditMode == pathEditMode)
                {
                    pathAdornerSet.HighlightProperty(propertyTimelineItem.TargetProperty);
                    this.highlightedPathAdornerSet = pathAdornerSet;
                }
            }
        }
Example #2
0
 protected PathPart(SceneElement sceneElement, PathEditMode pathEditMode, int figureIndex, int partIndex, PathPart.PartType partType)
 {
     this.sceneElement = sceneElement;
     this.pathEditMode = pathEditMode;
     this.figureIndex  = figureIndex;
     this.partIndex    = partIndex;
     this.partType     = partType;
 }
Example #3
0
        public ICollection <PathPart> GetSelectionByElement(SceneElement element, PathEditMode pathEditMode)
        {
            List <PathPart> list = new List <PathPart>();

            foreach (PathPart pathPart in this.Selection)
            {
                if (pathPart.SceneElement == element && pathPart.PathEditMode == pathEditMode)
                {
                    list.Add(pathPart);
                }
            }
            return((ICollection <PathPart>)list);
        }
        public PathEditorTarget GetPathEditorTarget(Base2DElement element, PathEditMode pathEditMode)
        {
            if (element == null)
            {
                return((PathEditorTarget)null);
            }
            List <PathEditorTarget> list;

            if (this.map.TryGetValue(element, out list))
            {
                foreach (PathEditorTarget pathEditorTarget in list)
                {
                    if (pathEditorTarget.PathEditMode == pathEditMode)
                    {
                        pathEditorTarget.RefreshSubscription();
                        return(pathEditorTarget);
                    }
                }
            }
            else
            {
                list = new List <PathEditorTarget>();
                this.map.Add(element, list);
            }
            PathEditorTarget pathEditorTarget1 = (PathEditorTarget)null;

            if (pathEditMode == PathEditMode.ScenePath)
            {
                PathElement pathElement = element as PathElement;
                if (pathElement == null)
                {
                    return((PathEditorTarget)null);
                }
                ReferenceStep property = PlatformTypeHelper.GetProperty((ITypeResolver)element.ProjectContext, (ITypeId)element.Type, MemberType.Property, "Data");
                if (property == null || !property.ShouldSerialize)
                {
                    return((PathEditorTarget)null);
                }
                pathEditorTarget1 = (PathEditorTarget) new ScenePathEditorTarget(pathElement);
            }
            else if (pathEditMode == PathEditMode.MotionPath)
            {
                pathEditorTarget1 = (PathEditorTarget) new MotionPathEditorTarget(element);
            }
            else if (pathEditMode == PathEditMode.ClippingPath)
            {
                pathEditorTarget1 = (PathEditorTarget) new ClippingPathEditorTarget(element);
            }
            list.Add(pathEditorTarget1);
            return(pathEditorTarget1);
        }
Example #5
0
 public PathEditorTargetUndoUnit(BaseFrameworkElement sceneElement, PathEditMode pathEditMode, bool updateOnUndo)
 {
     this.sceneElement = sceneElement;
     this.pathEditMode = pathEditMode;
     this.updateOnUndo = updateOnUndo;
 }
 public PenAdornerSetCreator(ElementToPathEditorTargetMap pathEditorTargetMap, PathEditMode pathEditMode)
 {
     this.pathEditorTargetMap = pathEditorTargetMap;
     this.pathEditMode        = pathEditMode;
 }
Example #7
0
 public PathSegment(SceneElement sceneElement, PathEditMode pathEditMode, int figureIndex, int lastPointIndex)
     : base(sceneElement, pathEditMode, figureIndex, lastPointIndex, PathPart.PartType.PathSegment)
 {
 }
Example #8
0
 public PathAdorner(AdornerSet adornerSet, PathEditMode pathEditMode)
     : base(adornerSet)
 {
     this.pathEditMode = pathEditMode;
 }
Example #9
0
        private void MovePathParts(PathPartSelectionSet pathPartSelectionSet, BaseFrameworkElement sceneElement, PathEditMode pathEditMode, Vector deltaOffset)
        {
            ICollection <PathPart> selectionByElement = pathPartSelectionSet.GetSelectionByElement((SceneElement)sceneElement, pathEditMode);
            Tool activeTool = this.ActiveSceneViewModel.DesignerContext.ToolManager.ActiveTool;

            if (selectionByElement.Count <= 0 || activeTool == null)
            {
                return;
            }
            PathEditorTarget pathEditorTarget = activeTool.GetPathEditorTarget((Base2DElement)sceneElement, pathEditMode);

            if (pathEditorTarget == null)
            {
                return;
            }
            this.EnsureEditTransaction();
            pathEditorTarget.BeginEditing();
            if (!this.pathEditorTargets.ContainsKey(pathEditorTarget))
            {
                this.pathEditorTargets.Add(pathEditorTarget, true);
            }
            Matrix transformToAncestor = pathEditorTarget.GetTransformToAncestor((IViewObject)this.ActiveView.HitTestRoot);
            Vector correspondingVector = ElementUtilities.GetCorrespondingVector(deltaOffset, transformToAncestor);

            PathEditBehavior.TranslateSelection(pathEditorTarget, selectionByElement, correspondingVector);
            this.ActiveView.AdornerLayer.InvalidateAdornerVisuals((SceneElement)pathEditorTarget.EditingElement);
        }