diff --git a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/BarcodeDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/BarcodeDesignerItemViewModel.cs index a173341..f637327 100644 --- a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/BarcodeDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/BarcodeDesignerItemViewModel.cs @@ -34,13 +34,14 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Extensions.ViewModels return new DesignerItemBase(this, Format.ToString()); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); CustomText = true; - visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; + if (visualiserService == null) + visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; } protected override void InitNew() diff --git a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/OutLineTextDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/OutLineTextDesignerItemViewModel.cs index 2aa1f03..450e9fc 100644 --- a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/OutLineTextDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/OutLineTextDesignerItemViewModel.cs @@ -35,11 +35,12 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Extensions.ViewModels return new TextDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); - visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; + if (visualiserService == null) + visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; } protected override void InitNew() diff --git a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PathItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PathItemViewModel.cs index a0b11b6..5b9f8e4 100644 --- a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PathItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PathItemViewModel.cs @@ -32,7 +32,7 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Extensions.ViewModels return new PathDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PersistDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PersistDesignerItemViewModel.cs index d188ae9..2c2fabf 100644 --- a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PersistDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/PersistDesignerItemViewModel.cs @@ -35,12 +35,14 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Extensions.ViewModels return new PersistDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); - visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; this.ShowConnectors = false; + + if (visualiserService == null) + visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; } protected override void InitNew() diff --git a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/SettingsDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/SettingsDesignerItemViewModel.cs index 721d80c..cb7c68c 100644 --- a/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/SettingsDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner.Additionals/Extensions/ViewModels/SettingsDesignerItemViewModel.cs @@ -35,12 +35,14 @@ namespace AIStudio.Wpf.DiagramDesigner.Additionals.Extensions.ViewModels return new SettingsDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); - visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; this.ShowConnectors = false; + + if (visualiserService == null) + visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; } protected override void InitNew() diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorInfoBase.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorInfoBase.cs index 4737115..2344143 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorInfoBase.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorInfoBase.cs @@ -36,7 +36,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new ConnectorInfoItemBase(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); } diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorLabelModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorLabelModel.cs index a3f3234..47a1b03 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorLabelModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorLabelModel.cs @@ -36,7 +36,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new ConnectorLabelItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorPointModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorPointModel.cs index 86c2860..9abb2a8 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorPointModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorPointModel.cs @@ -48,7 +48,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new ConnectorPointItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); } diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorVertexModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorVertexModel.cs index 211c80b..d5e5a78 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorVertexModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/ConnectorVertexModel.cs @@ -33,7 +33,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new ConnectorVertexItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/FullyCreatedConnectorInfo.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/FullyCreatedConnectorInfo.cs index bdc5a5b..e17cfd5 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/FullyCreatedConnectorInfo.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Connector/FullyCreatedConnectorInfo.cs @@ -52,7 +52,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new FullyCreatedConnectorInfoItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs index b0d4df7..ea06151 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/Container/BlockItemsContainerInfo.cs @@ -40,7 +40,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new BlockItemsContainerInfoItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); } diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DiagramViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DiagramViewModel.cs index 0c811c8..a6b9a5e 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DiagramViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DiagramViewModel.cs @@ -1285,6 +1285,7 @@ namespace AIStudio.Wpf.DiagramDesigner { designerItemViewModelBase.SetCellAlignment(); } + item.Init(this, false); Items.Add(item); if (isSelected != null) { diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/GroupDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/GroupDesignerItemViewModel.cs index 0ca831f..3a25fdc 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/GroupDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/GroupDesignerItemViewModel.cs @@ -36,7 +36,7 @@ namespace AIStudio.Wpf.DiagramDesigner } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableDesignerItemViewModelBase.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableDesignerItemViewModelBase.cs index 940e928..1997a94 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableDesignerItemViewModelBase.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableDesignerItemViewModelBase.cs @@ -42,7 +42,7 @@ namespace AIStudio.Wpf.DiagramDesigner } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); } diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableViewModelBase.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableViewModelBase.cs index a958564..a0f3b0a 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableViewModelBase.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/SelectableViewModelBase.cs @@ -71,47 +71,62 @@ namespace AIStudio.Wpf.DiagramDesigner return null; } - protected virtual void Init(IDiagramViewModel root, bool initNew) + public virtual void Init(IDiagramViewModel root, bool initNew) { Root = root; - if (Root?.ColorViewModel != null) + if (this.ColorViewModel == null) { - this.ColorViewModel = CopyHelper.Mapper(Root.ColorViewModel); - } - else - { - this.ColorViewModel = _service.CopyDefaultColorViewModel(); + if (Root?.ColorViewModel != null) + { + this.ColorViewModel = CopyHelper.Mapper(Root.ColorViewModel); + } + else + { + this.ColorViewModel = _service.CopyDefaultColorViewModel(); + } } - if (Root?.FontViewModel != null) + if (this.FontViewModel == null) { - this.FontViewModel = CopyHelper.Mapper(Root.FontViewModel); - } - else - { - this.FontViewModel = _service.CopyDefaultFontViewModel(); + if (Root?.FontViewModel != null) + { + this.FontViewModel = CopyHelper.Mapper(Root.FontViewModel); + } + else + { + this.FontViewModel = _service.CopyDefaultFontViewModel(); + } } - if (Root?.ShapeViewModel != null) + if (this.ShapeViewModel == null) { - this.ShapeViewModel = CopyHelper.Mapper(Root.ShapeViewModel); - } - else - { - this.ShapeViewModel = _service.CopyDefaultShapeViewModel(); + if (Root?.ShapeViewModel != null) + { + this.ShapeViewModel = CopyHelper.Mapper(Root.ShapeViewModel); + } + else + { + this.ShapeViewModel = _service.CopyDefaultShapeViewModel(); + } } - if (Root?.AnimationViewModel != null) + if (this.AnimationViewModel == null) { - this.AnimationViewModel = CopyHelper.Mapper(Root.AnimationViewModel); - } - else - { - this.AnimationViewModel = _service.CopyDefaultAnimationViewModel(); + if (Root?.AnimationViewModel != null) + { + this.AnimationViewModel = CopyHelper.Mapper(Root.AnimationViewModel); + } + else + { + this.AnimationViewModel = _service.CopyDefaultAnimationViewModel(); + } } - LockObjectViewModel = new LockObjectViewModel(); + if (LockObjectViewModel == null) + { + LockObjectViewModel = new LockObjectViewModel(); + } if (initNew) { diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs index 85a305b..054349f 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs @@ -44,7 +44,7 @@ namespace AIStudio.Wpf.DiagramDesigner AddConnector(new BlockConnectorInfo(this.Root, this, ConnectorOrientation.Bottom)); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/GifImageItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/GifImageItemViewModel.cs index b3ab989..74f5c45 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/GifImageItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/GifImageItemViewModel.cs @@ -42,7 +42,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new MediaDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/ImageItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/ImageItemViewModel.cs index 009caee..c7b273f 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/ImageItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/ImageItemViewModel.cs @@ -41,7 +41,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new ImageDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs index d13f6ed..80c8833 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs @@ -54,7 +54,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new LogicalGateDesignerItemBase(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { ShowRotate = false; ShowArrow = false; diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/MediaItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/MediaItemViewModel.cs index cf8aded..fb5ff8c 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/MediaItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/MediaItemViewModel.cs @@ -36,7 +36,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new MediaDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextAutoDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextAutoDesignerItemViewModel.cs index a3d60ba..b0a7a85 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextAutoDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextAutoDesignerItemViewModel.cs @@ -25,7 +25,7 @@ namespace AIStudio.Wpf.DiagramDesigner { } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextDesignerItemViewModel.cs index 74ecda8..fd943dd 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/TextDesignerItemViewModel.cs @@ -35,7 +35,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new TextDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/DrawingDesignerItemViewModelBase.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/DrawingDesignerItemViewModelBase.cs index db203df..00fe83d 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/DrawingDesignerItemViewModelBase.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/DrawingDesignerItemViewModelBase.cs @@ -47,7 +47,7 @@ namespace AIStudio.Wpf.DiagramDesigner return new DrawingDesignerItemBase(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); } diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/TextDrawingDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/TextDrawingDesignerItemViewModel.cs index a42096b..d6a3d86 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/TextDrawingDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DrawingViewModel/Erasable/TextDrawingDesignerItemViewModel.cs @@ -33,7 +33,7 @@ namespace AIStudio.Wpf.DiagramDesigner } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/Extensions/AIStudio.Wpf.Flowchart/ViewModels/FlowNode.cs b/Extensions/AIStudio.Wpf.Flowchart/ViewModels/FlowNode.cs index 139ce3b..f79c908 100644 --- a/Extensions/AIStudio.Wpf.Flowchart/ViewModels/FlowNode.cs +++ b/Extensions/AIStudio.Wpf.Flowchart/ViewModels/FlowNode.cs @@ -40,7 +40,7 @@ namespace AIStudio.Wpf.Flowchart.ViewModels return new FlowNodeDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); @@ -48,7 +48,8 @@ namespace AIStudio.Wpf.Flowchart.ViewModels ShowText = true; IsReadOnlyText = true; - visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; + if (visualiserService == null) + visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; } protected override void InitNew() diff --git a/Extensions/AIStudio.Wpf.Logical/ViewModels/LogicalGateItemViewModel.cs b/Extensions/AIStudio.Wpf.Logical/ViewModels/LogicalGateItemViewModel.cs index 8397628..a00001a 100644 --- a/Extensions/AIStudio.Wpf.Logical/ViewModels/LogicalGateItemViewModel.cs +++ b/Extensions/AIStudio.Wpf.Logical/ViewModels/LogicalGateItemViewModel.cs @@ -37,11 +37,12 @@ namespace AIStudio.Wpf.Logical.ViewModels return new LogicalGateDesignerItemBase(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); - visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; + if (visualiserService == null) + visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; } protected override void InitNew() @@ -2577,11 +2578,13 @@ namespace AIStudio.Wpf.Logical.ViewModels BuildMenuOptions(); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); MenuItemCommand = new SimpleCommand(Command_Enable, ExecuteMenuItemCommand); + + readDataTimer.Elapsed -= timeCycle; readDataTimer.Elapsed += timeCycle; readDataTimer.Interval = 1000; } diff --git a/Extensions/AIStudio.Wpf.Mind/ViewModels/MindNode.cs b/Extensions/AIStudio.Wpf.Mind/ViewModels/MindNode.cs index d7671af..95dfc56 100644 --- a/Extensions/AIStudio.Wpf.Mind/ViewModels/MindNode.cs +++ b/Extensions/AIStudio.Wpf.Mind/ViewModels/MindNode.cs @@ -71,7 +71,7 @@ namespace AIStudio.Wpf.Mind.ViewModels return mindNodeModel; } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); diff --git a/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCConditionNode.cs b/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCConditionNode.cs index 1726452..210d4dc 100644 --- a/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCConditionNode.cs +++ b/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCConditionNode.cs @@ -35,7 +35,7 @@ namespace AIStudio.Wpf.SFC.ViewModels } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); CustomText = true; diff --git a/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCNode.cs b/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCNode.cs index e230723..b5fa9ae 100644 --- a/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCNode.cs +++ b/Extensions/AIStudio.Wpf.SFC/ViewModels/SFCNode.cs @@ -42,7 +42,7 @@ namespace AIStudio.Wpf.SFC.ViewModels return new SFCNodeDesignerItem(this); } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { IsInnerConnector = true; ShowRotate = false; @@ -52,7 +52,8 @@ namespace AIStudio.Wpf.SFC.ViewModels base.Init(root, initNew); - visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; + if (visualiserService == null) + visualiserService = ApplicationServicesProvider.Instance.Provider.VisualizerService; } protected override void InitNew() diff --git a/Extensions/AIStudio.Wpf.SFC/ViewModels/Simulate_SolenoidViewModel.cs b/Extensions/AIStudio.Wpf.SFC/ViewModels/Simulate_SolenoidViewModel.cs index 0a11b4f..089098e 100644 --- a/Extensions/AIStudio.Wpf.SFC/ViewModels/Simulate_SolenoidViewModel.cs +++ b/Extensions/AIStudio.Wpf.SFC/ViewModels/Simulate_SolenoidViewModel.cs @@ -34,7 +34,7 @@ namespace AIStudio.Wpf.SFC.ViewModels } - protected override void Init(IDiagramViewModel root, bool initNew) + public override void Init(IDiagramViewModel root, bool initNew) { base.Init(root, initNew); CustomText = true;