summary refs log tree commit diff
diff options
context:
space:
mode:
author1970-01-01 00:00:00 +0000
committer2025-01-08 04:33:02 +0000
commiteec53d8c4bb0b36bc0a41a4e954d4d514644890b (patch)
tree588faf803ff90f1a2194a2f40d9ab716d9257ca4
parenttext -> HTML (diff)
downloadcs-eec53d8c4bb0b36bc0a41a4e954d4d514644890b.tar
cs-eec53d8c4bb0b36bc0a41a4e954d4d514644890b.tar.gz
cs-eec53d8c4bb0b36bc0a41a4e954d4d514644890b.tar.bz2
cs-eec53d8c4bb0b36bc0a41a4e954d4d514644890b.tar.xz
cs-eec53d8c4bb0b36bc0a41a4e954d4d514644890b.zip
todo list
-rw-r--r--todo/.vs/ProjectEvaluation/todo.metadata.v7.binbin0 -> 175770 bytes
-rw-r--r--todo/.vs/ProjectEvaluation/todo.projects.v7.binbin0 -> 686022 bytes
-rw-r--r--todo/.vs/todo/DesignTimeBuild/.dtbcache.v2bin0 -> 74007 bytes
-rw-r--r--todo/.vs/todo/FileContentIndex/1a485f1a-4455-4486-be87-bed2e5880846.vsidxbin0 -> 10339 bytes
-rw-r--r--todo/.vs/todo/FileContentIndex/3dc4afa6-de49-49c3-9fc7-1be13b388763.vsidxbin0 -> 13721 bytes
-rw-r--r--todo/.vs/todo/FileContentIndex/4f7b6a0f-9806-4ac8-bc11-3510f6264b0d.vsidxbin0 -> 21664 bytes
-rw-r--r--todo/.vs/todo/FileContentIndex/6f3780c4-4173-4688-8524-9581c918cab6.vsidxbin0 -> 27836 bytes
-rw-r--r--todo/.vs/todo/FileContentIndex/f7d24066-333e-4f12-84c7-4271bbb5e628.vsidxbin0 -> 2556 bytes
-rw-r--r--todo/.vs/todo/v17/.futdcache.v2bin0 -> 249 bytes
-rw-r--r--todo/.vs/todo/v17/.suobin0 -> 35840 bytes
-rw-r--r--todo/todo.sln25
-rw-r--r--todo/todo/Program.cs23
-rw-r--r--todo/todo/bin/Debug/netcoreapp3.1/todo.deps.json23
-rw-r--r--todo/todo/bin/Debug/netcoreapp3.1/todo.dllbin0 -> 11776 bytes
-rw-r--r--todo/todo/bin/Debug/netcoreapp3.1/todo.exebin0 -> 158208 bytes
-rw-r--r--todo/todo/bin/Debug/netcoreapp3.1/todo.pdbbin0 -> 13564 bytes
-rw-r--r--todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.dev.json8
-rw-r--r--todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.json9
-rw-r--r--todo/todo/frm_item.Designer.cs84
-rw-r--r--todo/todo/frm_item.cs51
-rw-r--r--todo/todo/frm_item.resx120
-rw-r--r--todo/todo/frm_todo.Designer.cs125
-rw-r--r--todo/todo/frm_todo.cs107
-rw-r--r--todo/todo/frm_todo.resx120
-rw-r--r--todo/todo/item.cs33
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs4
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/apphost.exebin0 -> 158208 bytes
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfo.cs23
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfoInputs.cache1
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.GeneratedMSBuildEditorConfig.editorconfig11
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.assets.cachebin0 -> 151 bytes
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.BuildWithSkipAnalyzers0
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.CoreCompileInputs.cache1
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.FileListAbsolute.txt16
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.GenerateResource.cachebin0 -> 108 bytes
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.designer.deps.json11
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.designer.runtimeconfig.json16
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.dllbin0 -> 11776 bytes
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.frm_item.resourcesbin0 -> 180 bytes
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.frm_todo.resourcesbin0 -> 180 bytes
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.genruntimeconfig.cache1
-rw-r--r--todo/todo/obj/Debug/netcoreapp3.1/todo.pdbbin0 -> 13564 bytes
-rw-r--r--todo/todo/obj/project.assets.json71
-rw-r--r--todo/todo/obj/project.nuget.cache8
-rw-r--r--todo/todo/obj/todo.csproj.nuget.dgspec.json66
-rw-r--r--todo/todo/obj/todo.csproj.nuget.g.props15
-rw-r--r--todo/todo/obj/todo.csproj.nuget.g.targets2
-rw-r--r--todo/todo/todo.csproj9
-rw-r--r--todo/todo/todo.csproj.user11
49 files changed, 994 insertions, 0 deletions
diff --git a/todo/.vs/ProjectEvaluation/todo.metadata.v7.bin b/todo/.vs/ProjectEvaluation/todo.metadata.v7.bin
new file mode 100644
index 0000000..d5a93d5
--- /dev/null
+++ b/todo/.vs/ProjectEvaluation/todo.metadata.v7.bin
Binary files differdiff --git a/todo/.vs/ProjectEvaluation/todo.projects.v7.bin b/todo/.vs/ProjectEvaluation/todo.projects.v7.bin
new file mode 100644
index 0000000..08197eb
--- /dev/null
+++ b/todo/.vs/ProjectEvaluation/todo.projects.v7.bin
Binary files differdiff --git a/todo/.vs/todo/DesignTimeBuild/.dtbcache.v2 b/todo/.vs/todo/DesignTimeBuild/.dtbcache.v2
new file mode 100644
index 0000000..d65ed22
--- /dev/null
+++ b/todo/.vs/todo/DesignTimeBuild/.dtbcache.v2
Binary files differdiff --git a/todo/.vs/todo/FileContentIndex/1a485f1a-4455-4486-be87-bed2e5880846.vsidx b/todo/.vs/todo/FileContentIndex/1a485f1a-4455-4486-be87-bed2e5880846.vsidx
new file mode 100644
index 0000000..ec82c48
--- /dev/null
+++ b/todo/.vs/todo/FileContentIndex/1a485f1a-4455-4486-be87-bed2e5880846.vsidx
Binary files differdiff --git a/todo/.vs/todo/FileContentIndex/3dc4afa6-de49-49c3-9fc7-1be13b388763.vsidx b/todo/.vs/todo/FileContentIndex/3dc4afa6-de49-49c3-9fc7-1be13b388763.vsidx
new file mode 100644
index 0000000..de28b90
--- /dev/null
+++ b/todo/.vs/todo/FileContentIndex/3dc4afa6-de49-49c3-9fc7-1be13b388763.vsidx
Binary files differdiff --git a/todo/.vs/todo/FileContentIndex/4f7b6a0f-9806-4ac8-bc11-3510f6264b0d.vsidx b/todo/.vs/todo/FileContentIndex/4f7b6a0f-9806-4ac8-bc11-3510f6264b0d.vsidx
new file mode 100644
index 0000000..33713e4
--- /dev/null
+++ b/todo/.vs/todo/FileContentIndex/4f7b6a0f-9806-4ac8-bc11-3510f6264b0d.vsidx
Binary files differdiff --git a/todo/.vs/todo/FileContentIndex/6f3780c4-4173-4688-8524-9581c918cab6.vsidx b/todo/.vs/todo/FileContentIndex/6f3780c4-4173-4688-8524-9581c918cab6.vsidx
new file mode 100644
index 0000000..c2a9557
--- /dev/null
+++ b/todo/.vs/todo/FileContentIndex/6f3780c4-4173-4688-8524-9581c918cab6.vsidx
Binary files differdiff --git a/todo/.vs/todo/FileContentIndex/f7d24066-333e-4f12-84c7-4271bbb5e628.vsidx b/todo/.vs/todo/FileContentIndex/f7d24066-333e-4f12-84c7-4271bbb5e628.vsidx
new file mode 100644
index 0000000..da9fefb
--- /dev/null
+++ b/todo/.vs/todo/FileContentIndex/f7d24066-333e-4f12-84c7-4271bbb5e628.vsidx
Binary files differdiff --git a/todo/.vs/todo/v17/.futdcache.v2 b/todo/.vs/todo/v17/.futdcache.v2
new file mode 100644
index 0000000..5d9b0f4
--- /dev/null
+++ b/todo/.vs/todo/v17/.futdcache.v2
Binary files differdiff --git a/todo/.vs/todo/v17/.suo b/todo/.vs/todo/v17/.suo
new file mode 100644
index 0000000..e558aa3
--- /dev/null
+++ b/todo/.vs/todo/v17/.suo
Binary files differdiff --git a/todo/todo.sln b/todo/todo.sln
new file mode 100644
index 0000000..f0ab85c
--- /dev/null
+++ b/todo/todo.sln
@@ -0,0 +1,25 @@
+

