1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- using System;
- using System.Collections.Concurrent;
- using System.Collections.Generic;
- using System.Windows;
- using InABox.Core;
- namespace InABox.DynamicGrid;
- public enum PageType
- {
- Editor,
- Other
- }
- public interface IDynamicEditorPage
- {
- DynamicEditorGrid EditorGrid { get; set; }
- PageType PageType { get; }
- bool Ready { get; set; }
- bool ReadOnly { get; set; }
- void Load(object item, Func<Type, CoreTable?>? PageDataHandler);
- /// <summary>
- /// Called when the "OK" button is clicked on an editor, and before the item is saved.
- /// </summary>
- /// <param name="item"></param>
- void BeforeSave(object item);
- /// <summary>
- /// Called when the "OK" button is clicked on an editor, and after the item is saved.
- /// </summary>
- /// <remarks>
- /// Generally used to save any child entities that need to be saved, since now the parent has a valid <see cref="Entity.ID"/>.
- /// </remarks>
- /// <param name="item"></param>
- void AfterSave(object item);
- event EventHandler OnChanged;
- void DoChanged();
- Size MinimumSize();
- string Caption();
- int Order();
- }
- //public class DynamicEditorPage
- //{
- // public String Name { get; set; }
- // public Control Page { get; set; }
- // public DynamicEditorPage(String name, Control page) : base()
- // {
- // Name = name;
- // Page = page;
- // }
- //}
- public class DynamicEditorPages : List<IDynamicEditorPage>
- {
- public DynamicEditorPages() : base()
- {
-
- }
- public DynamicEditorPages(IEnumerable<IDynamicEditorPage> pages) : this()
- {
- foreach (var page in pages)
- Add(page);
- }
- }
|