Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

replace Xceed.Wpf.Toolkit with DotNetProjects.Extended.Wpf.Toolkit #14129

Merged
merged 6 commits into from
Jul 12, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions src/Dynamo.All.Net6.sln
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DynamoSandbox", "DynamoSand
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AssemblyRenamerCLI", "Tools\AssemblyRenamerCLI\AssemblyRenamerCLI.csproj", "{F382C3F8-C55C-4350-800A-3D13A94F8E13}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CoreNodeModelsWpf", "Libraries\CoreNodeModelsWpf\CoreNodeModelsWpf.csproj", "{F5932F7D-8E34-4787-80B8-E7F9D996EDFF}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|NET60_Windows = Debug|NET60_Windows
Expand Down Expand Up @@ -330,6 +332,10 @@ Global
{F382C3F8-C55C-4350-800A-3D13A94F8E13}.Debug|NET60_Windows.ActiveCfg = Debug|NET60_Windows
{F382C3F8-C55C-4350-800A-3D13A94F8E13}.Debug|NET60_Windows.Build.0 = Debug|NET60_Windows
{F382C3F8-C55C-4350-800A-3D13A94F8E13}.Release|NET60_Windows.ActiveCfg = Release|NET60_Windows
{F5932F7D-8E34-4787-80B8-E7F9D996EDFF}.Debug|NET60_Windows.ActiveCfg = Debug|NET60_Windows
{F5932F7D-8E34-4787-80B8-E7F9D996EDFF}.Debug|NET60_Windows.Build.0 = Debug|NET60_Windows
{F5932F7D-8E34-4787-80B8-E7F9D996EDFF}.Release|NET60_Windows.ActiveCfg = Release|NET60_Windows
{F5932F7D-8E34-4787-80B8-E7F9D996EDFF}.Release|NET60_Windows.Build.0 = Release|NET60_Windows
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -376,6 +382,7 @@ Global
{4C2AEACC-617D-4B90-ADCD-FE294A43A68F} = {2C6A6573-28B0-4239-BD33-6AECCD25106C}
{0DD3E4ED-66AA-47FC-9EB9-2A0E6A0EA01B} = {D114C59C-CF66-4CC2-980F-9301FB4EA4E1}
{F382C3F8-C55C-4350-800A-3D13A94F8E13} = {D114C59C-CF66-4CC2-980F-9301FB4EA4E1}
{F5932F7D-8E34-4787-80B8-E7F9D996EDFF} = {FA7BE306-A3B0-45FA-9D87-0C69E6932C13}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {89CB19C6-BF0A-4E6A-BFDA-79D143EAB59D}
Expand Down
19 changes: 10 additions & 9 deletions src/DynamoCoreWpf/DynamoCoreWpf.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<UILib>true</UILib>
</PropertyGroup>
<PropertyGroup>
<UILib>true</UILib>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)Config\CS_SDK.props" />
</ImportGroup>
Expand All @@ -14,7 +14,7 @@
<DocumentationFile>$(OutputPath)\DynamoCoreWpf.XML</DocumentationFile>
<EnableDefaultCompileItems>False</EnableDefaultCompileItems>
<EnableDefaultEmbeddedResourceItems>False</EnableDefaultEmbeddedResourceItems>
<EnableDefaultPageItems>false</EnableDefaultPageItems>
<EnableDefaultPageItems>false</EnableDefaultPageItems>
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
</PropertyGroup>
<PropertyGroup>
Expand Down Expand Up @@ -157,11 +157,12 @@
<Reference Include="Microsoft.Practices.Prism">
<HintPath>..\..\extern\prism\Microsoft.Practices.Prism.dll</HintPath>
</Reference>
<PackageReference Include="Extended.Wpf.Toolkit" version="3.0.0">
<GeneratePathProperty>true</GeneratePathProperty>
<!--Exclude copying the dll because we will handle it in the BinaryCompatibilityOps target -->
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
<PackageReference Include="DotNetProjects.Extended.Wpf.Toolkit" Version="5.0.103" Condition=" '$(TargetFramework)' == 'net6.0-windows' "/>
<PackageReference Include="Extended.Wpf.Toolkit" version="3.0.0" Condition=" '$(TargetFramework)' == 'net48' ">
<GeneratePathProperty>true</GeneratePathProperty>
<!--Exclude copying the dll because we will handle it in the BinaryCompatibilityOps target -->
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Compile Include="Controls\InstalledPackagesControl.xaml.cs">
Expand Down
2 changes: 1 addition & 1 deletion src/DynamoCoreWpf/ViewModels/Menu/PreferencesViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1114,7 +1114,7 @@ public bool NodeAutocompleteMachineLearningIsBeta
{
get
{
return DynamoModel.FeatureFlags.CheckFeatureFlag("NodeAutocompleteMachineLearningIsBeta", false);
return DynamoModel.FeatureFlags?.CheckFeatureFlag("NodeAutocompleteMachineLearningIsBeta", false) ?? false;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this causes an exception and makes it harder to debug

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pinzart90 what do you think about forcing this member to be nullable? It seems like the API change is worth the wasted dev and user crash time.

Copy link
Contributor Author

@pinzart90 pinzart90 Jul 11, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This API is only used in binding to a UI element. The binding is handled by a BooleanConverter which handles nullables the same way the function is written now (at least that what the decompiler shows me)
I can convert it if you want to, it is a breaking change (I think) ...maybe it does not matter for view models.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's leave it out of this PR.

}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
using LiveCharts.Wpf;
using System.ComponentModel;
using System.Windows;
using System.Web.ModelBinding;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this was causing an issue on dotnet6 (it is not really needed)

using System.Collections.Generic;
using System.Linq;

Expand Down
83 changes: 46 additions & 37 deletions src/Libraries/CoreNodeModelsWpf/CoreNodeModelsWpf.csproj
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<UILib>true</UILib>
</PropertyGroup>
<ImportGroup Label="PropertySheets">
<Import Project="$(SolutionDir)Config\CS_SDK.props" />
</ImportGroup>
Expand All @@ -10,6 +13,7 @@
<AssemblyName>CoreNodeModelsWpf</AssemblyName>
<OutputPath>$(OutputPath)\nodes\</OutputPath>
<DocumentationFile>$(OutputPath)\CoreNodeModelsWpf.XML</DocumentationFile>
<EnableDefaultPageItems>false</EnableDefaultPageItems>
</PropertyGroup>
<PropertyGroup>
<NoWarn>MSB3539;CS1591;NUnit2005;NUnit2007;CS0618;CS0612;CS0672</NoWarn>
Expand All @@ -20,11 +24,7 @@
<DestinationSubDirectory>..\</DestinationSubDirectory>
</ReferenceCopyLocalPaths>
</ItemDefinitionGroup>
<ItemGroup>
<Reference Include="Microsoft.Practices.Prism">
<HintPath>..\..\..\extern\prism\Microsoft.Practices.Prism.dll</HintPath>
<Private>False</Private>
</Reference>
<ItemGroup Condition=" '$(TargetFramework)' == 'net48' ">
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="System" />
Expand All @@ -38,51 +38,60 @@
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
<PackageReference Include="LiveCharts" Version="0.9.7" />
<PackageReference Include="LiveCharts.Wpf" Version="0.9.7" />
<Reference Include="Xceed.Wpf.Toolkit, Version=3.0.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL">
<HintPath>$(PkgExtended_Wpf_Toolkit)\lib\net40\Xceed.Wpf.Toolkit.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Xceed.Wpf.Toolkit, Version=3.0.0.0, Culture=neutral, PublicKeyToken=3e4669d2f30244f4, processorArchitecture=MSIL" Condition=" '$(TargetFramework)' == 'net48' " >
<HintPath>$(PkgExtended_Wpf_Toolkit)\lib\net40\Xceed.Wpf.Toolkit.dll</HintPath>
<Private>True</Private>
</Reference>
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net6.0-windows' ">
<PackageReference Include="DotNetProjects.Extended.Wpf.Toolkit" Version="5.0.103" />
</ItemGroup>
<ItemGroup>
<Reference Include="Microsoft.Practices.Prism">
<HintPath>..\..\..\extern\prism\Microsoft.Practices.Prism.dll</HintPath>
<Private>False</Private>
</Reference>
<PackageReference Include="LiveCharts" Version="0.9.7" />
<PackageReference Include="LiveCharts.Wpf" Version="0.9.7" />
<ProjectReference Include="..\..\DynamoCoreWpf\DynamoCoreWpf.csproj">
<Project>{51bb6014-43f7-4f31-b8d3-e3c37ebedaf4}</Project>
<Name>DynamoCoreWpf</Name>
<Private>False</Private>
<Project>{51bb6014-43f7-4f31-b8d3-e3c37ebedaf4}</Project>
<Name>DynamoCoreWpf</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\DynamoCore\DynamoCore.csproj">
<Project>{7858fa8c-475f-4b8e-b468-1f8200778cf8}</Project>
<Name>DynamoCore</Name>
<Private>False</Private>
<Project>{7858fa8c-475f-4b8e-b468-1f8200778cf8}</Project>
<Name>DynamoCore</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\DynamoUtilities\DynamoUtilities.csproj">
<Project>{b5f435cb-0d8a-40b1-a4f7-5ecb3ce792a9}</Project>
<Name>DynamoUtilities</Name>
<Private>False</Private>
<Project>{b5f435cb-0d8a-40b1-a4f7-5ecb3ce792a9}</Project>
<Name>DynamoUtilities</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\Engine\ProtoCore\ProtoCore.csproj">
<Project>{7a9e0314-966f-4584-baa3-7339cbb849d1}</Project>
<Name>ProtoCore</Name>
<Private>False</Private>
<Project>{7a9e0314-966f-4584-baa3-7339cbb849d1}</Project>
<Name>ProtoCore</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\NodeServices\DynamoServices.csproj">
<Project>{ef879a10-041d-4c68-83e7-3192685f1bae}</Project>
<Name>DynamoServices</Name>
<Private>False</Private>
<Project>{ef879a10-041d-4c68-83e7-3192685f1bae}</Project>
<Name>DynamoServices</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\CoreNodeModels\CoreNodeModels.csproj">
<Project>{d8262d40-4880-41e4-91e4-af8f480c8637}</Project>
<Name>CoreNodeModels</Name>
<Private>False</Private>
<Project>{d8262d40-4880-41e4-91e4-af8f480c8637}</Project>
<Name>CoreNodeModels</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\CoreNodes\CoreNodes.csproj">
<Project>{87550b2b-6cb8-461e-8965-dfafe3aafb5c}</Project>
<Name>CoreNodes</Name>
<Private>False</Private>
<Project>{87550b2b-6cb8-461e-8965-dfafe3aafb5c}</Project>
<Name>CoreNodes</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\DynamoConversions\DynamoConversions.csproj">
<Project>{67cf6cf2-cd6a-442c-babe-864f896dd8ea}</Project>
<Name>DynamoConversions</Name>
<Private>False</Private>
<Project>{67cf6cf2-cd6a-442c-babe-864f896dd8ea}</Project>
<Name>DynamoConversions</Name>
<Private>False</Private>
</ProjectReference>
</ItemGroup>
<ItemGroup>
Expand Down Expand Up @@ -147,7 +156,7 @@
<XamlRuntime>$(DefaultXamlRuntime)</XamlRuntime>
</Page>
</ItemGroup>
<Target Name="BinaryCompatibilityOps" BeforeTargets="Build">
<Target Name="BinaryCompatibilityOps" Condition=" '$(TargetFramework)' == 'net48' " BeforeTargets="Build">
<Copy SourceFiles="$(PkgExtended_Wpf_Toolkit)\lib\net40\Xceed.Wpf.Toolkit.dll" DestinationFolder="$(OutputPath)" />
</Target>
<Target Name="GenerateFiles" AfterTargets="ResolveSateliteResDeps" Condition=" '$(OS)' != 'Unix' ">
Expand All @@ -159,4 +168,4 @@
<GenerateResource SdkToolsPath="$(TargetFrameworkSDKToolsDirectory)" UseSourcePath="true" Sources="$(ProjectDir)CoreNodeModelsWpfImages.resx" OutputResources="$(ProjectDir)CoreNodeModelsWpfImages.resources" References="$(SystemDrawingDllPath)" />
<AL SdkToolsPath="$(TargetFrameworkSDKToolsDirectory)" TargetType="library" EmbedResources="$(ProjectDir)CoreNodeModelsWpfImages.resources" OutputAssembly="$(OutDir)CoreNodeModelsWpf.customization.dll" Version="%(AssemblyInfo.Version)" />
</Target>
</Project>
</Project>