+Microsoft Visual Studio Solution File, Format Version 12.00

+# Visual Studio Version 17

+VisualStudioVersion = 17.8.34330.188

+MinimumVisualStudioVersion = 10.0.40219.1

+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "todo", "todo\todo.csproj", "{85E7E03F-09C7-4D67-9A98-5F1EBC141028}"

+EndProject

+Global

+	GlobalSection(SolutionConfigurationPlatforms) = preSolution

+		Debug|Any CPU = Debug|Any CPU

+		Release|Any CPU = Release|Any CPU

+	EndGlobalSection

+	GlobalSection(ProjectConfigurationPlatforms) = postSolution

+		{85E7E03F-09C7-4D67-9A98-5F1EBC141028}.Debug|Any CPU.ActiveCfg = Debug|Any CPU

+		{85E7E03F-09C7-4D67-9A98-5F1EBC141028}.Debug|Any CPU.Build.0 = Debug|Any CPU

+		{85E7E03F-09C7-4D67-9A98-5F1EBC141028}.Release|Any CPU.ActiveCfg = Release|Any CPU

+		{85E7E03F-09C7-4D67-9A98-5F1EBC141028}.Release|Any CPU.Build.0 = Release|Any CPU

+	EndGlobalSection

+	GlobalSection(SolutionProperties) = preSolution

+		HideSolutionNode = FALSE

+	EndGlobalSection

+	GlobalSection(ExtensibilityGlobals) = postSolution

+		SolutionGuid = {92F77712-66D1-4100-A02B-686DD557AD31}

+	EndGlobalSection

+EndGlobal

diff --git a/todo/todo/Program.cs b/todo/todo/Program.cs
new file mode 100644
index 0000000..a78d278
--- /dev/null
+++ b/todo/todo/Program.cs
@@ -0,0 +1,23 @@
+using System;

+using System.Collections.Generic;

+using System.Linq;

+using System.Threading.Tasks;

+using System.Windows.Forms;

+

+namespace todo

+{

+	internal static class Program

+	{

+		/// <summary>

+		///  The main entry point for the application.

+		/// </summary>

+		[STAThread]

+		static void Main()

+		{

+			Application.SetHighDpiMode(HighDpiMode.SystemAware);

+			Application.EnableVisualStyles();

+			Application.SetCompatibleTextRenderingDefault(false);

+			Application.Run(new frm_todo());

+		}

+	}

+}

