commit 204d3ac40e2b0c24cad417d8a9d09dba1915b5f6
parent 3315977dc1e69666eb1b3acf50d74d5f8ea2bdd9
Author: René Wagner <rwagner@rw-net.de>
Date: Thu, 17 Sep 2020 19:18:25 +0200
new icon when in pause mode
Diffstat:
19 files changed, 270 insertions(+), 217 deletions(-)
diff --git a/WorkTimeHero/AboutBox.resx b/WorkTimeHero/AboutBox.resx
@@ -607,6 +607,8 @@ Kleines Windows-Tool zum Erfassen der täglichen Arbeitszeit.
https://git.sr.ht/~rwa/worktimehero
+Icons von famfamfam: http://famfamfam.com
+
## Funktionen
- Startet Zeiterfassung automatisch beim Programmstart
- versteckt sich im Systemtray mit einem kleinen Icon
diff --git a/WorkTimeHero/MainForm.Designer.cs b/WorkTimeHero/MainForm.Designer.cs
@@ -163,6 +163,7 @@
//
// ntiWorkTimeHero
//
+ this.ntiWorkTimeHero.BalloonTipIcon = System.Windows.Forms.ToolTipIcon.Info;
this.ntiWorkTimeHero.ContextMenuStrip = this.cmsNotifyIcon;
this.ntiWorkTimeHero.Icon = ((System.Drawing.Icon)(resources.GetObject("ntiWorkTimeHero.Icon")));
this.ntiWorkTimeHero.Text = "WorkTimeHero";
@@ -328,9 +329,11 @@
this.Controls.Add(this.dtpIndividualBreak);
this.Controls.Add(this.dtpStartTime);
this.Controls.Add(this.lblStartTime);
+ this.DoubleBuffered = true;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
+ this.MinimizeBox = false;
this.Name = "MainForm";
this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
this.Text = "WorkTimeHero";
diff --git a/WorkTimeHero/MainForm.cs b/WorkTimeHero/MainForm.cs
@@ -9,6 +9,7 @@ using WorkTimeHero.Properties;
using IWshRuntimeLibrary;
using System.IO;
using File = System.IO.File;
+using System.Diagnostics;
namespace WorkTimeHero
{
@@ -112,27 +113,33 @@ namespace WorkTimeHero
private void RefreshIcons()
{
- Icon newIcon = Resources.clock;
+ Icon newIcon = Resources.clock_play_icon;
ToolTipIcon newToolTipIcon = ToolTipIcon.Info;
- if (wtc.WorkTimePercentage > 25)
- {
- newIcon = Resources.clock_15;
- }
- if (wtc.WorkTimePercentage > 75)
- {
- newIcon = Resources.clock_45;
- }
- if (wtc.RemainingWorkTime.TotalMinutes <= 0)
+ if (wtc.IsInBreak)
{
- newIcon = Resources.clock_error;
- newToolTipIcon = ToolTipIcon.Warning;
+ newIcon = Resources.clock_pause_icon;
}
- if (wtc.DoneWorkTime.TotalMinutes >= 615)
+ else
{
- newIcon = Resources.clock_red;
- newToolTipIcon = ToolTipIcon.Error;
+ //if (wtc.WorkTimePercentage > 25)
+ //{
+ // newIcon = Resources.clock_15;
+ //}
+ if (wtc.WorkTimePercentage > 50)
+ {
+ newIcon = Resources.clock_go_icon;
+ }
+ if (wtc.RemainingWorkTime.TotalMinutes <= 0)
+ {
+ newIcon = Resources.clock_error_icon;
+ newToolTipIcon = ToolTipIcon.Warning;
+ }
+ if (wtc.DoneWorkTime.TotalMinutes >= 600)
+ {
+ newIcon = Resources.clock_red_icon;
+ newToolTipIcon = ToolTipIcon.Error;
+ }
}
-
ntiWorkTimeHero.Icon = newIcon;
Icon = newIcon;
ntiWorkTimeHero.BalloonTipIcon = newToolTipIcon;
diff --git a/WorkTimeHero/MainForm.resx b/WorkTimeHero/MainForm.resx
@@ -130,49 +130,49 @@
<data name="ntiWorkTimeHero.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
- /wD///8AAAAAAAAAADMAAAAyAAAAEAAAABkAAAAxAAAAMwAAADMAAAAzAAAAMQAAABkAAAAQAAAAMgAA
- ADMAAAAA////AAAAAABFou//QKTz/CZ8snSXLEOWrTta+Kw8Xf+sO13/rDxd/607WviXLEOWJnyydECk
- 8/xFou//AAAAAP///wAAAAAARKz2+4bo//+gSm3/tkFY/7hVXv+5Wl//uVpf/7laX/+4VV7/tkFY/6BK
- bf+E5v//RKz2+wAAAAD///8AAAAAADKe02KhTG7/uUhX/8BdYf/TcnP/4Hx9/+B8ff/gfH3/03Jz/8Bd
- Yf+5SFf/oUxu/zKe02IAAAAA////AAAAAACZMkOVukpc/8Zpbv/fe3z/4s/P/+n///+Zraz/6P///+LO
- zv/fe3v/xmlu/7pKXP+ZMkOVAAAAAP///wAAAAAAsENY+MZvev/bfX//383O/9/////i////4v///97/
- ///d////3szO/9t9f//Gb3r/sENY+AAAAAD///8AAAAAALBFWf/TiZP/54GA/9X////a////VElH/7bO
- 0P/Z/f//1fz//9X////ngYD/04mT/7BFWf8AAAAA////AAAAAACxR1f/25ij/+qCgf+Am5z/1P///7XR
- 1P9aUE7/rsbJ/8/5/v9+mJr/6YKB/9uYo/+xR1f/AAAAAP///wAAAAAAtUVS/+Wos//tg4P/xP///6rM
- 0P9eVFH/rcnN/8j1/P/E8/n/wfz//+yDgv/lqLP/tUVS/wAAAAD///8AAAAAIrRKVf/loa3/7ZSX/9LJ
- zf9aV1T/pMjP/8H2//+88Pj/t/H6/83Dxv/sk5b/5aGt/7RKVf8AAAAi////ADyc47p+eaL/zmtx//a+
- y//xiYr/zsXM/7D2//9lhYr/rfL8/8q/xf/vhob/9b3K/85rcf9+eaL/PJzjuv///wBIr/T/UcX//6tb
- Zf/cjJP//s3a//Wgo//yhoT/9IaE//KGg//1n6L//cza/9yLk/+rW2X/UcX//0iv9P////8ATbHy+mfX
- /f9o1/v/r2Fl/9N0ef/4yNb//+f5///n+f//5/n/+MjW/9N0ef+vYWX/aNf7/2fX/f9NsfL6////AFC4
- 9Fxaxvf/efH//3r///+Fjqf/sVZY/7ZRUP+1UlH/tlFQ/7FWWP+Fjqf/ev///3nx//9axvf/ULj0XP//
- /wAAAAAAUbz1XFG89fpOwPv/Rcn/qQAAAAAAAAAAAAAAAAAAAAAAAAAARcn/qU7A+/9RvPX6Ubz1XAAA
- AAD///8A//8AAIADAACAAwAAgAMAAIADAACAAwAAgAMAAIADAACAAwAAgAMAAAABAAAAAQAAAAEAAAAB
- AAAAAQAAh8MAAA==
+ AAD///8AoqKiDKKiotiioqL5oqKiK////wD///8A////AP///wD///8AO4hC7kOQSv8zejj/hpeI66Ki
+ ohj///8A////ALS0tBW0tLTz29vb/7Ozsu18Wi+Be1gswHtYLO17WCzte1gswEWRSvd4yoH/YLFo/zN7
+ OP9ail5S////AP///wD///8AxsbGQdPT0//Cv738nGs7/6ZsNf+ubzf/rm83/6ZsNf9Rm1L/f86J/37P
+ iP9ismr/NH46+i52Mzb///8A////AIxlNmejiGn1r3hE/7uMXv/Ck3H/xJF0/8OPcf+/kGz/WaZc/4bS
+ kP9uynr/gtGL/2S0bf81gDz3////AJZtOzSWbTvVs31G/8KZcf/Yqon/79/P//r28//69fP/79/R/2Gx
+ Zf+M1Zf/ds+D/4jUkv9runT/PYtE/////wChdUGAsIBK/8abb//Zqoj///7r///67v///fL///7y///8
+ 7/9qv3P/ktme/5LZnf93xYH/Waph/0WWTTb///8ArH5IwL+PWP/No4H/8NvB///35v/68uP/xcC2//Ht
+ 3v///Oj/bsV3/5fco/+Bzo3/ZLlu/5SJTc3///8A////ALeHTu3JnGb/z5+A//rz4v/99un/8vDj/42M
+ hP+Bf3f/0s/C/3LKfP9mw3H/Yr5t/7KiZv+3h07t////AP///wDCkFTtzqZx/9Glif/69un//fju////
+ +f+BgHn/sa6k/4F/d//Jxrr/2+e//8mWcv/OpnH/wpBU7f///wD///8AzZlbwNOsdf/Zt5j/8ePW//77
+ 9f/19fP/n56V//Dw6f/4+PL/vrmt//Dawv/Sqof/06x1/82ZW8D///8A////ALOddIvTrXf/38Sa/969
+ qv//////8PDu/+fl2v////f////3///+8//ctJj/28CW/8Kqfv/Gn2qF////AACZ3T0KmtjZLpzF9d6/
+ iv/iyaf/37+u//Hj3P/z8ez/9PHr//Hi2f/cuqP/38Oe/4yxqf84ptH4DprWzgCZ3ScAoON9fNHy7WHD
+ 6O86pMb74seS/+bRqf/gwqb/1a6W/9Wrkv/evaD/5M+m/7/Bnv9Hstf9q+P2/Cmw6NkAoOMnAKfpe13J
+ 8eW16Pn/Ycfr7zqqzPPsxIj/6cuU/+fQnf/n0J3/6cuU/97Cjv8yqtD1gdPw9XPQ8+oAp+nNAKfpBQCu
+ 7wUAru+KW8v05L/s+v9cy/HpTbLJxPq8dMD6vHTt+rx07fq8dMBRssjCac/y7HzW9u0Aru/JAK7vHf//
+ /wD///8AALX0AgC19IAAtfTRALX0ygC19Af///8A////AP///wD///8AALX0FwC19NEAtfTJALX0J///
+ /wD///8Ah8EAAIABAADAAAAAwAAAAIAAAACAAAAAgAEAAIABAACAAQAAgAEAAIABAAAAAAAAAAAAAAAA
+ AAAAAQAAg8MAAA==
</value>
</data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAA
- AAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
- /wD///8AAAAAAAAAADMAAAAyAAAAEAAAABkAAAAxAAAAMwAAADMAAAAzAAAAMQAAABkAAAAQAAAAMgAA
- ADMAAAAA////AAAAAABFou//QKTz/CZ8snSXLEOWrTta+Kw8Xf+sO13/rDxd/607WviXLEOWJnyydECk
- 8/xFou//AAAAAP///wAAAAAARKz2+4bo//+gSm3/tkFY/7hVXv+5Wl//uVpf/7laX/+4VV7/tkFY/6BK
- bf+E5v//RKz2+wAAAAD///8AAAAAADKe02KhTG7/uUhX/8BdYf/TcnP/4Hx9/+B8ff/gfH3/03Jz/8Bd
- Yf+5SFf/oUxu/zKe02IAAAAA////AAAAAACZMkOVukpc/8Zpbv/fe3z/4s/P/+n///+Zraz/6P///+LO
- zv/fe3v/xmlu/7pKXP+ZMkOVAAAAAP///wAAAAAAsENY+MZvev/bfX//383O/9/////i////4v///97/
- ///d////3szO/9t9f//Gb3r/sENY+AAAAAD///8AAAAAALBFWf/TiZP/54GA/9X////a////VElH/7bO
- 0P/Z/f//1fz//9X////ngYD/04mT/7BFWf8AAAAA////AAAAAACxR1f/25ij/+qCgf+Am5z/1P///7XR
- 1P9aUE7/rsbJ/8/5/v9+mJr/6YKB/9uYo/+xR1f/AAAAAP///wAAAAAAtUVS/+Wos//tg4P/xP///6rM
- 0P9eVFH/rcnN/8j1/P/E8/n/wfz//+yDgv/lqLP/tUVS/wAAAAD///8AAAAAIrRKVf/loa3/7ZSX/9LJ
- zf9aV1T/pMjP/8H2//+88Pj/t/H6/83Dxv/sk5b/5aGt/7RKVf8AAAAi////ADyc47p+eaL/zmtx//a+
- y//xiYr/zsXM/7D2//9lhYr/rfL8/8q/xf/vhob/9b3K/85rcf9+eaL/PJzjuv///wBIr/T/UcX//6tb
- Zf/cjJP//s3a//Wgo//yhoT/9IaE//KGg//1n6L//cza/9yLk/+rW2X/UcX//0iv9P////8ATbHy+mfX
- /f9o1/v/r2Fl/9N0ef/4yNb//+f5///n+f//5/n/+MjW/9N0ef+vYWX/aNf7/2fX/f9NsfL6////AFC4
- 9Fxaxvf/efH//3r///+Fjqf/sVZY/7ZRUP+1UlH/tlFQ/7FWWP+Fjqf/ev///3nx//9axvf/ULj0XP//
- /wAAAAAAUbz1XFG89fpOwPv/Rcn/qQAAAAAAAAAAAAAAAAAAAAAAAAAARcn/qU7A+/9RvPX6Ubz1XAAA
- AAD///8A//8AAIADAACAAwAAgAMAAIADAACAAwAAgAMAAIADAACAAwAAgAMAAAABAAAAAQAAAAEAAAAB
- AAAAAQAAh8MAAA==
+ AAD///8AoqKiDKKiotiioqL5oqKiK////wD///8A////AP///wD///8A////AKKioiCioqLwoqKi5aKi
+ ohj///8A////ALS0tBW0tLTz29vb/7Ozsu18Wi+Be1gswHtYLO17WCzte1gswHtYLICzs7Ly2dnZ/7S0
+ tPu0tLQj////AP///wD///8AxsbGQdPT0//Cv738nGs7/6ZsNf+ubzf/rm83/6ZsNf+hdkr/xcTD/sbG
+ xf7GxsY+////AP///wD///8A////AIxlNmejiGn1r3hE/7uMXv/Ck3H/xJF0/8OPcf+/kGz/uIpd/7SG
+ Wf+hhWT1jGU2Z////wD///8A////AJZtOzSWbTvVs31G/8KZcf/Yqon/79/P//r28//69fP/79/R/9en
+ hf++lGz/s31G/5ZtO9WWbTs0////AP///wChdUGAsIBK/8abb//Zqoj///7r///67v///fL///7y///8
+ 7////ev/2aN6/8KZbP+wgEr/oXVBgP///wD///8ArH5IwL+PWP/No4H/8NvB///35v/68uP/xcC2//Ht
+ 3v///Oj///Xf/+/Ur//ImXL/v49Y/6x+SMD///8A////ALeHTu3JnGb/z5+A//rz4v/99un/8vDj/42M
+ hP+Bf3f/0s/C///76//67Mz/x5Bt/8mcZv+3h07t////AP///wDCkFTtzqZx/9Glif/69un//fju////
+ +f+BgHn/sa6k/4F/d//Jxrr/+vDT/8mWcv/OpnH/wpBU7f///wD///8AzZlbwNOsdf/Zt5j/8ePW//77
+ 9f/19fP/n56V//Dw6f/4+PL/vrmt//Dawv/Sqof/06x1/82ZW8D///8A////ALOddIvTrXf/38Sa/969
+ qv//////8PDu/+fl2v////f////3///+8//ctJj/28CW/8Kqfv/Gn2qF////AACZ3T0KmtjZLpzF9d6/
+ iv/iyaf/37+u//Hj3P/z8ez/9PHr//Hi2f/cuqP/38Oe/4yxqf84ptH4DprWzgCZ3ScAoON9fNHy7WHD
+ 6O86pMb74seS/+bRqf/gwqb/1a6W/9Wrkv/evaD/5M+m/7/Bnv9Hstf9q+P2/Cmw6NkAoOMnAKfpe13J
+ 8eW16Pn/Ycfr7zqqzPPsxIj/6cuU/+fQnf/n0J3/6cuU/97Cjv8yqtD1gdPw9XPQ8+oAp+nNAKfpBQCu
+ 7wUAru+KW8v05L/s+v9cy/HpTbLJxPq8dMD6vHTt+rx07fq8dMBRssjCac/y7HzW9u0Aru/JAK7vHf//
+ /wD///8AALX0AgC19IAAtfTRALX0ygC19Af///8A////AP///wD///8AALX0FwC19NEAtfTJALX0J///
+ /wD///8Ah+EAAIABAADAAwAAwAMAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAAAAAAAAAAAAAAA
+ AAAAAQAAg8MAAA==
</value>
</data>
</root>
\ No newline at end of file
diff --git a/WorkTimeHero/Properties/Resources.Designer.cs b/WorkTimeHero/Properties/Resources.Designer.cs
@@ -22,7 +22,7 @@ namespace WorkTimeHero.Properties {
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources {
+ public class Resources {
private static global::System.Resources.ResourceManager resourceMan;
@@ -36,7 +36,7 @@ namespace WorkTimeHero.Properties {
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager {
+ public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WorkTimeHero.Properties.Resources", typeof(Resources).Assembly);
@@ -51,7 +51,7 @@ namespace WorkTimeHero.Properties {
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture {
+ public static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
@@ -63,9 +63,9 @@ namespace WorkTimeHero.Properties {
/// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
- internal static System.Drawing.Icon clock {
+ public static System.Drawing.Icon clock_error_icon {
get {
- object obj = ResourceManager.GetObject("clock", resourceCulture);
+ object obj = ResourceManager.GetObject("clock_error_icon", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
@@ -73,9 +73,9 @@ namespace WorkTimeHero.Properties {
/// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
- internal static System.Drawing.Icon clock_15 {
+ public static System.Drawing.Icon clock_go_icon {
get {
- object obj = ResourceManager.GetObject("clock_15", resourceCulture);
+ object obj = ResourceManager.GetObject("clock_go_icon", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
@@ -83,9 +83,9 @@ namespace WorkTimeHero.Properties {
/// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
- internal static System.Drawing.Icon clock_45 {
+ public static System.Drawing.Icon clock_icon {
get {
- object obj = ResourceManager.GetObject("clock_45", resourceCulture);
+ object obj = ResourceManager.GetObject("clock_icon", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
@@ -93,9 +93,9 @@ namespace WorkTimeHero.Properties {
/// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
- internal static System.Drawing.Icon clock_error {
+ public static System.Drawing.Icon clock_pause_icon {
get {
- object obj = ResourceManager.GetObject("clock_error", resourceCulture);
+ object obj = ResourceManager.GetObject("clock_pause_icon", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
@@ -103,9 +103,29 @@ namespace WorkTimeHero.Properties {
/// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
- internal static System.Drawing.Icon clock_red {
+ public static System.Drawing.Icon clock_play_icon {
get {
- object obj = ResourceManager.GetObject("clock_red", resourceCulture);
+ object obj = ResourceManager.GetObject("clock_play_icon", resourceCulture);
+ return ((System.Drawing.Icon)(obj));
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
+ /// </summary>
+ public static System.Drawing.Icon clock_red_icon {
+ get {
+ object obj = ResourceManager.GetObject("clock_red_icon", resourceCulture);
+ return ((System.Drawing.Icon)(obj));
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
+ /// </summary>
+ public static System.Drawing.Icon clock_stop_icon {
+ get {
+ object obj = ResourceManager.GetObject("clock_stop_icon", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
diff --git a/WorkTimeHero/Properties/Resources.resx b/WorkTimeHero/Properties/Resources.resx
@@ -1,136 +1,142 @@
-<?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>
- <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="clock" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\clock.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="clock_15" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\clock_15.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="clock_45" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\clock_45.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="clock_error" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\clock_error.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="clock_red" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\clock_red.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
+<?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>
+ <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <data name="clock_error_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\clock-error-icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="clock_go_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\clock-go-icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="clock_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\clock-icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="clock_pause_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\clock-pause-icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="clock_play_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\clock-play-icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="clock_red_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\clock-red-icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="clock_stop_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\clock-stop-icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
</root>
\ No newline at end of file
diff --git a/WorkTimeHero/WorkTimeHero.csproj b/WorkTimeHero/WorkTimeHero.csproj
@@ -43,7 +43,8 @@
<AssemblyOriginatorKeyFile>..\sgKey.snk</AssemblyOriginatorKeyFile>
</PropertyGroup>
<PropertyGroup>
- <ApplicationIcon>clock.ico</ApplicationIcon>
+ <ApplicationIcon>
+ </ApplicationIcon>
</PropertyGroup>
<PropertyGroup>
<StartupObject>WorkTimeHero.Program</StartupObject>
@@ -73,6 +74,11 @@
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="Properties\Resources.Designer.cs">
+ <AutoGen>True</AutoGen>
+ <DesignTime>True</DesignTime>
+ <DependentUpon>Resources.resx</DependentUpon>
+ </Compile>
<Compile Include="Settings.cs" />
<Compile Include="WorkTimeCalculator.cs" />
<EmbeddedResource Include="AboutBox.resx">
@@ -82,15 +88,10 @@
<DependentUpon>MainForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
- <Generator>ResXFileCodeGenerator</Generator>
- <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+ <Generator>PublicResXFileCodeGenerator</Generator>
<SubType>Designer</SubType>
+ <LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
- <Compile Include="Properties\Resources.Designer.cs">
- <AutoGen>True</AutoGen>
- <DependentUpon>Resources.resx</DependentUpon>
- <DesignTime>True</DesignTime>
- </Compile>
<None Include="..\..\StrongName.snk">
<Link>StrongName.snk</Link>
</None>
@@ -111,13 +112,6 @@
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
- <Content Include="clock.ico" />
- <Content Include="clock_15.ico" />
- <Content Include="clock_45.ico" />
- <Content Include="clock_error.ico" />
- <Content Include="clock_red.ico" />
- </ItemGroup>
- <ItemGroup>
<COMReference Include="IWshRuntimeLibrary">
<Guid>{F935DC20-1CF0-11D0-ADB9-00C04FD58A0B}</Guid>
<VersionMajor>1</VersionMajor>
@@ -128,6 +122,27 @@
<EmbedInteropTypes>True</EmbedInteropTypes>
</COMReference>
</ItemGroup>
+ <ItemGroup>
+ <None Include="clock-pause-icon.ico" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="clock-icon.ico" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="clock-go-icon.ico" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="clock-red-icon.ico" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="clock-error-icon.ico" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="clock-play-icon.ico" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="clock-stop-icon.ico" />
+ </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
diff --git a/WorkTimeHero/clock-error-icon.ico b/WorkTimeHero/clock-error-icon.ico
Binary files differ.
diff --git a/WorkTimeHero/clock-go-icon.ico b/WorkTimeHero/clock-go-icon.ico
Binary files differ.
diff --git a/WorkTimeHero/clock-icon.ico b/WorkTimeHero/clock-icon.ico
Binary files differ.
diff --git a/WorkTimeHero/clock-pause-icon.ico b/WorkTimeHero/clock-pause-icon.ico
Binary files differ.
diff --git a/WorkTimeHero/clock-play-icon.ico b/WorkTimeHero/clock-play-icon.ico
Binary files differ.
diff --git a/WorkTimeHero/clock-red-icon.ico b/WorkTimeHero/clock-red-icon.ico
Binary files differ.
diff --git a/WorkTimeHero/clock-stop-icon.ico b/WorkTimeHero/clock-stop-icon.ico
Binary files differ.
diff --git a/WorkTimeHero/clock.ico b/WorkTimeHero/clock.ico
Binary files differ.
diff --git a/WorkTimeHero/clock_15.ico b/WorkTimeHero/clock_15.ico
Binary files differ.
diff --git a/WorkTimeHero/clock_45.ico b/WorkTimeHero/clock_45.ico
Binary files differ.
diff --git a/WorkTimeHero/clock_error.ico b/WorkTimeHero/clock_error.ico
Binary files differ.
diff --git a/WorkTimeHero/clock_red.ico b/WorkTimeHero/clock_red.ico
Binary files differ.