using System; namespace Artemis.Core.Modules { /// public class ModuleTab : ModuleTab where T : IModuleViewModel { /// /// Creates a new instance of the class /// /// The title of the tab public ModuleTab(string title) : base(title) { } /// public override Type Type => typeof(T); } /// /// Describes a UI tab for a specific module /// public abstract class ModuleTab { /// /// Creates a new instance of the class /// /// The title of the tab protected ModuleTab(string title) { Title = title; } /// /// The title of the tab /// public string Title { get; protected set; } /// /// The type of view model the tab contains /// public abstract Type Type { get; } } }