diff --git a/todo/todo/bin/Debug/netcoreapp3.1/todo.deps.json b/todo/todo/bin/Debug/netcoreapp3.1/todo.deps.json
new file mode 100644
index 0000000..e96466c
--- /dev/null
+++ b/todo/todo/bin/Debug/netcoreapp3.1/todo.deps.json
@@ -0,0 +1,23 @@
+{

+  "runtimeTarget": {

+    "name": ".NETCoreApp,Version=v3.1",

+    "signature": ""

+  },

+  "compilationOptions": {},

+  "targets": {

+    ".NETCoreApp,Version=v3.1": {

+      "todo/1.0.0": {

+        "runtime": {

+          "todo.dll": {}

+        }

+      }

+    }

+  },

+  "libraries": {

+    "todo/1.0.0": {

+      "type": "project",

+      "serviceable": false,

+      "sha512": ""

+    }

+  }

+}
\ No newline at end of file
diff --git a/todo/todo/bin/Debug/netcoreapp3.1/todo.dll b/todo/todo/bin/Debug/netcoreapp3.1/todo.dll
new file mode 100644
index 0000000..75501ea
--- /dev/null
+++ b/todo/todo/bin/Debug/netcoreapp3.1/todo.dll
Binary files differdiff --git a/todo/todo/bin/Debug/netcoreapp3.1/todo.exe b/todo/todo/bin/Debug/netcoreapp3.1/todo.exe
new file mode 100644
index 0000000..e40c18e
--- /dev/null
+++ b/todo/todo/bin/Debug/netcoreapp3.1/todo.exe
Binary files differdiff --git a/todo/todo/bin/Debug/netcoreapp3.1/todo.pdb b/todo/todo/bin/Debug/netcoreapp3.1/todo.pdb
new file mode 100644
index 0000000..2832ce8
--- /dev/null
+++ b/todo/todo/bin/Debug/netcoreapp3.1/todo.pdb
Binary files differdiff --git a/todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.dev.json b/todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.dev.json
new file mode 100644
index 0000000..214bf78
--- /dev/null
+++ b/todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.dev.json
@@ -0,0 +1,8 @@
+{

+  "runtimeOptions": {

+    "additionalProbingPaths": [

+      "C:\\Users\\User\\.dotnet\\store\\|arch|\\|tfm|",

+      "C:\\Users\\User\\.nuget\\packages"

+    ]

+  }

+}
\ No newline at end of file
diff --git a/todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.json b/todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.json
new file mode 100644
index 0000000..9b3a644
--- /dev/null
+++ b/todo/todo/bin/Debug/netcoreapp3.1/todo.runtimeconfig.json
@@ -0,0 +1,9 @@
+{

+  "runtimeOptions": {

+    "tfm": "netcoreapp3.1",

+    "framework": {

+      "name": "Microsoft.WindowsDesktop.App",

+      "version": "3.1.0"

+    }

+  }

+}
\ No newline at end of file
diff --git a/todo/todo/frm_item.Designer.cs b/todo/todo/frm_item.Designer.cs
new file mode 100644
index 0000000..045f651
--- /dev/null
+++ b/todo/todo/frm_item.Designer.cs
@@ -0,0 +1,84 @@
+namespace todo

+{

+    partial class frm_item

+    {

+        /// <summary>

+        /// Required designer variable.

+        /// </summary>

+        private System.ComponentModel.IContainer components = null;

+

+        /// <summary>

+        /// Clean up any resources being used.

+        /// </summary>

+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>

+        protected override void Dispose(bool disposing)

+        {

+            if (disposing && (components != null)) {

+                components.Dispose();

+            }

+            base.Dispose(disposing);

+        }

+

+        #region Windows Form Designer generated code

+

+        /// <summary>

+        /// Required method for Designer support - do not modify

+        /// the contents of this method with the code editor.

+        /// </summary>

+        private void InitializeComponent()

+        {

+            txt_desc = new System.Windows.Forms.TextBox();

+            btn_done = new System.Windows.Forms.Button();

+            btn_cancel = new System.Windows.Forms.Button();

+            SuspendLayout();

+            // 

+            // txt_desc

+            // 

+            txt_desc.Location = new System.Drawing.Point(12, 27);

+            txt_desc.Name = "txt_desc";

+            txt_desc.Size = new System.Drawing.Size(349, 23);

+            txt_desc.TabIndex = 0;

+            // 

+            // btn_done

+            // 

+            btn_done.Location = new System.Drawing.Point(367, 27);

+            btn_done.Name = "btn_done";

+            btn_done.Size = new System.Drawing.Size(51, 23);

+            btn_done.TabIndex = 1;

+            btn_done.Text = "Done";

+            btn_done.UseVisualStyleBackColor = true;

+            btn_done.Click += btn_done_Click;

+            // 

+            // btn_cancel

+            // 

+            btn_cancel.Location = new System.Drawing.Point(421, 27);

+            btn_cancel.Name = "btn_cancel";

+            btn_cancel.Size = new System.Drawing.Size(51, 23);

+            btn_cancel.TabIndex = 2;

+            btn_cancel.Text = "Cancel";

+            btn_cancel.UseVisualStyleBackColor = true;

+            btn_cancel.Click += btn_cancel_Click;

+            // 

+            // frm_item

+            // 

+            AcceptButton = btn_done;

+            AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);

+            AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;

+            CancelButton = btn_cancel;

+            ClientSize = new System.Drawing.Size(484, 71);

+            Controls.Add(btn_cancel);

+            Controls.Add(btn_done);

+            Controls.Add(txt_desc);

+            Name = "frm_item";

+            Text = "New To-Do Item";

+            ResumeLayout(false);

+            PerformLayout();

+        }

+

+        #endregion

+

+        private System.Windows.Forms.TextBox txt_desc;

+        private System.Windows.Forms.Button btn_done;

+        private System.Windows.Forms.Button btn_cancel;

+    }

+}
\ No newline at end of file
diff --git a/todo/todo/frm_item.cs b/todo/todo/frm_item.cs
new file mode 100644
index 0000000..77468b2
--- /dev/null
+++ b/todo/todo/frm_item.cs
@@ -0,0 +1,51 @@
+using System;

+using System.Collections.Generic;

+using System.ComponentModel;

+using System.Data;

+using System.Drawing;

+using System.Text;

+using System.Windows.Forms;

+

+namespace todo

+{

+	public partial class frm_item : Form

+	{

+		public frm_item()

+		{

+			InitializeComponent();

+		}

+

+		item todo = null;

+

+		public item add()

+		{

+			this.ShowDialog();

+			return todo;

+		}

+

+		private void btn_done_Click(object sender, EventArgs e)

+		{

+			if (txt_desc.Text == "") {

+				MessageBox.Show("Enter a description for the new todo item",

+					"Entry Error");

+				return;

+			}

+			todo = new item(txt_desc.Text);

+			this.Close();

+		}

+

+		public string edit(string desc)

+		{

+			/* show the old description */

+			txt_desc.Text = desc;

+			this.ShowDialog();

+			/* return the edited description */

+			return txt_desc.Text;

+		}

+

+		private void btn_cancel_Click(object sender, EventArgs e)

+		{

+			this.Close();

+		}

+	}

+}

diff --git a/todo/todo/frm_item.resx b/todo/todo/frm_item.resx
new file mode 100644
index 0000000..b92c163
--- /dev/null
+++ b/todo/todo/frm_item.resx
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>

