using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Media.Imaging; using Tango.BL.Entities; namespace Tango.MachineStudio.Common { /// /// Represents a Machine Studio module. /// /// public interface IStudioModule : IDisposable { /// /// Gets the module name. /// String Name { get; } /// /// Gets the module description. /// String Description { get; } /// /// Gets the module cover image. /// BitmapSource Image { get; } /// /// Gets the module entry point view. /// FrameworkElement MainView { get; } /// /// Gets or sets a value indicating whether this module is shown under a new window. /// bool InNewWindow { get; set; } /// /// Gets the permission required to see and load this module. /// Permissions Permission { get; } /// /// Gets a value indicating whether this module has been initialized. /// bool IsInitialized { get; } /// /// Perform any operations required to initialize this module. /// void Initialize(); /// /// Sets a value indicating whether this module is loaded. /// bool IsLoaded { set; get; } } }