DocumentProvider.cs 780 B

1234567891011121314151617181920212223242526272829
  1. using PixiEditor.Extensions.CommonApi.Documents;
  2. using PixiEditor.Extensions.CommonApi.IO;
  3. using PixiEditor.Extensions.Sdk.Api.Documents;
  4. using PixiEditor.Extensions.Sdk.Bridge;
  5. namespace PixiEditor.Extensions.Sdk.Api.IO;
  6. public class DocumentProvider : IDocumentProvider
  7. {
  8. public IDocument ActiveDocument => Interop.GetActiveDocument();
  9. public IDocument? ImportFile(string path, bool associatePath = true)
  10. {
  11. return Interop.ImportFile(path, associatePath);
  12. }
  13. public IDocument? ImportDocument(byte[] data)
  14. {
  15. return Interop.ImportDocument(data);
  16. }
  17. public IDocument? GetDocument(Guid id)
  18. {
  19. if (id == Guid.Empty)
  20. throw new ArgumentException("Invalid document ID");
  21. return new Document(id);
  22. }
  23. }