IShell.cs 562 B

123456789101112131415161718192021222324252627
  1. using System;
  2. using System.ComponentModel;
  3. using InABox.Core;
  4. namespace InABox.Avalonia
  5. {
  6. public interface IShell : INotifyPropertyChanged
  7. {
  8. Guid ID { get; }
  9. ICoreRepository Parent { get; }
  10. bool IsSelected { get; set; }
  11. bool IsChanged();
  12. void Save(string auditmessage);
  13. void SyncRow();
  14. void Cancel();
  15. bool Match(string? text);
  16. }
  17. public interface IShell<out TEntity> : IShell
  18. where TEntity : Entity, IRemotable, IPersistent
  19. {
  20. TEntity Entity { get; }
  21. }
  22. }