aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS.WinForms/IDesktopWidget.cs
diff options
context:
space:
mode:
authorMichael <[email protected]>2017-04-16 13:31:23 -0400
committerMichael <[email protected]>2017-04-16 13:31:23 -0400
commit538f99faf7b381717079ea700d4f2e6e908537ea (patch)
tree8d8494581c8af53ddc90121e0b69466ea06e6889 /ShiftOS.WinForms/IDesktopWidget.cs
parenta0fc2b5e701659d1ed17eba9c2888cae6d519c1e (diff)
downloadshiftos_thereturn-538f99faf7b381717079ea700d4f2e6e908537ea.tar.gz
shiftos_thereturn-538f99faf7b381717079ea700d4f2e6e908537ea.tar.bz2
shiftos_thereturn-538f99faf7b381717079ea700d4f2e6e908537ea.zip
Begin work on Desktop Widgets
Diffstat (limited to 'ShiftOS.WinForms/IDesktopWidget.cs')
-rw-r--r--ShiftOS.WinForms/IDesktopWidget.cs51
1 files changed, 51 insertions, 0 deletions
diff --git a/ShiftOS.WinForms/IDesktopWidget.cs b/ShiftOS.WinForms/IDesktopWidget.cs
new file mode 100644
index 0000000..95c373c
--- /dev/null
+++ b/ShiftOS.WinForms/IDesktopWidget.cs
@@ -0,0 +1,51 @@
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ShiftOS.Engine;
+
+namespace ShiftOS.WinForms
+{
+ /// <summary>
+ /// Provides base functionality for a ShiftOS desktop widget.
+ /// </summary>
+ public interface IDesktopWidget
+ {
+ /// <summary>
+ /// Performs routine setup operations to keep the widget up to date.
+ /// </summary>
+ void Setup();
+
+ /// <summary>
+ /// Occurs when a skin is loaded.
+ /// </summary>
+ void OnSkinLoad();
+
+ /// <summary>
+ /// Occurs when a Shiftorium upgrade is installed.
+ /// </summary>
+ void OnUpgrade();
+
+ /// <summary>
+ /// Hides this desktop widget.
+ /// </summary>
+ void Hide();
+
+ /// <summary>
+ /// Shows this desktop widget.
+ /// </summary>
+ void Show();
+
+ /// <summary>
+ /// Gets or sets the location on the desktop that this widget resides.
+ /// </summary>
+ Point Location { get; set; }
+
+ /// <summary>
+ /// Gets or sets this widget's size.
+ /// </summary>
+ Size Size { get; set; }
+ }
+}