+<root>

+  <!--

+    Microsoft ResX Schema 

+

+    Version 2.0

+

+    The primary goals of this format is to allow a simple XML format

+    that is mostly human readable. The generation and parsing of the

+    various data types are done through the TypeConverter classes

+    associated with the data types.

+

+    Example:

+

+    ... ado.net/XML headers & schema ...

+    <resheader name="resmimetype">text/microsoft-resx</resheader>

+    <resheader name="version">2.0</resheader>

+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>

+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>

+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>

+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>

+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">

+        <value>[base64 mime encoded serialized .NET Framework object]</value>

+    </data>

+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">

+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>

+        <comment>This is a comment</comment>

+    </data>

+

+    There are any number of "resheader" rows that contain simple

+    name/value pairs.

+

+    Each data row contains a name, and value. The row also contains a

+    type or mimetype. Type corresponds to a .NET class that support

+    text/value conversion through the TypeConverter architecture.

+    Classes that don't support this are serialized and stored with the

+    mimetype set.

+

+    The mimetype is used for serialized objects, and tells the

+    ResXResourceReader how to depersist the object. This is currently not

+    extensible. For a given mimetype the value must be set accordingly:

+

+    Note - application/x-microsoft.net.object.binary.base64 is the format

+    that the ResXResourceWriter will generate, however the reader can

+    read any of the formats listed below.

+

+    mimetype: application/x-microsoft.net.object.binary.base64

+    value   : The object must be serialized with

+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter

+            : and then encoded with base64 encoding.

+    

+    mimetype: application/x-microsoft.net.object.soap.base64

+    value   : The object must be serialized with

+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter

+            : and then encoded with base64 encoding.

+

+    mimetype: application/x-microsoft.net.object.bytearray.base64

+    value   : The object must be serialized into a byte array

+            : using a System.ComponentModel.TypeConverter

+            : and then encoded with base64 encoding.

+    -->

+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />

+    <xsd:element name="root" msdata:IsDataSet="true">

+      <xsd:complexType>

+        <xsd:choice maxOccurs="unbounded">

+          <xsd:element name="metadata">

+            <xsd:complexType>

+              <xsd:sequence>

+                <xsd:element name="value" type="xsd:string" minOccurs="0" />

+              </xsd:sequence>

+              <xsd:attribute name="name" use="required" type="xsd:string" />

+              <xsd:attribute name="type" type="xsd:string" />

+              <xsd:attribute name="mimetype" type="xsd:string" />

+              <xsd:attribute ref="xml:space" />

+            </xsd:complexType>

+          </xsd:element>

+          <xsd:element name="assembly">

+            <xsd:complexType>

+              <xsd:attribute name="alias" type="xsd:string" />

+              <xsd:attribute name="name" type="xsd:string" />

+            </xsd:complexType>

+          </xsd:element>

+          <xsd:element name="data">

+            <xsd:complexType>

+              <xsd:sequence>

+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />

+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />

+              </xsd:sequence>

+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />

+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />

+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />

+              <xsd:attribute ref="xml:space" />

+            </xsd:complexType>

+          </xsd:element>

+          <xsd:element name="resheader">

+            <xsd:complexType>

+              <xsd:sequence>

+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />

+              </xsd:sequence>

+              <xsd:attribute name="name" type="xsd:string" use="required" />

+            </xsd:complexType>

+          </xsd:element>

+        </xsd:choice>

+      </xsd:complexType>

+    </xsd:element>

+  </xsd:schema>

+  <resheader name="resmimetype">

+    <value>text/microsoft-resx</value>

+  </resheader>

+  <resheader name="version">

+    <value>2.0</value>

+  </resheader>

+  <resheader name="reader">

+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>

+  </resheader>

+  <resheader name="writer">

+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>

+  </resheader>

+</root>
\ No newline at end of file
diff --git a/todo/todo/frm_todo.Designer.cs b/todo/todo/frm_todo.Designer.cs
new file mode 100644
index 0000000..7886028
--- /dev/null
+++ b/todo/todo/frm_todo.Designer.cs
@@ -0,0 +1,125 @@
+namespace todo

