Shape state.
Inheritance: ObservableObject
示例#1
0
        public void Flags_On_Set_Notify_Events_Are_Raised()
        {
            var state = new ShapeState();
            var target = new PropertyChangedObserver(state);

            state.Flags = 
                ShapeStateFlags.Visible 
                | ShapeStateFlags.Printable 
                | ShapeStateFlags.Standalone;

            Assert.Equal(
                ShapeStateFlags.Visible 
                | ShapeStateFlags.Printable 
                | ShapeStateFlags.Standalone, state.Flags);
            Assert.Equal(10, target.PropertyNames.Count);

            var propertyNames = new string[]
            {
                nameof(ShapeState.Flags),
                nameof(ShapeState.Default),
                nameof(ShapeState.Visible),
                nameof(ShapeState.Printable),
                nameof(ShapeState.Locked),
                nameof(ShapeState.Connector),
                nameof(ShapeState.None),
                nameof(ShapeState.Standalone),
                nameof(ShapeState.Input),
                nameof(ShapeState.Output)
            };

            Assert.Equal(propertyNames, target.PropertyNames);
        }
示例#2
0
        public void Printable_Property()
        {
            var target = new ShapeState();

            target.Printable = true;
            Assert.Equal(ShapeStateFlags.Printable, target.Flags);

            target.Printable = false;
            Assert.Equal(ShapeStateFlags.Default, target.Flags);
        }
示例#3
0
        public void Default_Property()
        {
            var target = new ShapeState();

            target.Default = true;
            Assert.Equal(ShapeStateFlags.Default, target.Flags);

            target.Default = false;
            Assert.Equal(ShapeStateFlags.Default, target.Flags);
        }
示例#4
0
 /// <summary>
 /// Creates a new <see cref="LineFixedLength"/> instance.
 /// </summary>
 /// <param name="flags">The line fixed length flags.</param>
 /// <param name="startTrigger">The line start point state trigger.</param>
 /// <param name="endTrigger">The line end point state trigger.</param>
 /// <param name="length">The line fixed length.</param>
 /// <returns>he new instance of the <see cref="LineFixedLength"/> class.</returns>
 public static LineFixedLength Create(LineFixedLengthFlags flags = LineFixedLengthFlags.Disabled, ShapeState startTrigger = null, ShapeState endTrigger = null, double length = 15.0)
 {
     return new LineFixedLength()
     {
         Flags = flags,
         StartTrigger = startTrigger ?? ShapeState.Create(ShapeStateFlags.Connector | ShapeStateFlags.Output),
         EndTrigger = endTrigger ?? ShapeState.Create(ShapeStateFlags.Connector | ShapeStateFlags.Input),
         Length = length
     };
 }
示例#5
0
        public void Locked_Property()
        {
            var target = new ShapeState();

            target.Locked = true;
            Assert.Equal(ShapeStateFlags.Locked, target.Flags);

            target.Locked = false;
            Assert.Equal(ShapeStateFlags.Default, target.Flags);
        }
示例#6
0
        public void Standalone_Property()
        {
            var target = new ShapeState();

            target.Standalone = true;
            Assert.Equal(ShapeStateFlags.Standalone, target.Flags);

            target.Standalone = false;
            Assert.Equal(ShapeStateFlags.Default, target.Flags);
        }
示例#7
0
 public void Inherits_From_ObservableObject()
 {
     var target = new ShapeState();
     Assert.True(target is ObservableObject);
 }
示例#8
0
        public void Connector_Property()
        {
            var target = new ShapeState();

            target.Connector = true;
            Assert.Equal(ShapeStateFlags.Connector, target.Flags);

            target.Connector = false;
            Assert.Equal(ShapeStateFlags.Default, target.Flags);
        }