Shos.UndoRedoList
1.0.3
See the version list below for details.
dotnet add package Shos.UndoRedoList --version 1.0.3
NuGet\Install-Package Shos.UndoRedoList -Version 1.0.3
<PackageReference Include="Shos.UndoRedoList" Version="1.0.3" />
paket add Shos.UndoRedoList --version 1.0.3
#r "nuget: Shos.UndoRedoList, 1.0.3"
// Install Shos.UndoRedoList as a Cake Addin #addin nuget:?package=Shos.UndoRedoList&version=1.0.3 // Install Shos.UndoRedoList as a Cake Tool #tool nuget:?package=Shos.UndoRedoList&version=1.0.3
Shos.UndoRedoList
List and ObservableCollection which support undo/redo.
NuGet
You can install Shos.UndoRedoList to your project with NuGet on Visual Studio.
Package Manager
PM>Install-Package Shos.UndoRedoList -version 1.0.3
.NET CLI
>dotnet add package Shos.UndoRedoList --version 1.0.3
PackageReference
<PackageReference Include="Shos.UndoRedoList" Version="1.0.3" />
Projects
Types for collection which supports undo/redo.
Tests for Shos.UndoRedoList.
Performance tests for Shos.UndoRedoList.
Sample WPF app for UndoRedoObservableCollection.
Types
class UndoRedoList<TElement, TList> : IList<TElement> where TList : IList<TElement>, new()
IList implemented collection which supports undo/redo.
class UndoRedoList<TElement> : IList<TElement> where TList : IList<TElement>, new()
List implemented collection which supports undo/redo.
class UndoRedoObservableCollection<TElement> : UndoRedoList<TElement, ObservableCollection<TElement>>, INotifyCollectionChanged
ObservableCollection which supports undo/redo.
class RingBuffer<TElement> : IEnumerable<TElement>
In computer science, a circular buffer, circular queue, cyclic buffer or ring buffer is a data structure that uses a single, fixed-size buffer as if it were connected end-to-end. This structure lends itself easily to buffering data streams.
class UndoRedoRingBuffer<TElement> : RingBuffer<TElement>
Specialized RingBuffer for undo/redo.
struct ModuloArithmetic : IEquatable<ModuloArithmetic>
Modular arithmetic - Wikipedia
In mathematics, modular arithmetic is a system of arithmetic for integers, where numbers "wrap around" when reaching a certain value, called the modulus.
static class EnumerableExtensions
Extension methods for IEnumerable.
Class diagram
*.puml files in Shos.UndoRedoList/Documents/ClassDiagrams are class diagram for PlantUML.
The following image is a class diagram made from these *.puml files.
Larger class diagram image is here.
Samples
See: Shos.UndoRedoList.SampleApp
Related Articles
Author Info
Fujio Kojima: a software developer in Japan
- Microsoft MVP for Development Tools - Visual C# (Jul. 2005 - Dec. 2014)
- Microsoft MVP for .NET (Jan. 2015 - Oct. 2015)
- Microsoft MVP for Visual Studio and Development Technologies (Nov. 2015 - Jun. 2018)
- Microsoft MVP for Developer Technologies (Nov. 2018 - Jun. 2021)
- MVP Profile
- Blog (Japanese)
- Web Site (Japanese)
License
This library is under the MIT License.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.