From 43b7b8345c8fb5e44744b7bae6a38f1d92a8a588 Mon Sep 17 00:00:00 2001 From: Robert Date: Sun, 26 Sep 2021 11:39:40 +0200 Subject: [PATCH] Nodes - Update NoStringEvaluating Data model node - Take pin creation off of the UI thread --- src/Artemis.UI/packages.lock.json | 6 ++-- .../Artemis.VisualScripting.csproj | 2 +- .../Ninject/NoStringNinjectModule.cs | 4 --- .../Nodes/DataModel/DataModelNode.cs | 33 +++++++------------ .../packages.lock.json | 6 ++-- 5 files changed, 19 insertions(+), 32 deletions(-) diff --git a/src/Artemis.UI/packages.lock.json b/src/Artemis.UI/packages.lock.json index 8c353ad06..e71abceb3 100644 --- a/src/Artemis.UI/packages.lock.json +++ b/src/Artemis.UI/packages.lock.json @@ -389,8 +389,8 @@ }, "NoStringEvaluating": { "type": "Transitive", - "resolved": "2.2.1", - "contentHash": "dYvWeDdSXrfWreWu17XUNCZD1QAbeMuyOLwVxNBBy+mbs1O/QjsYr1uQPCJWqYRF2Rd5nQBLFbFWybz4Ndh68g==", + "resolved": "2.2.2", + "contentHash": "hJHivPDA1Vxn0CCgOtHKZ3fmldxQuz7VL1J4lEaPTXCf+Vwcx1FDf05mGMh6olYMSxoKimGX8YK2sEoqeH3pnA==", "dependencies": { "Microsoft.Extensions.ObjectPool": "5.0.9" } @@ -1494,7 +1494,7 @@ "JetBrains.Annotations": "2021.1.0", "MaterialDesignThemes": "4.1.0", "Ninject": "3.3.4", - "NoStringEvaluating": "2.2.1", + "NoStringEvaluating": "2.2.2", "SkiaSharp": "2.80.3", "Stylet": "1.3.6" } diff --git a/src/Artemis.VisualScripting/Artemis.VisualScripting.csproj b/src/Artemis.VisualScripting/Artemis.VisualScripting.csproj index 215c601ae..6fe961c9a 100644 --- a/src/Artemis.VisualScripting/Artemis.VisualScripting.csproj +++ b/src/Artemis.VisualScripting/Artemis.VisualScripting.csproj @@ -47,7 +47,7 @@ - + diff --git a/src/Artemis.VisualScripting/Ninject/NoStringNinjectModule.cs b/src/Artemis.VisualScripting/Ninject/NoStringNinjectModule.cs index f48a3ac10..3bf75bd56 100644 --- a/src/Artemis.VisualScripting/Ninject/NoStringNinjectModule.cs +++ b/src/Artemis.VisualScripting/Ninject/NoStringNinjectModule.cs @@ -39,10 +39,6 @@ namespace Artemis.VisualScripting.Ninject // Evaluator Bind().To().InSingletonScope(); - // Options - NoStringEvaluatorOptions opt = new NoStringEvaluatorOptions().SetWordQuotationMark("!"); - opt.UpdateConstants(); - // If needed InjectUserDefinedFunctions(); } diff --git a/src/Artemis.VisualScripting/Nodes/DataModel/DataModelNode.cs b/src/Artemis.VisualScripting/Nodes/DataModel/DataModelNode.cs index 1639056ea..b60e25d3b 100644 --- a/src/Artemis.VisualScripting/Nodes/DataModel/DataModelNode.cs +++ b/src/Artemis.VisualScripting/Nodes/DataModel/DataModelNode.cs @@ -2,7 +2,6 @@ using Artemis.Core; using Artemis.Storage.Entities.Profile; using Artemis.VisualScripting.Nodes.DataModel.CustomViewModels; -using Stylet; namespace Artemis.VisualScripting.Nodes.DataModel { @@ -52,40 +51,32 @@ namespace Artemis.VisualScripting.Nodes.DataModel public void UpdateOutputPin(bool loadConnections) { - Execute.OnUIThread(() => + if (Output != null && Output.Type == DataModelPath?.GetPropertyType()) + return; + + if (Output != null) { - if (Output != null && Output.Type == DataModelPath?.GetPropertyType()) - return; + RemovePin(Output); + Output = null; + } - if (Output != null) - { - RemovePin(Output); - Output = null; - } + Type type = DataModelPath?.GetPropertyType(); + if (type != null) + Output = CreateOutputPin(type); - Type type = DataModelPath?.GetPropertyType(); - if (type != null) - Output = CreateOutputPin(type); - - if (loadConnections && Script is NodeScript nodeScript) - nodeScript.LoadConnections(); - }); + if (loadConnections && Script is NodeScript nodeScript) + nodeScript.LoadConnections(); } private void DataModelPathOnPathValidated(object sender, EventArgs e) { UpdateOutputPin(true); - } - #region IDisposable - /// public void Dispose() { DataModelPath?.Dispose(); } - - #endregion } } \ No newline at end of file diff --git a/src/Artemis.VisualScripting/packages.lock.json b/src/Artemis.VisualScripting/packages.lock.json index c63f7f03a..6683a82b1 100644 --- a/src/Artemis.VisualScripting/packages.lock.json +++ b/src/Artemis.VisualScripting/packages.lock.json @@ -29,9 +29,9 @@ }, "NoStringEvaluating": { "type": "Direct", - "requested": "[2.2.1, )", - "resolved": "2.2.1", - "contentHash": "dYvWeDdSXrfWreWu17XUNCZD1QAbeMuyOLwVxNBBy+mbs1O/QjsYr1uQPCJWqYRF2Rd5nQBLFbFWybz4Ndh68g==", + "requested": "[2.2.2, )", + "resolved": "2.2.2", + "contentHash": "hJHivPDA1Vxn0CCgOtHKZ3fmldxQuz7VL1J4lEaPTXCf+Vwcx1FDf05mGMh6olYMSxoKimGX8YK2sEoqeH3pnA==", "dependencies": { "Microsoft.Extensions.ObjectPool": "5.0.9" }