+{

+    partial class frm_todo

+    {

+        /// <summary>

+        ///  Required designer variable.

+        /// </summary>

+        private System.ComponentModel.IContainer components = null;

+

+        /// <summary>

+        ///  Clean up any resources being used.

+        /// </summary>

+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>

+        protected override void Dispose(bool disposing)

+        {

+            if (disposing && (components != null)) {

+                components.Dispose();

+            }

+            base.Dispose(disposing);

+        }

+

+        #region Windows Form Designer generated code

+

+        /// <summary>

+        ///  Required method for Designer support - do not modify

+        ///  the contents of this method with the code editor.

+        /// </summary>

+        private void InitializeComponent()

+        {

+            lst_todo = new System.Windows.Forms.ListBox();

+            btn_add = new System.Windows.Forms.Button();

+            btn_edit = new System.Windows.Forms.Button();

+            btn_del = new System.Windows.Forms.Button();

+            btn_exit = new System.Windows.Forms.Button();

+            btn_status = new System.Windows.Forms.Button();

+            SuspendLayout();

+            // 

+            // lst_todo

+            // 

+            lst_todo.FormattingEnabled = true;

+            lst_todo.ItemHeight = 15;

+            lst_todo.Location = new System.Drawing.Point(12, 12);

+            lst_todo.Name = "lst_todo";

+            lst_todo.Size = new System.Drawing.Size(340, 184);

+            lst_todo.TabIndex = 0;

+            // 

+            // btn_add

+            // 

+            btn_add.Location = new System.Drawing.Point(88, 215);

+            btn_add.Name = "btn_add";

+            btn_add.Size = new System.Drawing.Size(58, 23);

+            btn_add.TabIndex = 2;

+            btn_add.Text = "Add";

+            btn_add.UseVisualStyleBackColor = true;

+            btn_add.Click += btn_add_Click;

+            // 

+            // btn_edit

+            // 

+            btn_edit.Location = new System.Drawing.Point(152, 215);

+            btn_edit.Name = "btn_edit";

+            btn_edit.Size = new System.Drawing.Size(58, 23);

+            btn_edit.TabIndex = 3;

+            btn_edit.Text = "Edit";

+            btn_edit.UseVisualStyleBackColor = true;

+            btn_edit.Click += btn_edit_Click;

+            // 

+            // btn_del

+            // 

+            btn_del.Location = new System.Drawing.Point(216, 215);

+            btn_del.Name = "btn_del";

+            btn_del.Size = new System.Drawing.Size(58, 23);

+            btn_del.TabIndex = 4;

+            btn_del.Text = "Delete";

+            btn_del.UseVisualStyleBackColor = true;

+            btn_del.Click += btn_del_Click;

+            // 

+            // btn_exit

+            // 

+            btn_exit.Location = new System.Drawing.Point(282, 209);

+            btn_exit.Name = "btn_exit";

+            btn_exit.Size = new System.Drawing.Size(50, 35);

+            btn_exit.TabIndex = 5;

+            btn_exit.Text = "Exit";

+            btn_exit.UseVisualStyleBackColor = true;

+            btn_exit.Click += btn_exit_Click;

+            // 

+            // btn_status

+            // 

+            btn_status.Location = new System.Drawing.Point(30, 209);

+            btn_status.Name = "btn_status";

+            btn_status.Size = new System.Drawing.Size(50, 35);

+            btn_status.TabIndex = 1;

+            btn_status.Text = "✔";

+            btn_status.UseVisualStyleBackColor = true;

+            btn_status.Click += btn_status_Click;

+            // 

+            // frm_todo

+            // 

+            AcceptButton = btn_status;

+            AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);

+            AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;

+            CancelButton = btn_exit;

+            ClientSize = new System.Drawing.Size(364, 261);

+            Controls.Add(btn_status);

+            Controls.Add(btn_exit);

+            Controls.Add(btn_del);

+            Controls.Add(btn_edit);

+            Controls.Add(btn_add);

+            Controls.Add(lst_todo);

+            Name = "frm_todo";

+            Text = "To-Do List";

+            Load += frm_todo_Load;

+            ResumeLayout(false);

+        }

+

+        #endregion

+

+        private System.Windows.Forms.ListBox lst_todo;

+        private System.Windows.Forms.Button btn_add;

+        private System.Windows.Forms.Button btn_edit;

+        private System.Windows.Forms.Button btn_del;

+        private System.Windows.Forms.Button btn_exit;

+        private System.Windows.Forms.Button btn_status;

+    }

+}

diff --git a/todo/todo/frm_todo.cs b/todo/todo/frm_todo.cs
new file mode 100644
index 0000000..a021745
--- /dev/null
+++ b/todo/todo/frm_todo.cs
@@ -0,0 +1,107 @@
+using System;

+using System.Collections.Generic;

+using System.ComponentModel;

+using System.Data;

+using System.Drawing;

+using System.Linq;

+using System.Text;

+using System.Threading.Tasks;

+using System.Windows.Forms;

+

+namespace todo

+{

+	public partial class frm_todo : Form

+	{

+		public frm_todo()

+		{

+			InitializeComponent();

+		}

+

+		List<item> todo = new List<item>();

+

+		/* get a user's selected todo item */

+		private int itm()

+		{

+			return lst_todo.SelectedIndex;

+		}

+

+		private bool valid()

+		{

+			/* make sure at least 1 todo item exists */

+			if (todo.Count < 1) {

+				MessageBox.Show("There are currently no todo items",

+					"Selection Error");

+				return false;

+			}

+			/* make sure a todo item is selected */

+			if (lst_todo.SelectedIndex == -1) {

+				MessageBox.Show("Select a todo item from the list",

+					"Selection Error");

+				return false;

+			}

+			return true;

+		}

+

+		/* redisplay the todo items in the listbox */

+		private void refresh()

+		{

+			lst_todo.Items.Clear();

+			foreach (item i in todo)

+				lst_todo.Items.Add(i.txt());

+		}

+

+		/* autoload todo items used for demonstration purposes */

+		private void frm_todo_Load(object sender, EventArgs e)

+		{

+			todo.Add(new item("start working on a todo list program", false));

+			todo.Add(new item("finish the todo list program", true));

+			todo.Add(new item("make a presentation for the todo list program", true));

+			refresh();

+		}

+

+		/* switch the status of the selected todo item */

+		private void btn_status_Click(object sender, EventArgs e)

+		{

+			if (!valid())

+				return;

+			todo[itm()].done();

+			refresh();

+		}

+

+		private void btn_add_Click(object sender, EventArgs e)

+		{

+			/* get a new todo item */

+			frm_item frm = new frm_item();

+			item new_todo = frm.add();

+			/* if a todo item was created then add it to the list */

+			if (new_todo == null)

+				return;

+			todo.Add(new_todo);

+			refresh();

+		}

+

+		private void btn_edit_Click(object sender, EventArgs e)

+		{

+			if (!valid())

+				return;

+			frm_item frm = new frm_item();

+			/* replace the description of a todo item */

+			todo[itm()].desc = frm.edit(todo[itm()].desc);

+			refresh();

+		}

+

+		/* delete the selected todo item */

+		private void btn_del_Click(object sender, EventArgs e)

+		{

+			if (!valid())

+				return;

+			todo.RemoveAt(itm());

+			refresh();

+		}

+

+		private void btn_exit_Click(object sender, EventArgs e)

+		{

+			this.Close();

+		}

+	}

+}

diff --git a/todo/todo/frm_todo.resx b/todo/todo/frm_todo.resx
new file mode 100644
index 0000000..b92c163
--- /dev/null
+++ b/todo/todo/frm_todo.resx
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>

+<root>

+  <!--

+    Microsoft ResX Schema 

+

+    Version 2.0

+

+    The primary goals of this format is to allow a simple XML format

+    that is mostly human readable. The generation and parsing of the

+    various data types are done through the TypeConverter classes

+    associated with the data types.

+

+    Example:

+

+    ... ado.net/XML headers & schema ...

+    <resheader name="resmimetype">text/microsoft-resx</resheader>

+    <resheader name="version">2.0</resheader>

+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>

+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>

+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>

+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>

+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">

+        <value>[base64 mime encoded serialized .NET Framework object]</value>

+    </data>

