diff --git a/scripts/test.ps1 b/scripts/test.ps1 index 27665ae..5d323a5 100644 --- a/scripts/test.ps1 +++ b/scripts/test.ps1 @@ -1,3 +1,3 @@ $ErrorActionPreference = "Stop" -dotnet test --no-build --logger "console;verbosity=detailed" +dotnet test --logger "console;verbosity=detailed" diff --git a/src/TextForge.Core/Documents/DocumentContent.cs b/src/TextForge.Core/Documents/DocumentContent.cs new file mode 100644 index 0000000..3fcabd0 --- /dev/null +++ b/src/TextForge.Core/Documents/DocumentContent.cs @@ -0,0 +1,3 @@ +namespace TextForge.Core.Documents; + +public record DocumentContent(string Text); diff --git a/src/TextForge.Core/Documents/TextTemplate.cs b/src/TextForge.Core/Documents/TextTemplate.cs new file mode 100644 index 0000000..9544660 --- /dev/null +++ b/src/TextForge.Core/Documents/TextTemplate.cs @@ -0,0 +1,6 @@ +namespace TextForge.Core.Documents; + +public class TextTemplate +{ + public string Title { get; } = "TextForge"; +} diff --git a/src/TextForge.Core/PdfService.cs b/src/TextForge.Core/PdfService.cs index 92a8b79..0c02ac2 100644 --- a/src/TextForge.Core/PdfService.cs +++ b/src/TextForge.Core/PdfService.cs @@ -1,12 +1,13 @@ using QuestPDF.Fluent; using QuestPDF.Helpers; using QuestPDF.Infrastructure; +using TextForge.Core.Documents; namespace TextForge.Core; public static class PdfService { - public static void CreatePdf(string text, string path) + public static void CreatePdf(DocumentContent document, TextTemplate template, string path) { QuestPDF.Settings.License = LicenseType.Community; @@ -14,9 +15,13 @@ public static void CreatePdf(string text, string path) { container.Page(page => { - page.Content().Text(text); + page.Content().Column(column => + { + column.Item().Text(template.Title); + column.Item().Text(document.Text); + }); }); }) .GeneratePdf(path); } -} \ No newline at end of file +} diff --git a/src/TextForge.Core/Preview/PreviewRenderer.cs b/src/TextForge.Core/Preview/PreviewRenderer.cs new file mode 100644 index 0000000..c093c83 --- /dev/null +++ b/src/TextForge.Core/Preview/PreviewRenderer.cs @@ -0,0 +1,5 @@ +namespace TextForge.Core.Preview; + +public record PreviewDocument( + string Title, + string Text); diff --git a/src/TextForge.Desktop/Views/MainWindow.axaml b/src/TextForge.Desktop/Views/MainWindow.axaml index 33acff4..4fbad88 100644 --- a/src/TextForge.Desktop/Views/MainWindow.axaml +++ b/src/TextForge.Desktop/Views/MainWindow.axaml @@ -15,16 +15,54 @@ - - + -