From 538f99faf7b381717079ea700d4f2e6e908537ea Mon Sep 17 00:00:00 2001 From: Michael Date: Sun, 16 Apr 2017 13:31:23 -0400 Subject: Begin work on Desktop Widgets --- ShiftOS.WinForms/IDesktopWidget.cs | 51 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 ShiftOS.WinForms/IDesktopWidget.cs (limited to 'ShiftOS.WinForms/IDesktopWidget.cs') 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 +{ + /// + /// Provides base functionality for a ShiftOS desktop widget. + /// + public interface IDesktopWidget + { + /// + /// Performs routine setup operations to keep the widget up to date. + /// + void Setup(); + + /// + /// Occurs when a skin is loaded. + /// + void OnSkinLoad(); + + /// + /// Occurs when a Shiftorium upgrade is installed. + /// + void OnUpgrade(); + + /// + /// Hides this desktop widget. + /// + void Hide(); + + /// + /// Shows this desktop widget. + /// + void Show(); + + /// + /// Gets or sets the location on the desktop that this widget resides. + /// + Point Location { get; set; } + + /// + /// Gets or sets this widget's size. + /// + Size Size { get; set; } + } +} -- cgit v1.2.3