+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">

+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>

+        <comment>This is a comment</comment>

+    </data>

+

+    There are any number of "resheader" rows that contain simple

+    name/value pairs.

+

+    Each data row contains a name, and value. The row also contains a

+    type or mimetype. Type corresponds to a .NET class that support

+    text/value conversion through the TypeConverter architecture.

+    Classes that don't support this are serialized and stored with the

+    mimetype set.

+

+    The mimetype is used for serialized objects, and tells the

+    ResXResourceReader how to depersist the object. This is currently not

+    extensible. For a given mimetype the value must be set accordingly:

+

+    Note - application/x-microsoft.net.object.binary.base64 is the format

+    that the ResXResourceWriter will generate, however the reader can

+    read any of the formats listed below.

+

+    mimetype: application/x-microsoft.net.object.binary.base64

+    value   : The object must be serialized with

+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter

+            : and then encoded with base64 encoding.

+    

+    mimetype: application/x-microsoft.net.object.soap.base64

+    value   : The object must be serialized with

+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter

+            : and then encoded with base64 encoding.

+

+    mimetype: application/x-microsoft.net.object.bytearray.base64

+    value   : The object must be serialized into a byte array

+            : using a System.ComponentModel.TypeConverter

+            : and then encoded with base64 encoding.

+    -->

+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">

+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />

+    <xsd:element name="root" msdata:IsDataSet="true">

+      <xsd:complexType>

+        <xsd:choice maxOccurs="unbounded">

+          <xsd:element name="metadata">

+            <xsd:complexType>

+              <xsd:sequence>

+                <xsd:element name="value" type="xsd:string" minOccurs="0" />

+              </xsd:sequence>

+              <xsd:attribute name="name" use="required" type="xsd:string" />

+              <xsd:attribute name="type" type="xsd:string" />

+              <xsd:attribute name="mimetype" type="xsd:string" />

+              <xsd:attribute ref="xml:space" />

+            </xsd:complexType>

+          </xsd:element>

+          <xsd:element name="assembly">

+            <xsd:complexType>

+              <xsd:attribute name="alias" type="xsd:string" />

+              <xsd:attribute name="name" type="xsd:string" />

+            </xsd:complexType>

+          </xsd:element>

+          <xsd:element name="data">

+            <xsd:complexType>

+              <xsd:sequence>

+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />

+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />

+              </xsd:sequence>

+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />

+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />

+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />

+              <xsd:attribute ref="xml:space" />

+            </xsd:complexType>

+          </xsd:element>

+          <xsd:element name="resheader">

+            <xsd:complexType>

+              <xsd:sequence>

+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />

+              </xsd:sequence>

+              <xsd:attribute name="name" type="xsd:string" use="required" />

+            </xsd:complexType>

+          </xsd:element>

+        </xsd:choice>

+      </xsd:complexType>

+    </xsd:element>

+  </xsd:schema>

+  <resheader name="resmimetype">

+    <value>text/microsoft-resx</value>

+  </resheader>

+  <resheader name="version">

+    <value>2.0</value>

+  </resheader>

+  <resheader name="reader">

+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>

+  </resheader>

+  <resheader name="writer">

+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>

+  </resheader>

+</root>
\ No newline at end of file
diff --git a/todo/todo/item.cs b/todo/todo/item.cs
new file mode 100644
index 0000000..3dc8d2f
--- /dev/null
+++ b/todo/todo/item.cs
@@ -0,0 +1,33 @@
+using System;

+using System.Collections.Generic;

+using System.Text;

+

+namespace todo

+{

+	public class item

+	{

+		public string desc{get; set;}

+		public bool todo{get; set;}

+

+		public item(string arg_desc = "", bool arg_todo = true) =>

+			(this.desc, this.todo) = (arg_desc, arg_todo);

+

+		/* return a todo item description prefixed by its status */

+		public string txt()

+		{

+			if (todo)

+				return ("TODO: " + desc);

+			else

+				return ("DONE: " + desc);

+		}

+

+		/* switch the status of a todo item */

+		public void done()

+		{

+			if (todo)

+				todo = false;

+			else

+				todo = true;

+		}

+	}

+}

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs b/todo/todo/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs
new file mode 100644
index 0000000..3364fdf
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+// <autogenerated />

+using System;

+using System.Reflection;

+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v3.1", FrameworkDisplayName = ".NET Core 3.1")]

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/apphost.exe b/todo/todo/obj/Debug/netcoreapp3.1/apphost.exe
new file mode 100644
index 0000000..e40c18e
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/apphost.exe
Binary files differdiff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfo.cs b/todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfo.cs
new file mode 100644
index 0000000..8fe2ecc
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------

+// <auto-generated>

+//     This code was generated by a tool.

+//     Runtime Version:4.0.30319.42000

+//

+//     Changes to this file may cause incorrect behavior and will be lost if

+//     the code is regenerated.

+// </auto-generated>

+//------------------------------------------------------------------------------

+

+using System;

+using System.Reflection;

+

+[assembly: System.Reflection.AssemblyCompanyAttribute("todo")]

+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]

+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]

+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]

+[assembly: System.Reflection.AssemblyProductAttribute("todo")]

+[assembly: System.Reflection.AssemblyTitleAttribute("todo")]

+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

+

+// Generated by the MSBuild WriteCodeFragment class.

+

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfoInputs.cache b/todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..fa0f868
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+6aedecf2b542af5540daa37b101b6e81a6e661d0efa1065ffa4b2b84ce07afaf

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.GeneratedMSBuildEditorConfig.editorconfig b/todo/todo/obj/Debug/netcoreapp3.1/todo.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..16477fa
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,11 @@
+is_global = true

+build_property.ApplicationManifest = 

+build_property.StartupObject = 

+build_property.ApplicationDefaultFont = 

+build_property.ApplicationHighDpiMode = 

+build_property.ApplicationUseCompatibleTextRendering = 

+build_property.ApplicationVisualStyles = 

+build_property.RootNamespace = todo

+build_property.ProjectDir = C:\Users\User\Documents\cs\todo\todo\

+build_property.EnableComHosting = 

