コード例 #1
0
        public void DropElement(SymbolBaseViewModel symbolBaseViewModel)
        {
            if (symbolBaseViewModel is BlockViewModel)
            {
                var blockViewModel = (BlockViewModel)symbolBaseViewModel;
                var blockSymbol    = _sheet.CreateBlockSymbol();
                blockSymbol.PositionX = blockViewModel.X;
                blockSymbol.PositionY = blockViewModel.Y;

                SymbolVms.Remove(_ghost);
                _ghost = null;

                _sheet.Add(blockSymbol, _client);
            }
            else if (symbolBaseViewModel is ConnectorViewModel)
            {
                var connectorViewModel = (ConnectorViewModel)symbolBaseViewModel;
                var connector          = _sheet.CreateConnector();
                connector.PositionX = connectorViewModel.X;
                connector.PositionY = connectorViewModel.Y;

                SymbolVms.Remove(_ghost);
                _ghost = null;

                _sheet.AddConnector(connector, _client);
            }
        }
コード例 #2
0
 public void AddGhost(SymbolBaseViewModel element)
 {
     if (_ghost == null)
     {
         _ghost = element;
         SymbolVms.Add(_ghost);
     }
 }
コード例 #3
0
        public void DeleteElement(SymbolBaseViewModel block)
        {
            if (block != null)
            {
                var toBeDeleted = _sheet.BlockSymbols.FirstOrDefault(b => b.Id == block.Id);

                _sheet.Remove(toBeDeleted, _client);
            }
        }
コード例 #4
0
 public void OnElementItemDragging(SymbolBaseViewModel symbolBaseViewModel, double horizontalChange, double verticalChange, double positionX, double positionY)
 {
     if (symbolBaseViewModel is BlockViewModel)
     {
         var block = symbolBaseViewModel as BlockViewModel;
         block.SetPosition(positionX, positionY);
     }
     else if (symbolBaseViewModel is ConnectorViewModel)
     {
         var connectorVm = symbolBaseViewModel as ConnectorViewModel;
         connectorVm.SetPosition(positionX, positionY);
     }
 }
コード例 #5
0
 public void OnElementItemDragStarted(SymbolBaseViewModel symbolBaseViewModel, Point currentDragPoint)
 {
     if (symbolBaseViewModel is BlockViewModel)
     {
         var block = symbolBaseViewModel as BlockViewModel;
         _shell.UndoManager.StartTransaction("Moving Block: " + block.Name);
     }
     else if (symbolBaseViewModel is ConnectorViewModel)
     {
         var connectorVm = symbolBaseViewModel as ConnectorViewModel;
         _shell.UndoManager.StartTransaction("Moving Connector: " + connectorVm.Name);
     }
 }
コード例 #6
0
 public void OnElementItemDragCompleted(SymbolBaseViewModel symbolBaseViewModel, Point currentDragPoint)
 {
     _shell.UndoManager.EndTransaction();
 }