diff --git a/.nuget/SourceGrid.nuspec b/.nuget/SourceGrid.nuspec index 9fe2a7a..bf9d45a 100644 --- a/.nuget/SourceGrid.nuspec +++ b/.nuget/SourceGrid.nuspec @@ -17,13 +17,13 @@ There are a lot of controls of this type available, but often are expensive, difficult to be customize or not compatible with .NET. SourceGrid allows users to have customizable datasource which is not in DataSet format. - Copyright 2023 + Copyright 2024 Open source grid control tool SOURCEGRID GRID - + - + diff --git a/CHANGELOG.md b/CHANGELOG.md index 1edc4b6..69ca6a9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # SourceGrid +## [3.0.0] - 2024-01-18 + +### Major Changes + +- Migrate to .net 8.0 related to #3 +- Deprecated DevAge Serialization + ## [2.0.0] - 2023-11-24 ### Major Changes diff --git a/README.md b/README.md index 4969c08..cbf2c72 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ For more detailed information, Refer article at [CodeProject](https://www.codepr There only a few preconditions which must be fulfilled. * Visual Studio 2022 -* .Net 4.8 +* Net 8.0 # Changes: 1. Enhancement: Smooth horizontal and vertical scrolling diff --git a/SourceGrid.sln b/SourceGrid.sln index b2518b6..bc321a1 100644 --- a/SourceGrid.sln +++ b/SourceGrid.sln @@ -1,11 +1,11 @@ - + Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 VisualStudioVersion = 12.0.40629.0 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SourceGrid", "Src\SourceGrid.csproj", "{2A5A1657-DBA8-4117-8E2A-9F1236ACE9E2}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SourceGrid", "Src\SourceGrid.csproj", "{2A5A1657-DBA8-4117-8E2A-9F1236ACE9E2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SourceGrid.Tests", "tests\SourceGrid.Tests.csproj", "{E9C1C112-7618-4815-8E4F-BA6D833EB73E}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SourceGrid.Tests", "tests\SourceGrid.Tests.csproj", "{E9C1C112-7618-4815-8E4F-BA6D833EB73E}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{FA4FECFA-5F28-4510-BE5B-80DCDB092491}" ProjectSection(SolutionItems) = preProject diff --git a/Src/DevAge.Windows.Forms/Windows/Forms/ButtonMultiSelection.cs b/Src/DevAge.Windows.Forms/Windows/Forms/ButtonMultiSelection.cs index bb5bbf7..e9219b8 100644 --- a/Src/DevAge.Windows.Forms/Windows/Forms/ButtonMultiSelection.cs +++ b/Src/DevAge.Windows.Forms/Windows/Forms/ButtonMultiSelection.cs @@ -224,17 +224,18 @@ private void btMain_Click(object sender, System.EventArgs e) } } - private ContextMenu l_ContextMenu = new ContextMenu(); + // TODO ContextMenu is no longer supported. Use ContextMenuStrip instead. For more details see https://docs.microsoft.com/en-us/dotnet/core/compatibility/winforms#removed-controls + private ContextMenuStrip l_ContextMenu = new ContextMenuStrip(); private void btArrow_Click(object sender, System.EventArgs e) { if (m_ButtonsItems!=null && m_ButtonsItems.Count>0) { - l_ContextMenu.MenuItems.Clear(); + l_ContextMenu.Items.Clear(); foreach(SubButtonItem b in m_ButtonsItems) { b.Owner = this; - l_ContextMenu.MenuItems.Add(b.m_MenuItem); + l_ContextMenu.Items.Add(b.m_MenuItem); } l_ContextMenu.Show(btMain,new Point(0,btMain.Height)); @@ -302,10 +303,10 @@ public SubButtonItem(string p_Text, EventHandler p_Event):this(p_Text, p_Event, public SubButtonItem(string p_Text, EventHandler p_Event, Image p_Image) { if (p_Image == null) - m_MenuItem = new MenuItem(); + m_MenuItem = new ToolStripMenuItem(); else { - m_MenuItem = new MenuItem(); + m_MenuItem = new ToolStripMenuItem(); //TODO add the image } @@ -315,10 +316,10 @@ public SubButtonItem(string p_Text, EventHandler p_Event, Image p_Image) public SubButtonItem(string p_Text, EventHandler p_Event, ImageList p_ImageList, int p_ImageIndex) { if (p_ImageList == null) - m_MenuItem = new MenuItem(); + m_MenuItem = new ToolStripMenuItem(); else { - m_MenuItem = new MenuItem(); + m_MenuItem = new ToolStripMenuItem(); //TODO add the image } @@ -334,7 +335,7 @@ private void DefConstructor(string p_Text, EventHandler p_Event) Click += p_Event; } - internal MenuItem m_MenuItem; + internal ToolStripMenuItem m_MenuItem; private object m_Tag; public object Tag diff --git a/Src/DevAge.Windows.Forms/Windows/Forms/UIComboBox.cs b/Src/DevAge.Windows.Forms/Windows/Forms/UIComboBox.cs index be793af..45a4eab 100644 --- a/Src/DevAge.Windows.Forms/Windows/Forms/UIComboBox.cs +++ b/Src/DevAge.Windows.Forms/Windows/Forms/UIComboBox.cs @@ -124,7 +124,7 @@ public bool ReadOnly { m_ReadOnlyTextBox.ReadOnly = true; m_ReadOnlyTextBox.Visible = true; - m_ReadOnlyTextBox.ContextMenu = m_ComboBox.ContextMenu; + m_ReadOnlyTextBox.ContextMenuStrip = m_ComboBox.ContextMenuStrip; m_ComboBox.SendToBack(); m_ComboBox.Enabled = false; } diff --git a/Src/DevAgeSourcePack4/Runtime/Serialization/Utilities.cs b/Src/DevAgeSourcePack4/Runtime/Serialization/Utilities.cs deleted file mode 100644 index 54c17ab..0000000 --- a/Src/DevAgeSourcePack4/Runtime/Serialization/Utilities.cs +++ /dev/null @@ -1,73 +0,0 @@ -using System; -using System.Runtime.Serialization; -using System.Runtime.Serialization.Formatters.Binary; -using System.IO; -using System.Security; -using System.Security.Cryptography; -using System.Text; - -namespace DevAge.Runtime.Serialization -{ - /// - /// Static Class for serialization utilities - /// - public static class Utilities - { - #region Serialization Code - /// - /// Deserialize the stream. Using BinaryFormatter. - /// - /// - /// - public static object BinDeserialize(Stream p_Stream) - { - BinaryFormatter f = new BinaryFormatter(); - object tmp; - tmp = f.Deserialize(p_Stream); - return tmp; - } - - /// - /// Serialize the stream. Using BinaryFormatter. - /// - /// - /// - public static void BinSerialize(Stream p_Stream, object p_Object) - { - BinaryFormatter f = new BinaryFormatter(); - f.Serialize(p_Stream,p_Object); - } - - /// - /// Deserialize the specified file. Using BinaryFormatter. - /// - /// - /// - public static object BinDeserialize(string p_strFileName) - { - object tmp; - using (FileStream l_Stream = new FileStream(p_strFileName,FileMode.Open,FileAccess.Read)) - { - tmp = BinDeserialize(l_Stream); - l_Stream.Close(); - } - return tmp; - } - - /// - /// Serialize the object to the specified file. Using BinaryFormatter. - /// - /// - /// - public static void BinSerialize(string p_strFileName, object p_Object) - { - using (FileStream l_Stream = new FileStream(p_strFileName,FileMode.Create,FileAccess.Write)) - { - BinSerialize(l_Stream,p_Object); - l_Stream.Close(); - } - } - - #endregion - } -} diff --git a/Src/SourceGrid.csproj b/Src/SourceGrid.csproj index 1015ac4..9f4e83e 100644 --- a/Src/SourceGrid.csproj +++ b/Src/SourceGrid.csproj @@ -1,32 +1,16 @@ - - + - {2A5A1657-DBA8-4117-8E2A-9F1236ACE9E2} - Debug - AnyCPU + net8.0-windows Library - SourceGrid - v4.8 - Properties C:\Documents and Settings\User.YOUR-2F73F42422\Application Data\ICSharpCode/SharpDevelop3.0\Settings.SourceAnalysis true SourceGrid\SourceGrid.snk False File - False False - 4 - false bin\Debug\SourceGrid.xml 1591 - SourceGrid - - - 3.5 - false - 9.0.30729 - 2.0 publish\ true Disk @@ -41,487 +25,127 @@ 1.0.0.%2a false true - + false + true + true + Davide Icardi, Darius Damalakas, http://sourcegrid.codeplex.com, http://bitbucket.org/dariusdamalakas/sourcegrid + Davide Icardi, Darius Damalakas + 4.40.%2a + SourceGrid + Open Source C# Grid Control - bin\Debug\ - true - Full - False True - DEBUG;TRACE - bin\Release\ False None - True - False - TRACE False Auto 4194304 - AnyCPU 4096 AllRules.ruleset - ..\Out\net48\Debug\ - ..\Out\net48\Debug\SourceGrid.XML - full - TRACE;DEBUG - false + ..\Out\net8\Debug\ + ..\Out\net8\Debug\SourceGrid.XML AllRules.ruleset - ..\Out\net48\Release\ - ..\Out\net48\SourceGrid.XML - full + ..\Out\net8\Release\ + ..\Out\net8\SourceGrid.XML true - false - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + UserControl - + UserControl - - - + UserControl - + Component - + Component - + Component - - + Component - + UserControl - - Form - - + Component - + UserControl - - Form - - - Form - - - Form - - - + Component - + UserControl - + UserControl - + UserControl - - - + UserControl - + Component - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + Component - - - - - - + Component - - - + UserControl - - - - - - - - - - - - + Component - - - - - - - + UserControl - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + Component - - - - - - - - - - - - - - - - - - - - - - - - - + Component - - - - Code - - + Component - + Component - + Component - - + Component - - Code - - - - - - - - Code - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Resources.Designer.cs - - - ButtonMultiSelection.cs - - - ColorPicker.cs - - - DevAgeNumericUpDown.cs - - - DevAgeTextBoxButton.cs - - - DropDown.cs - - - DropDownButton.cs - - - EditableControlBase.cs - - - ErrorDialog.cs - - - ErrorDialogDetails.cs - - - FormBase.cs - - - ImageNavigator.cs - - - Line.cs - - - LinkLabel.cs - - - TextBoxUITypeEditor.cs - - - DataGrid.cs - - - ListEditor.cs - - - PlanningGrid.cs - @@ -555,4 +179,89 @@ true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Src/SourceGrid/AssemblyInfo.cs b/Src/SourceGrid/AssemblyInfo.cs index 678413b..e6b35fd 100644 --- a/Src/SourceGrid/AssemblyInfo.cs +++ b/Src/SourceGrid/AssemblyInfo.cs @@ -1,5 +1,2 @@ using System.Reflection; using System.Runtime.CompilerServices; - -[assembly: AssemblyTitle("SourceGrid")] -[assembly: AssemblyDescription("Open Source C# Grid Control")] diff --git a/Src/SourceGrid/QuadTree/IHasRect.cs b/Src/SourceGrid/QuadTree/IHasRect.cs index ec59991..a16b766 100644 --- a/Src/SourceGrid/QuadTree/IHasRect.cs +++ b/Src/SourceGrid/QuadTree/IHasRect.cs @@ -1,6 +1,7 @@ using SourceGrid; using System; using System.Drawing; +using Range = SourceGrid.Range; namespace QuadTreeLib { diff --git a/Src/SourceGrid/QuadTree/QuadTree.cs b/Src/SourceGrid/QuadTree/QuadTree.cs index 1d04719..d5efc55 100644 --- a/Src/SourceGrid/QuadTree/QuadTree.cs +++ b/Src/SourceGrid/QuadTree/QuadTree.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Drawing; +using Range = SourceGrid.Range; namespace QuadTreeLib { diff --git a/Src/SourceGrid/QuadTree/QuadTreeNode.cs b/Src/SourceGrid/QuadTree/QuadTreeNode.cs index 2c62e49..a2c83ae 100644 --- a/Src/SourceGrid/QuadTree/QuadTreeNode.cs +++ b/Src/SourceGrid/QuadTree/QuadTreeNode.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.Drawing; +using Range = SourceGrid.Range; namespace QuadTreeLib { diff --git a/Src/SourceGridAssemblyInfo.cs b/Src/SourceGridAssemblyInfo.cs index 163a690..cc291e7 100644 --- a/Src/SourceGridAssemblyInfo.cs +++ b/Src/SourceGridAssemblyInfo.cs @@ -7,15 +7,9 @@ See License.txt. using System; using System.Reflection; using System.Runtime.CompilerServices; - -[assembly: AssemblyCompany("Davide Icardi, Darius Damalakas, http://sourcegrid.codeplex.com, http://bitbucket.org/dariusdamalakas/sourcegrid")] -[assembly: AssemblyCopyright("Davide Icardi, Darius Damalakas")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] -//Changed when no more compatible with the previous version -[assembly: AssemblyVersion("4.40.*")] - [assembly: CLSCompliant(true)] [assembly: System.Runtime.InteropServices.ComVisible(false)] \ No newline at end of file diff --git a/tests/Properties/AssemblyInfo.cs b/tests/Properties/AssemblyInfo.cs deleted file mode 100644 index a3733f8..0000000 --- a/tests/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("SourceGrid.Tests")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("SourceGrid.Tests")] -[assembly: AssemblyCopyright("Copyright © 2007")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("88f57988-072d-4936-992a-b93feb56d2e7")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Revision and Build Numbers -// by using the '*' as shown below: -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/tests/SourceGrid.Tests.csproj b/tests/SourceGrid.Tests.csproj index 8180f37..f83ecfa 100644 --- a/tests/SourceGrid.Tests.csproj +++ b/tests/SourceGrid.Tests.csproj @@ -1,28 +1,12 @@ - - - - + - Debug - AnyCPU - 9.0.21022 - 2.0 - {E9C1C112-7618-4815-8E4F-BA6D833EB73E} + net8.0-windows Library - Properties - SourceGrid.Tests - SourceGrid.Tests Rational ClearCase Rational ClearCase Rational ClearCase Rational ClearCase - - - 3.5 - - false - v4.8 publish\ true Disk @@ -37,43 +21,16 @@ 1.0.0.%2a false true - - - + false + true + true - true - full - false ..\Out\Test\Debug\ - DEBUG;TRACE - prompt - 4 - false - pdbonly - true ..\Out\Test\Release\ - TRACE - prompt - 4 - false - - - ..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll - - - - - - - - - - - @@ -105,27 +62,11 @@ - - {2A5A1657-DBA8-4117-8E2A-9F1236ACE9E2} - SourceGrid - + - + + + - - - - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - - \ No newline at end of file diff --git a/tests/packages.config b/tests/packages.config deleted file mode 100644 index 0272068..0000000 --- a/tests/packages.config +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file