+build_property.EnableGeneratedComInterfaceComImportInterop = 

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.assets.cache b/todo/todo/obj/Debug/netcoreapp3.1/todo.assets.cache
new file mode 100644
index 0000000..8980a17
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.assets.cache
Binary files differdiff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.BuildWithSkipAnalyzers b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.BuildWithSkipAnalyzers
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.BuildWithSkipAnalyzers
diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.CoreCompileInputs.cache b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..adde3a1
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+2f344aea34ca42ed0cc7c52795c5ebff44794ddd0946363b589359cc1bdaa495

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.FileListAbsolute.txt b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..d3f0e51
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.FileListAbsolute.txt
@@ -0,0 +1,16 @@
+C:\Users\User\Documents\cs\todo\todo\bin\Debug\netcoreapp3.1\todo.exe

+C:\Users\User\Documents\cs\todo\todo\bin\Debug\netcoreapp3.1\todo.deps.json

+C:\Users\User\Documents\cs\todo\todo\bin\Debug\netcoreapp3.1\todo.runtimeconfig.json

+C:\Users\User\Documents\cs\todo\todo\bin\Debug\netcoreapp3.1\todo.runtimeconfig.dev.json

+C:\Users\User\Documents\cs\todo\todo\bin\Debug\netcoreapp3.1\todo.dll

+C:\Users\User\Documents\cs\todo\todo\bin\Debug\netcoreapp3.1\todo.pdb

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.frm_item.resources

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.frm_todo.resources

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.csproj.GenerateResource.cache

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.GeneratedMSBuildEditorConfig.editorconfig

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.AssemblyInfoInputs.cache

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.AssemblyInfo.cs

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.csproj.CoreCompileInputs.cache

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.dll

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.pdb

+C:\Users\User\Documents\cs\todo\todo\obj\Debug\netcoreapp3.1\todo.genruntimeconfig.cache

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.GenerateResource.cache b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.GenerateResource.cache
new file mode 100644
index 0000000..98d2b58
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.csproj.GenerateResource.cache
Binary files differdiff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.designer.deps.json b/todo/todo/obj/Debug/netcoreapp3.1/todo.designer.deps.json
new file mode 100644
index 0000000..9bb9f82
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.designer.deps.json
@@ -0,0 +1,11 @@
+{

+  "runtimeTarget": {

+    "name": ".NETCoreApp,Version=v3.1",

+    "signature": ""

+  },

+  "compilationOptions": {},

+  "targets": {

+    ".NETCoreApp,Version=v3.1": {}

+  },

+  "libraries": {}

+}
\ No newline at end of file
diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.designer.runtimeconfig.json b/todo/todo/obj/Debug/netcoreapp3.1/todo.designer.runtimeconfig.json
new file mode 100644
index 0000000..fdc9c5f
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.designer.runtimeconfig.json
@@ -0,0 +1,16 @@
+{

+  "runtimeOptions": {

+    "tfm": "netcoreapp3.1",

+    "framework": {

+      "name": "Microsoft.WindowsDesktop.App",

+      "version": "3.1.0"

+    },

+    "additionalProbingPaths": [

+      "C:\\Users\\User\\.dotnet\\store\\|arch|\\|tfm|",

+      "C:\\Users\\User\\.nuget\\packages"

+    ],

+    "configProperties": {

+      "Microsoft.NETCore.DotNetHostPolicy.SetAppPaths": true

+    }

+  }

+}
\ No newline at end of file
diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.dll b/todo/todo/obj/Debug/netcoreapp3.1/todo.dll
new file mode 100644
index 0000000..75501ea
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.dll
Binary files differdiff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.frm_item.resources b/todo/todo/obj/Debug/netcoreapp3.1/todo.frm_item.resources
new file mode 100644
index 0000000..6c05a97
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.frm_item.resources
Binary files differdiff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.frm_todo.resources b/todo/todo/obj/Debug/netcoreapp3.1/todo.frm_todo.resources
new file mode 100644
index 0000000..6c05a97
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.frm_todo.resources
Binary files differdiff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.genruntimeconfig.cache b/todo/todo/obj/Debug/netcoreapp3.1/todo.genruntimeconfig.cache
new file mode 100644
index 0000000..0536fce
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.genruntimeconfig.cache
@@ -0,0 +1 @@
+76f4865df6b4b3ec14668714d9c3deae09463f30cc7626378c8a95917110424c

