|
@@ -4,21 +4,27 @@ using InABox.DynamicGrid;
|
|
|
|
|
|
namespace InABox.Wpf;
|
|
|
|
|
|
-public abstract class MasterDetailPanelPage<TMaster,TPanel> : MasterDetailPage<TMaster>
|
|
|
- where TPanel : class, IBasePanel, IMasterDetailControl<TMaster>, new()
|
|
|
+public interface IMasterDetailPanelPage
|
|
|
{
|
|
|
+ IBasePanel? Panel { get; }
|
|
|
+}
|
|
|
|
|
|
- public MasterDetailPanelPage(DynamicTabItem tab) : base(tab) { }
|
|
|
+public abstract class MasterDetailPanelPage<TMaster,TPanel> : MasterDetailPage<TMaster>, IMasterDetailPanelPage
|
|
|
+ where TPanel : class, IBasePanel, IMasterDetailControl<TMaster>, new()
|
|
|
+{
|
|
|
+ protected MasterDetailPanelPage(DynamicTabItem tab) : base(tab) { }
|
|
|
|
|
|
public TPanel? Panel { get; set; }
|
|
|
|
|
|
+ IBasePanel? IMasterDetailPanelPage.Panel => Panel;
|
|
|
+
|
|
|
public override Dictionary<string, object[]>? Selected() => Panel?.Selected();
|
|
|
|
|
|
- protected abstract void DoRefresh(TPanel panel);
|
|
|
+ protected abstract void DoRefresh(TPanel? panel);
|
|
|
|
|
|
public override IDataModelSource DataModelSource() => CheckPanel();
|
|
|
|
|
|
- protected override IDataModelSource Refresh()
|
|
|
+ protected override IDataModelSource? Refresh()
|
|
|
{
|
|
|
|
|
|
CheckPanel();
|