Exemple #1
0
        /// <summary>
        /// Performs the drop operation
        /// </summary>
        /// <param name="dropInfo">
        /// Information about the drop operation.
        /// </param>
        public async Task Drop(IDropInfo dropInfo)
        {
            var rowPayload = dropInfo.Payload as Thing;

            var convertedDropPosition = this.Behavior.GetDiagramPositionFromMousePosition(dropInfo.DropPosition);

            if (rowPayload != null)
            {
                if (this.ThingDiagramItems.OfType <NamedThingDiagramContentItem>().Select(x => x.Thing).Contains(rowPayload))
                {
                    return;
                }

                var diagramItem = new NamedThingDiagramContentItem(rowPayload);
                this.Behavior.ItemPositions.Add(diagramItem, convertedDropPosition);
                this.ThingDiagramItems.Add(diagramItem);

                return;
            }

            if (dropInfo.Payload is Tuple <ParameterType, MeasurementScale> tuplePayload)
            {
                var diagramItem = new NamedThingDiagramContentItem(tuplePayload.Item1);
                this.Behavior.ItemPositions.Add(diagramItem, convertedDropPosition);
                this.ThingDiagramItems.Add(diagramItem);
            }
        }
        public void VerifyThatNamedWithThingCanBeConstructed()
        {
            var namedThingDiagramContentItem = new NamedThingDiagramContentItem(this.domainOfExpertise);

            Assert.AreEqual(this.domainOfExpertise, namedThingDiagramContentItem.Thing);
            Assert.AreEqual(this.domainOfExpertise, namedThingDiagramContentItem.Content);
        }
Exemple #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ThingDiagramConnector"/> class.
        /// </summary>
        public BinaryRelationshipDiagramConnector(BinaryRelationship thing, NamedThingDiagramContentItem source, NamedThingDiagramContentItem target, DiagramConnector baseConnector) : base(thing, baseConnector)
        {
            this.Source = source;
            this.Target = target;

            this.UpdateProperties();
        }
Exemple #4
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ThingDiagramConnector"/> class.
        /// </summary>
        public MultiRelationshipDiagramConnector(MultiRelationship thing, NamedThingDiagramContentItem source, NamedThingDiagramContentItem target)
            : base(thing)
        {
            this.Source = source;
            this.Target = target;

            this.UpdateProperties();
        }