diff --git a/todo/todo/obj/Debug/netcoreapp3.1/todo.pdb b/todo/todo/obj/Debug/netcoreapp3.1/todo.pdb
new file mode 100644
index 0000000..2832ce8
--- /dev/null
+++ b/todo/todo/obj/Debug/netcoreapp3.1/todo.pdb
Binary files differdiff --git a/todo/todo/obj/project.assets.json b/todo/todo/obj/project.assets.json
new file mode 100644
index 0000000..1440475
--- /dev/null
+++ b/todo/todo/obj/project.assets.json
@@ -0,0 +1,71 @@
+{

+  "version": 3,

+  "targets": {

+    ".NETCoreApp,Version=v3.1": {}

+  },

+  "libraries": {},

+  "projectFileDependencyGroups": {

+    ".NETCoreApp,Version=v3.1": []

+  },

+  "packageFolders": {

+    "C:\\Users\\User\\.nuget\\packages\\": {}

+  },

+  "project": {

+    "version": "1.0.0",

+    "restore": {

+      "projectUniqueName": "C:\\Users\\User\\Documents\\cs\\todo\\todo\\todo.csproj",

+      "projectName": "todo",

+      "projectPath": "C:\\Users\\User\\Documents\\cs\\todo\\todo\\todo.csproj",

+      "packagesPath": "C:\\Users\\User\\.nuget\\packages\\",

+      "outputPath": "C:\\Users\\User\\Documents\\cs\\todo\\todo\\obj\\",

+      "projectStyle": "PackageReference",

+      "configFilePaths": [

+        "C:\\Users\\User\\AppData\\Roaming\\NuGet\\NuGet.Config",

+        "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"

+      ],

+      "originalTargetFrameworks": [

+        "netcoreapp3.1"

+      ],

+      "sources": {

+        "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},

+        "https://api.nuget.org/v3/index.json": {}

+      },

+      "frameworks": {

+        "netcoreapp3.1": {

+          "targetAlias": "netcoreapp3.1",

+          "projectReferences": {}

+        }

+      },

+      "warningProperties": {

+        "warnAsError": [

+          "NU1605"

+        ]

+      }

+    },

+    "frameworks": {

+      "netcoreapp3.1": {

+        "targetAlias": "netcoreapp3.1",

+        "imports": [

+          "net461",

+          "net462",

+          "net47",

+          "net471",

+          "net472",

+          "net48",

+          "net481"

+        ],

+        "assetTargetFallback": true,

+        "warn": true,

+        "frameworkReferences": {

+          "Microsoft.NETCore.App": {

+            "privateAssets": "all"

+          },

+          "Microsoft.WindowsDesktop.App.WindowsForms": {

+            "privateAssets": "none"

+          }

+        },

+        "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.100\\RuntimeIdentifierGraph.json"

+      }

+    }

+  }

+}
\ No newline at end of file
diff --git a/todo/todo/obj/project.nuget.cache b/todo/todo/obj/project.nuget.cache
new file mode 100644
index 0000000..7a29fcb
--- /dev/null
+++ b/todo/todo/obj/project.nuget.cache
@@ -0,0 +1,8 @@
+{

+  "version": 2,

+  "dgSpecHash": "7xS5xJJdsOwMSAGD0bF37QkoUPOEob9IB+0G/yR6U2ygqwwAt/92kO3jdVhJoonvEe9z8fkYDzWuZftgkTJfYg==",

+  "success": true,

+  "projectFilePath": "C:\\Users\\User\\Documents\\cs\\todo\\todo\\todo.csproj",

+  "expectedPackageFiles": [],

+  "logs": []

+}
\ No newline at end of file
diff --git a/todo/todo/obj/todo.csproj.nuget.dgspec.json b/todo/todo/obj/todo.csproj.nuget.dgspec.json
new file mode 100644
index 0000000..852dd5a
--- /dev/null
+++ b/todo/todo/obj/todo.csproj.nuget.dgspec.json
@@ -0,0 +1,66 @@
+{

+  "format": 1,

+  "restore": {

+    "C:\\Users\\User\\Documents\\cs\\todo\\todo\\todo.csproj": {}

+  },

+  "projects": {

+    "C:\\Users\\User\\Documents\\cs\\todo\\todo\\todo.csproj": {

+      "version": "1.0.0",

+      "restore": {

+        "projectUniqueName": "C:\\Users\\User\\Documents\\cs\\todo\\todo\\todo.csproj",

+        "projectName": "todo",

+        "projectPath": "C:\\Users\\User\\Documents\\cs\\todo\\todo\\todo.csproj",

+        "packagesPath": "C:\\Users\\User\\.nuget\\packages\\",

+        "outputPath": "C:\\Users\\User\\Documents\\cs\\todo\\todo\\obj\\",

+        "projectStyle": "PackageReference",

+        "configFilePaths": [

+          "C:\\Users\\User\\AppData\\Roaming\\NuGet\\NuGet.Config",

+          "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"

+        ],

+        "originalTargetFrameworks": [

+          "netcoreapp3.1"

+        ],

+        "sources": {

+          "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},

+          "https://api.nuget.org/v3/index.json": {}

+        },

+        "frameworks": {

+          "netcoreapp3.1": {

+            "targetAlias": "netcoreapp3.1",

+            "projectReferences": {}

+          }

+        },

+        "warningProperties": {

+          "warnAsError": [

+            "NU1605"

+          ]

+        }

+      },

+      "frameworks": {

+        "netcoreapp3.1": {

+          "targetAlias": "netcoreapp3.1",

+          "imports": [

+            "net461",

+            "net462",

+            "net47",

+            "net471",

+            "net472",

+            "net48",

+            "net481"

+          ],

+          "assetTargetFallback": true,

+          "warn": true,

+          "frameworkReferences": {

+            "Microsoft.NETCore.App": {

+              "privateAssets": "all"

+            },

+            "Microsoft.WindowsDesktop.App.WindowsForms": {

+              "privateAssets": "none"

+            }

+          },

+          "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.100\\RuntimeIdentifierGraph.json"

+        }

+      }

+    }

+  }

+}
\ No newline at end of file
diff --git a/todo/todo/obj/todo.csproj.nuget.g.props b/todo/todo/obj/todo.csproj.nuget.g.props
new file mode 100644
index 0000000..af28506
--- /dev/null
+++ b/todo/todo/obj/todo.csproj.nuget.g.props
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>

+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

+  <PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">

+    <RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>

+    <RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>

+    <ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>

+    <NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>

+    <NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\User\.nuget\packages\</NuGetPackageFolders>

+    <NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>

+    <NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.8.0</NuGetToolVersion>

+  </PropertyGroup>

+  <ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">

+    <SourceRoot Include="C:\Users\User\.nuget\packages\" />

+  </ItemGroup>

+</Project>
\ No newline at end of file
diff --git a/todo/todo/obj/todo.csproj.nuget.g.targets b/todo/todo/obj/todo.csproj.nuget.g.targets
new file mode 100644
index 0000000..35a7576
--- /dev/null
+++ b/todo/todo/obj/todo.csproj.nuget.g.targets
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>

+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
diff --git a/todo/todo/todo.csproj b/todo/todo/todo.csproj
new file mode 100644
index 0000000..7b05c62
--- /dev/null
+++ b/todo/todo/todo.csproj
@@ -0,0 +1,9 @@
+<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">

+

+  <PropertyGroup>

+    <OutputType>WinExe</OutputType>

+    <TargetFramework>netcoreapp3.1</TargetFramework>

+    <UseWindowsForms>true</UseWindowsForms>

+  </PropertyGroup>

+

+</Project>
\ No newline at end of file
diff --git a/todo/todo/todo.csproj.user b/todo/todo/todo.csproj.user
new file mode 100644
index 0000000..9f456c4
--- /dev/null
+++ b/todo/todo/todo.csproj.user
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>

+<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

+  <ItemGroup>

+    <Compile Update="frm_item.cs">

+      <SubType>Form</SubType>

+    </Compile>

+    <Compile Update="frm_todo.cs">

+      <SubType>Form</SubType>

+    </Compile>

+  </ItemGroup>

+</Project>
\ No newline at end of file