From 1e85df5193122cc02c898618448d8caa330e7e64 Mon Sep 17 00:00:00 2001 From: echo Date: Thu, 21 May 2026 06:10:32 +0200 Subject: [PATCH] check point --- .github/workflows/odin-ci.yml | 44 + odin/.env | 2 + odin/.gitignore | 5 + odin/README.md | 33 + odin/build.sh | 5 + odin/comic-odin | Bin 0 -> 3097696 bytes odin/comic.pdf | 27 + odin/docs/PORT_BACKLOG.md | 1027 +++++++++++++++ odin/generated/demo_comic.pdf | 27 + odin/generated/demo_project.comic.json | 296 +++++ odin/generated/nested/demo.pdf | 27 + odin/generated/nested/demo_project.comic.json | 206 +++ odin/gui_export.pdf | 27 + odin/gui_project.comic.json | 387 ++++++ odin/gui_session_report.txt | Bin 0 -> 479 bytes odin/local.cbz | Bin 0 -> 509 bytes odin/local.pdf | 27 + .../project.comic.json | 51 + odin/quick_3.cbz | Bin 0 -> 652 bytes odin/quick_local.pdf | 27 + odin/schemas/comic-project.schema.json | 29 + odin/scratch.odin | 11 + odin/screenshot000.png | Bin 0 -> 114391 bytes odin/screenshot001.png | Bin 0 -> 111430 bytes odin/scripts/package.sh | 32 + odin/src/adapters/deepseek.odin | 789 +++++++++++ odin/src/adapters/export.odin | 251 ++++ odin/src/adapters/fal.odin | 299 +++++ odin/src/adapters/storage.odin | 133 ++ odin/src/app/cli.odin | 1166 +++++++++++++++++ odin/src/app/main.odin | 25 + odin/src/core/bubble.odin | 163 +++ odin/src/core/character_prompt.odin | 108 ++ odin/src/core/dispose.odin | 140 ++ odin/src/core/layout.odin | 264 ++++ odin/src/core/script.odin | 56 + odin/src/core/state.odin | 51 + odin/src/core/types.odin | 251 ++++ odin/src/core/workflow.odin | 24 + odin/src/gui/actions.odin | 429 ++++++ odin/src/gui/controls.odin | 177 +++ odin/src/gui/diagnostics.odin | 159 +++ odin/src/gui/local_helpers.odin | 124 ++ odin/src/gui/overlays.odin | 151 +++ odin/src/gui/path_helpers.odin | 165 +++ odin/src/gui/runtime.odin | 973 ++++++++++++++ odin/src/gui/session_helpers.odin | 212 +++ odin/src/gui/summary_views.odin | 443 +++++++ odin/src/gui/text_helpers.odin | 23 + odin/src/gui/theme.odin | 210 +++ odin/src/gui/types.odin | 17 + odin/src/gui/widgets.odin | 76 ++ odin/src/shared/config.odin | 29 + odin/src/shared/errors.odin | 60 + odin/src/ui/controller.odin | 76 ++ odin/src/ui/dispose.odin | 19 + odin/src/ui/jobs.odin | 105 ++ odin/src/ui/navigation.odin | 39 + odin/src/ui/runtime.odin | 60 + odin/src/ui/screens.odin | 48 + odin/src/ui/views.odin | 91 ++ odin/tests/adapters_phase2.odin | 103 ++ odin/tests/app_cli_phase6.odin | 526 ++++++++ odin/tests/core_phase1.odin | 84 ++ odin/tests/core_smoke.odin | 10 + odin/tests/export_phase3.odin | 96 ++ odin/tests/gui_helpers_phase28.odin | 695 ++++++++++ odin/tests/hardening_phase5.odin | 58 + odin/tests/storage_phase3.odin | 56 + odin/tests/ui_phase4.odin | 61 + odin/tests/ui_render_phase4.odin | 45 + package-lock.json | 22 + 72 files changed, 11452 insertions(+) create mode 100644 .github/workflows/odin-ci.yml create mode 100644 odin/.env create mode 100644 odin/.gitignore create mode 100644 odin/README.md create mode 100755 odin/build.sh create mode 100755 odin/comic-odin create mode 100644 odin/comic.pdf create mode 100644 odin/docs/PORT_BACKLOG.md create mode 100644 odin/generated/demo_comic.pdf create mode 100644 odin/generated/demo_project.comic.json create mode 100644 odin/generated/nested/demo.pdf create mode 100644 odin/generated/nested/demo_project.comic.json create mode 100644 odin/gui_export.pdf create mode 100644 odin/gui_project.comic.json create mode 100644 odin/gui_session_report.txt create mode 100644 odin/local.cbz create mode 100644 odin/local.pdf create mode 100644 odin/missing-dir-for-autosave/project.comic.json create mode 100644 odin/quick_3.cbz create mode 100644 odin/quick_local.pdf create mode 100644 odin/schemas/comic-project.schema.json create mode 100644 odin/scratch.odin create mode 100644 odin/screenshot000.png create mode 100644 odin/screenshot001.png create mode 100755 odin/scripts/package.sh create mode 100644 odin/src/adapters/deepseek.odin create mode 100644 odin/src/adapters/export.odin create mode 100644 odin/src/adapters/fal.odin create mode 100644 odin/src/adapters/storage.odin create mode 100644 odin/src/app/cli.odin create mode 100644 odin/src/app/main.odin create mode 100644 odin/src/core/bubble.odin create mode 100644 odin/src/core/character_prompt.odin create mode 100644 odin/src/core/dispose.odin create mode 100644 odin/src/core/layout.odin create mode 100644 odin/src/core/script.odin create mode 100644 odin/src/core/state.odin create mode 100644 odin/src/core/types.odin create mode 100644 odin/src/core/workflow.odin create mode 100644 odin/src/gui/actions.odin create mode 100644 odin/src/gui/controls.odin create mode 100644 odin/src/gui/diagnostics.odin create mode 100644 odin/src/gui/local_helpers.odin create mode 100644 odin/src/gui/overlays.odin create mode 100644 odin/src/gui/path_helpers.odin create mode 100644 odin/src/gui/runtime.odin create mode 100644 odin/src/gui/session_helpers.odin create mode 100644 odin/src/gui/summary_views.odin create mode 100644 odin/src/gui/text_helpers.odin create mode 100644 odin/src/gui/theme.odin create mode 100644 odin/src/gui/types.odin create mode 100644 odin/src/gui/widgets.odin create mode 100644 odin/src/shared/config.odin create mode 100644 odin/src/shared/errors.odin create mode 100644 odin/src/ui/controller.odin create mode 100644 odin/src/ui/dispose.odin create mode 100644 odin/src/ui/jobs.odin create mode 100644 odin/src/ui/navigation.odin create mode 100644 odin/src/ui/runtime.odin create mode 100644 odin/src/ui/screens.odin create mode 100644 odin/src/ui/views.odin create mode 100644 odin/tests/adapters_phase2.odin create mode 100644 odin/tests/app_cli_phase6.odin create mode 100644 odin/tests/core_phase1.odin create mode 100644 odin/tests/core_smoke.odin create mode 100644 odin/tests/export_phase3.odin create mode 100644 odin/tests/gui_helpers_phase28.odin create mode 100644 odin/tests/hardening_phase5.odin create mode 100644 odin/tests/storage_phase3.odin create mode 100644 odin/tests/ui_phase4.odin create mode 100644 odin/tests/ui_render_phase4.odin diff --git a/.github/workflows/odin-ci.yml b/.github/workflows/odin-ci.yml new file mode 100644 index 0000000..2882e03 --- /dev/null +++ b/.github/workflows/odin-ci.yml @@ -0,0 +1,44 @@ +name: odin-ci + +on: + push: + paths: + - 'odin/**' + - '.github/workflows/odin-ci.yml' + pull_request: + paths: + - 'odin/**' + - '.github/workflows/odin-ci.yml' + workflow_dispatch: + +jobs: + build-test: + runs-on: ubuntu-latest + defaults: + run: + working-directory: odin + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Odin + uses: laytan/setup-odin@v2 + with: + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Build + run: ./build.sh + + - name: Test + run: odin test tests + + - name: Package + run: ./scripts/package.sh + + - name: Upload package artifact + uses: actions/upload-artifact@v4 + with: + name: comic-odin-package + path: | + odin/dist/*.tar.gz + odin/dist/*.sha256 diff --git a/odin/.env b/odin/.env new file mode 100644 index 0000000..3ecd987 --- /dev/null +++ b/odin/.env @@ -0,0 +1,2 @@ +DEEPSEEK_API_KEY=sk-c6e67b9d125448f593f202a5891eb123 +FAL_API_KEY=d6eda9df-62ca-4934-8a61-4e7e659411e2:731fc05a520e6aeb1f3b68d74d0515aa diff --git a/odin/.gitignore b/odin/.gitignore new file mode 100644 index 0000000..32f1727 --- /dev/null +++ b/odin/.gitignore @@ -0,0 +1,5 @@ +bin/ +*.ll +*.o +*.obj +*.pdb diff --git a/odin/README.md b/odin/README.md new file mode 100644 index 0000000..195f99a --- /dev/null +++ b/odin/README.md @@ -0,0 +1,33 @@ +# comic-odin (port skeleton) + +This is the Odin-native skeleton for porting the current React/TypeScript comic app. + +## Goals + +- Keep domain logic in `src/core` (types, workflow, layout, bubble logic) +- Keep external integrations in `src/adapters` (DeepSeek, fal.ai, storage, export) +- Keep app entry in `src/app` +- Add tests as domain logic is ported + +## Proposed layout + +- `src/app` - app entrypoint and composition root +- `src/core` - pure domain logic and state machine +- `src/adapters` - IO + external services +- `src/shared` - common errors/config +- `tests` - unit/integration tests +- `docs` - migration and implementation notes +- `schemas` - JSON schemas for project/script persistence + +## Quick start + +```bash +# from repository root +cd odin +./build.sh +./bin/comic_odin +``` + +## Status + +Scaffold only (interfaces + placeholders). No full functionality yet. diff --git a/odin/build.sh b/odin/build.sh new file mode 100755 index 0000000..815eb3a --- /dev/null +++ b/odin/build.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash +set -euo pipefail + +mkdir -p bin +odin build src/app -out:bin/comic_odin -debug diff --git a/odin/comic-odin b/odin/comic-odin new file mode 100755 index 0000000000000000000000000000000000000000..400c6d0b36930bc21968ff0ae5edf0344520f6fc GIT binary patch literal 3097696 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

8nAKoj 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

7Mo8qsTz!^vMFk;WfwEmJ2GUL4>Umr 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

nDw^xNTG&inQk65d=HP9+-{nDyW(pz<(HK8`W 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

pcB9+;5H3+xSf4ys{WR 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πh@p}jB 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

`k>Tt{GdVvZ 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 literal 0 HcmV?d00001 diff --git a/odin/comic.pdf b/odin/comic.pdf new file mode 100644 index 0000000..0fbf063 --- /dev/null +++ b/odin/comic.pdf @@ -0,0 +1,27 @@ +%PDF-1.4 +1 0 obj +<< /Type /Catalog /Pages 2 0 R >> +endobj +2 0 obj +<< /Type /Pages /Kids [3 0 R] /Count 1 >> +endobj +3 0 obj +<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >> +endobj +4 0 obj +<< /Length 55 >> +stream +BT /F1 12 Tf 50 780 Td (Comic Export - Panels: 2) Tj ET +endstream +endobj +5 0 obj +<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >> +endobj +xref +0 6 +0000000000 65535 f +trailer +<< /Size 6 /Root 1 0 R >> +startxref +416 +%%EOF diff --git a/odin/docs/PORT_BACKLOG.md b/odin/docs/PORT_BACKLOG.md new file mode 100644 index 0000000..24d94ca --- /dev/null +++ b/odin/docs/PORT_BACKLOG.md @@ -0,0 +1,1027 @@ +# Odin Port Backlog + +## Milestone 1: Core parity +- [x] Port all TS domain enums + structs (baseline) +- [x] Port script normalization (validation is minimal) +- [x] Port layout pattern selection and page packing +- [x] Port bubble placement + sizing +- [x] Port deterministic seed generation (TS-style hash/parity logic) + +## Milestone 2: Service integration +- [x] DeepSeek adapter with retry/backoff (transport-injected) +- [x] fal.ai adapter with queue and concurrency caps (transport-injected) +- [x] Error taxonomy + retry classification +- [x] Real HTTP integrations via curl transport (DeepSeek + fal) +- [x] Full DeepSeek envelope/content JSON decoding into typed domain script +- [x] Replace fal response string extraction with typed JSON decoding + +## Milestone 3: Persistence + export +- [x] Project save/load format (`.comic.json`) with schema wrapper +- [x] Asset cache folder strategy (`/assets`) +- [x] Exporters (PNG/CBZ/PDF) baseline implementation +- [x] PNG/CBZ hardening: staged image files + zip packaging (+ ComicInfo.xml for CBZ) +- [x] Migration scaffold (`schemaVersion` + migration switch) + +## Milestone 4: Desktop UI +- [x] Story/script/character/panel/layout/bubble/export screen routing scaffold (`src/ui/screens.odin`) +- [x] Workflow navigation guards (`src/ui/navigation.odin`) +- [x] Background jobs + cancellation scaffold (`src/ui/jobs.odin`, `src/ui/controller.odin`) +- [x] Rendering/runtime layer scaffold (`src/ui/views.odin`, `src/ui/runtime.odin`) + +## Milestone 5: Hardening +- [x] Lifecycle cleanup scaffold for state/controller (`src/core/dispose.odin`, `src/ui/dispose.odin`) +- [x] Hardening tests for dispose/cleanup behavior (`tests/hardening_phase5.odin`) +- [x] Initial ownership cleanup pass in tests/controllers (defer dispose on controllers, scripts, fixtures) +- [x] Reduce remaining allocator leak warnings across adapters/views/tests via deeper allocation policy + explicit string/slice ownership rules + +## Milestone 6: CLI Runtime +- [x] Command parser + executor (`src/app/cli.odin`) +- [x] CLI-integrated app boot path (`src/app/main.odin`) +- [x] CLI tests for parse/save/load workflow (`tests/app_cli_phase6.odin`) + +## Milestone 7: Packaging + CI +- [x] Packaging script for release artifacts (`scripts/package.sh`) +- [x] CI workflow for build/test/package (`.github/workflows/odin-ci.yml`) +- [x] Artifact upload in CI (tarball + sha256) + +## Milestone 8: Interactive TUI +- [x] Added `tui` CLI mode with interactive command loop (`src/app/cli.odin`) +- [x] TUI commands for navigation/workflow/jobs/save/load/status +- [x] Parser coverage update for `tui` command (`tests/app_cli_phase6.odin`) +- [x] TUI polish: ANSI full-screen redraw + single-key aliases (`h/s/d/c/q`, `1..8` screens) + +## Milestone 9: TUI Story Editing +- [x] Added `new` command to reset project state +- [x] Added `set idea `, `set genre `, `set audience ` commands +- [x] Verified interactive behavior with scripted TUI smoke run + +## Milestone 10: TUI Generation Commands +- [x] Added `generate script` command wired to DeepSeek adapter path +- [x] Added `generate panels` command wired to fal batch adapter path +- [x] Added `generate script ` override parsing +- [x] Added `generate panels page ` scoped generation parsing +- [x] Added regression tests for missing-key/empty-script generation paths (`tests/app_cli_phase6.odin`) + +## Milestone 11: TUI Layout + Export Commands +- [x] Added `layout auto` command to generate `page_layouts` from script panels +- [x] Added `export ` command wired to export adapter +- [x] Added parser/test coverage for export command and layout/export precondition failures (`tests/app_cli_phase6.odin`) + +## Milestone 12: Offline TUI Script Mode +- [x] Added `generate script local [pages]` for keyless local script generation +- [x] Added parser/test coverage for local script command and new command forms (`tests/app_cli_phase6.odin`) +- [x] Fixed `set_workflow_step` historical-steps reallocation leak in `src/core/state.odin` + +## Milestone 13: Offline TUI Panels + Export Flow +- [x] Added `generate panels local [page ]` for keyless local panel image generation +- [x] Added parser/test coverage for local panel command and offline local flow (`tests/app_cli_phase6.odin`) +- [x] Synced export UI state format after export command execution + +## Milestone 14: One-Command Offline Pipeline +- [x] Added `quick local ` TUI command (local script + local panels + layout + export) +- [x] Added parser/test coverage for quick-local command (`tests/app_cli_phase6.odin`) +- [x] Validated end-to-end quick-local PDF export in TUI smoke run + +## Milestone 15: Quick-Local Parameterization +- [x] Added optional page-count argument: `quick local [pages]` +- [x] Added parser/test coverage for quick-local page-count parsing and resulting script page count (`tests/app_cli_phase6.odin`) +- [x] Validated quick-local CBZ export with page-count override in TUI smoke run + +## Milestone 16: One-Command Save+Export Pipeline +- [x] Added `quick local all [pages]` +- [x] Refactored quick-local flow into reusable `run_quick_local_pipeline` helper +- [x] Added parser/integration tests for quick-local-all save+export behavior (`tests/app_cli_phase6.odin`) + +## Milestone 17: TUI Doctor Diagnostics +- [x] Added `doctor` command for environment/tool diagnostics (DeepSeek key, fal key, curl, python3) +- [x] Added alias `?` -> `doctor` +- [x] Added parser/command tests and TUI smoke validation (`tests/app_cli_phase6.odin`) + +## Milestone 18: TUI Alias & Flow Ergonomics +- [x] Added `saveas ` alias for `save ` and `open ` alias for `load ` +- [x] Added tests for `open`/`saveas` alias workflow (`tests/app_cli_phase6.odin`) +- [x] Hardened owned cleanup in alias load/save test path to avoid unmarshal-token leak leftovers + +## Milestone 19: TUI Readiness Diagnostics +- [x] Added `ready` command for workflow readiness checks (script/panels/layout/export) +- [x] Added alias `r` -> `ready` +- [x] Added parser/command tests and TUI smoke validation (`tests/app_cli_phase6.odin`) + +## Milestone 20: TUI Guided Next-Step Hints +- [x] Added `next` command to recommend the next actionable workflow command +- [x] Added alias `n` -> `next` +- [x] Added parser/command tests and TUI smoke validation for hint progression (`tests/app_cli_phase6.odin`) + +## Milestone 21: TUI Plan/Checklist View +- [x] Added `plan` command showing stage completion checklist + current next hint +- [x] Added alias `p` -> `plan` +- [x] Added parser/command tests and TUI smoke validation for checklist progression (`tests/app_cli_phase6.odin`) + +## Milestone 22: TUI Auto-Advance Command +- [x] Added `auto` command to execute the current `next` recommended action +- [x] Added alias `x` -> `auto` +- [x] Added parser/command tests and TUI smoke validation for auto progression (`tests/app_cli_phase6.odin`) + +## Milestone 23: TUI Auto-All Pipeline +- [x] Added `auto all ` command to auto-run next steps until export +- [x] Added parser/command tests for `auto all` parsing and export completion (`tests/app_cli_phase6.odin`) +- [x] Validated end-to-end `auto all` TUI smoke export run + +## Milestone 24: Forced-Local Auto-All Mode +- [x] Added `auto all local [pages]` command to force fully-local auto pipeline +- [x] Added parser/command tests for `auto all local` parsing and export completion (`tests/app_cli_phase6.odin`) +- [x] Validated end-to-end `auto all local` TUI smoke export run + +## Milestone 25A: Native GUI Bring-up +- [x] Added Raylib GUI runtime scaffold (`src/gui/runtime.odin`) +- [x] Added CLI entrypoint `gui` and command parsing support (`src/app/cli.odin`) +- [x] Implemented native window + screen router hotkeys + Story field editing + local action hotkeys (F5/F6/F7/F8) +- [x] Added parse coverage for `gui` command (`tests/app_cli_phase6.odin`) + +## Milestone 25B: GUI Interaction Pass +- [x] Added clickable GUI action buttons (New, Generate Script Local, Generate Panels Local, Layout, Export PDF) +- [x] Added editable export path field in GUI and wired export button to field value +- [x] Added on-screen command panel/checklist copy and retained hotkey fallbacks + +## Milestone 25C: GUI Navigation + Activity Visibility +- [x] Added clickable screen navigation tiles in sidebar (in addition to 1..8 hotkeys) +- [x] Added right-side action log panel with recent GUI actions/status messages +- [x] Preserved workflow-guard behavior for blocked screen transitions with explicit status feedback + +## Milestone 25D: GUI Guided Controls +- [x] Added GUI `Next` action (button + F9) based on current guided workflow hint +- [x] Added GUI `Auto-All` action (button + F10) to run local flow through export +- [x] Added on-screen current `Next:` hint display and integrated action-log updates + +## Milestone 25E: GUI Export/Script Controls +- [x] Added GUI export format selector (PDF/PNG/CBZ) used by export and guided actions +- [x] Added GUI local-script pages input field, used by script generation/Next/Auto-All +- [x] Kept hotkey parity and updated on-screen hints for new controls + +## Milestone 25F: GUI Project Path & File Actions +- [x] Added editable GUI project path field (`./gui_project.comic.json` default) +- [x] Added clickable GUI Save/Open project buttons wired to storage adapter +- [x] Integrated selected export format into GUI export action and refreshed command panel/status layout + +## Milestone 25G: GUI One-Click Session Workflow +- [x] Added `Auto-All + Save` GUI button to run local full flow then persist project +- [x] Wired button to reuse guided local pipeline + storage adapter save path +- [x] Updated command panel copy and action-log integration for one-click workflow + +## Milestone 25H: GUI Productivity Hotkeys +- [x] Added GUI productivity shortcuts: `Ctrl+S` (save), `Ctrl+O` (open), `Ctrl+E` (export) +- [x] Reused existing adapter actions for consistent behavior with button-driven flows +- [x] Updated on-screen hotkey hints to expose productivity shortcuts + +## Milestone 25I: GUI Session Management UX +- [x] Added GUI project path editing focus (`F12`) + Save/Open button flow integration +- [x] Added GUI dirty-state indicator (`Dirty: yes/no`) driven by edits/actions/save-open reset +- [x] Expanded command panel/action area to include Save/Open/Auto-All+Save session workflow + +## Milestone 25J: GUI Destructive-Action Safeguards +- [x] Added unsaved-change guard for `New` and `Open` button actions +- [x] Require `Shift` modifier to confirm destructive New/Open when dirty +- [x] Added inline UI tip/status feedback and action-log entries for guarded actions + +## Milestone 25K: GUI Keyboard Safety Parity +- [x] Added guarded keyboard reset shortcut `Ctrl+N` with `Ctrl+Shift+N` confirm when dirty +- [x] Added guarded keyboard open shortcut `Ctrl+O` with `Ctrl+Shift+O` confirm when dirty +- [x] Updated GUI hotkey hints/tooltips to document destructive keyboard confirmations + +## Milestone 25L: GUI Autosave Controls +- [x] Added GUI autosave toggle button/state with interval-based autosave attempts +- [x] Added autosave status visibility in HUD and action log entries for autosave outcomes +- [x] Added keyboard toggle `Ctrl+Shift+A` and updated hotkey hints + +## Milestone 25M: GUI Visual Polish Pass +- [x] Upgraded visual theme to modern card-based layout (header bar, rounded controls, soft borders) +- [x] Added selected-state input styling and modernized nav/button hover/active visuals +- [x] Reworked status/command/action-log sections into clear dashboard surfaces + +## Milestone 26A: GUI Screen-Specific Summaries +- [x] Added dedicated screen summary card that changes content by active screen +- [x] Surfaced screen-relevant state details (Story/Script/Panels/Layout/Export/Community) +- [x] Replaced static command-only card with dynamic per-screen contextual summary + +## Milestone 26B: GUI Per-Screen Mini-Lists +- [x] Added script-page mini-list in Script summary (first pages + overflow hint) +- [x] Added layout-page mini-list in Layout summary (page/pattern/panel count) +- [x] Added richer export summary details (last layout pattern + action hint) + +## Milestone 26C: GUI Mini-List View Toggles +- [x] Added summary controls for Script/Layout mini-lists: show `Top` vs `All` +- [x] Added summary controls for Script/Layout ordering: `Asc` vs `Desc` +- [x] Wired toggle actions to status + action-log feedback + +## Milestone 26D: GUI Summary Clarity + Empty States +- [x] Added compact KPI chips in summary header (pages/panels/layout counts) +- [x] Added explicit empty-state guidance for Script/Panels/Layout screens +- [x] Added export precondition messaging in summary when panels/layout are missing + +## Milestone 26E: GUI Summary Controls Ergonomics +- [x] Added reusable summary-toggle helpers to unify Script/Layout show/sort behavior +- [x] Added keyboard shortcuts for summary controls (`Ctrl+H` show, `Ctrl+J` sort) +- [x] Updated summary control labels + sidebar hotkey hints for discoverability + +## Milestone 26F: GUI Status Telemetry +- [x] Added status-card telemetry for last save time and last export time +- [x] Wired telemetry updates across save/export/manual-auto flows and autosave success +- [x] Expanded status card layout to surface action recency at-a-glance + +## Milestone 26G: GUI Toast Feedback +- [x] Added transient toast notifications sourced from latest action-log event +- [x] Added basic severity coloring for failure/blocked vs success/info messages +- [x] Positioned toast in main workspace for immediate action feedback + +## Milestone 26H: GUI Readiness Chips +- [x] Added compact readiness chips in status card (Script/Panels/Layout/Export) +- [x] Wired readiness states to live project data for at-a-glance pipeline progress +- [x] Integrated readiness row into status layout without regressing existing telemetry + +## Milestone 26I: GUI Shortcuts Help Overlay +- [x] Added in-app keyboard shortcuts overlay (modal-style surface) with grouped guidance +- [x] Added help toggle via `/` key and Help button, plus `Esc` close behavior +- [x] Prevented text-field edits while help overlay is open to reduce accidental input + +## Milestone 26J: GUI Destructive Confirmation Modal +- [x] Added explicit dirty-state confirmation modal for New/Open destructive flows +- [x] Added confirm/cancel interactions (buttons + Enter/Y confirm, Esc/N cancel) +- [x] Gated action handlers while confirm modal is open to avoid accidental overlap + +## Milestone 26K: GUI Modal Input Isolation +- [x] Added unified interaction lock when help/confirm overlays are visible +- [x] Prevented background navigation/field-focus/action hotkeys while overlays are active +- [x] Forced help overlay closed when opening destructive confirm modal to avoid stacked modals + +## Milestone 26L: GUI Pipeline Progress Meter +- [x] Added readiness stage counting helper for Script/Panels/Layout/Export pipeline +- [x] Added visual pipeline progress bar to status card (`ready/total` stages) +- [x] Integrated progress summary alongside next-step hint and existing status telemetry + +## Milestone 26M: GUI Action Readiness Gating +- [x] Added visual disabled-state styling for dependent actions (Panels/Layout/Export) +- [x] Added explicit precondition messages for blocked action attempts (button + hotkey paths) +- [x] Added export precondition guards for `Ctrl+E`/`F8` parity with button behavior + +## Milestone 26N: GUI Hover Guidance for Disabled Actions +- [x] Added contextual hover hints explaining why Panels/Layout/Export are disabled +- [x] Surfaced readiness guidance inline near action controls for faster recovery +- [x] Kept guidance aligned with existing readiness guards and status messaging + +## Milestone 26O: GUI Recommended Action Highlighting +- [x] Added recommended-action resolver from workflow next-hint to primary action labels +- [x] Added visual emphasis styling for the currently recommended action button +- [x] Added inline `Recommended:` guidance when no blocking hover hint is active + +## Milestone 26P: GUI Export Format Path Sync +- [x] Added format-to-suffix mapping and export-path normalization helpers +- [x] Auto-updated export path extension on format toggle (PDF/PNG/CBZ) +- [x] Added inline UI cue that format selection auto-fixes export extension + +## Milestone 26Q: GUI Status Severity Styling +- [x] Added reusable message severity helpers (error/warning/info) +- [x] Applied severity-aware status text coloring in status card +- [x] Unified toast background coloring with shared severity classification + +## Milestone 26R: GUI Action-Log Utilities +- [x] Added action-log utility controls in GUI (Clear + Copy status) +- [x] Added keyboard shortcuts `Ctrl+L` (clear log) and `Ctrl+Shift+C` (copy status) +- [x] Updated sidebar/help-overlay shortcut documentation for new utilities + +## Milestone 26S: GUI Export Path Normalize Utility +- [x] Added `Fix Ext` action button beside export path input to normalize extension +- [x] Added keyboard shortcut `Ctrl+Shift+F` for extension normalization +- [x] Updated sidebar/help-overlay shortcut hints for export-path normalization + +## Milestone 26T: GUI Export Path Presets +- [x] Added format-aware default export path helper (`./comic_export.`) +- [x] Added `Preset` action button beside export path input +- [x] Added keyboard shortcut `Ctrl+Shift+P` and updated in-app shortcut docs + +## Milestone 26U: GUI Format-Specific Preset Filenames +- [x] Updated export presets to format-specific filenames (`comic.pdf`, `comic_png.zip`, `comic.cbz`) +- [x] Kept preset hotkey/button flows aligned with existing format selection state +- [x] Added inline export-path helper text documenting preset naming conventions + +## Milestone 26V: GUI Export Summary Detail Pass +- [x] Extended Export screen summary with explicit target export path +- [x] Added shared export-block reason helper for concise precondition messaging +- [x] Upgraded Export summary guidance to show exact missing prerequisite(s) + +## Milestone 26W: GUI Export Path Copy Utility +- [x] Added `Copy` action button beside export path controls +- [x] Added keyboard shortcut `Ctrl+Shift+X` to copy export path quickly +- [x] Updated sidebar/help shortcut docs to include export-path copy action + +## Milestone 26X: GUI Export Path from Project Directory +- [x] Added helper to derive export output path from current project directory + format filename +- [x] Added `Use Dir` action button to set export path relative to project location +- [x] Added keyboard shortcut `Ctrl+Shift+D` and updated shortcut docs + +## Milestone 26Y: GUI Field Clipboard Ergonomics +- [x] Added `Ctrl+V` paste into currently selected input field +- [x] Added `Ctrl+Shift+I` copy currently selected field content to clipboard +- [x] Updated sidebar/help overlay shortcut references for field clipboard actions + +## Milestone 26Z: GUI Selected-Field Clear Actions +- [x] Added `Clear Field` action button to clear currently focused input quickly +- [x] Added keyboard shortcut `Ctrl+Backspace` for selected-field clearing +- [x] Added clear-action status feedback + updated shortcut docs + +## Milestone 27A: GUI Autosave Interval Controls +- [x] Added editable autosave-interval field in GUI controls (`seconds`) +- [x] Added keyboard adjustments for autosave interval (`Ctrl+-` / `Ctrl+=`) with bounds +- [x] Integrated interval value into status telemetry and shortcut/help copy + +## Milestone 27B: Autosave Interval Presets + Input Guardrails +- [x] Added autosave preset buttons (`15/30/60`) beside interval input +- [x] Added keyboard presets (`Ctrl+7/8/9`) for fast interval switching +- [x] Added numeric-only typing guard for interval field and bounded parse normalization + +## Milestone 27C: GUI Quick Helper Reset +- [x] Added `Reset Helpers` action button for export/pages/autosave helper fields +- [x] Added keyboard shortcut `Ctrl+0` for one-shot helper-field reset +- [x] Updated sidebar/help shortcut docs for helper reset workflow + +## Milestone 27D: Project-Aware Export Path Sync on Open +- [x] Added helper to sync export target to project directory after successful project open +- [x] Applied sync behavior across modal-confirm, button, and keyboard open flows +- [x] Updated open status feedback to include resolved export target path + +## Milestone 27E: Project Path from Export Directory Utility +- [x] Added helper to derive project path from current export directory +- [x] Added `From Exp` project-path button and `Ctrl+Shift+G` shortcut +- [x] Updated shortcut docs in sidebar/help overlay for path sync utilities + +## Milestone 27F: Project Path Extension Normalization +- [x] Added project-path normalization helper to enforce `.comic.json` suffix +- [x] Added `Fix Ext` button for project path and `Ctrl+Shift+J` shortcut +- [x] Updated sidebar/help shortcut docs for project-path normalization + +## Milestone 27G: Path Normalization on I/O Actions +- [x] Added export/project path field normalization helpers for runtime actions +- [x] Applied normalization before save/open/export and guided export hotkeys/actions +- [x] Applied normalization in autosave + modal-confirm open flow to reduce path-related failures + +## Milestone 27H: Path Health Indicators +- [x] Added helpers to validate project-path suffix and export-path/format consistency +- [x] Surfaced live path-health status (`P/E`) in status telemetry line +- [x] Kept indicators aligned with existing normalization + save/export workflows + +## Milestone 27I: Path Health Quick-Fix Controls +- [x] Added compact status-card quick-fix buttons for invalid path indicators (`P`/`E`) +- [x] Added keyboard quick-fix shortcuts (`Ctrl+Shift+K` project, `Ctrl+Shift+M` export) +- [x] Updated sidebar/help shortcut docs for path quick-fix workflow + +## Milestone 27J: One-Shot Path Health Repair +- [x] Added combined path-fix action to normalize both project and export paths in one step +- [x] Added compact status control (`PE`) for one-click all-path repair +- [x] Added keyboard shortcut `Ctrl+Shift+U` + updated shortcut docs for all-path fix + +## Milestone 27K: Path Health Guidance Copy +- [x] Added path-health hint helper for invalid project/export path states +- [x] Surfaced actionable inline guidance with specific quick-fix shortcuts/buttons +- [x] Kept guidance synchronized with `P/E/PE` status controls and path checks + +## Milestone 27L: Diagnostics Snapshot Utility +- [x] Added diagnostics snapshot builder for clipboard-friendly runtime state summary +- [x] Added GUI diagnostics copy actions (`Diag` button, `Ctrl+Shift+Y`) +- [x] Updated sidebar/help shortcut docs for diagnostics export workflow + +## Milestone 27M: Diagnostics File + Help Overlay Compaction +- [x] Added diagnostics file export action (`DiagFile` button, `Ctrl+Shift+R`) using project-directory target +- [x] Added diagnostics-path helper and write-status feedback for file generation +- [x] Refactored help overlay into compact grouped sections to prevent overflow and keep shortcuts readable + +## Milestone 27N: Action Log Snapshot Copy +- [x] Added action-log snapshot serializer for clipboard export +- [x] Added `LogCp` control and keyboard shortcut `Ctrl+Shift+L` to copy recent log lines +- [x] Updated help/sidebar shortcut guidance to document log snapshot workflow + +## Milestone 27O: Session Report Export +- [x] Added combined session-report builder (diagnostics + action-log snapshot) +- [x] Added `Report` action button and `Ctrl+Shift+W` shortcut to write report file +- [x] Updated help/sidebar shortcut guidance for session-report export + +## Milestone 27P: Enriched Diagnostics Payload +- [x] Expanded diagnostics snapshot with next-step hint and content counts (pages/panels/layouts/chars) +- [x] Added runtime uptime field to diagnostics for temporal context +- [x] Added report metadata section (`generated_uptime`) in session-report output + +## Milestone 27Q: Time-Aware Action Log Entries +- [x] Added per-entry timestamp tracking in circular action-log state +- [x] Rendered action-log rows with relative age markers (`[Xs]`) +- [x] Included age-prefixed entries in action-log snapshot exports + +## Milestone 27R: Action Log View Controls +- [x] Added runtime controls for action-log line count (4/6) and order (newest/oldest) +- [x] Added keyboard toggles (`Ctrl+Shift+T` lines, `Ctrl+Shift+B` order) +- [x] Added log-view HUD label and updated help/sidebar shortcut guidance + +## Milestone 27S: Log View Reset + Diagnostics Context +- [x] Added `LogDef` control and `Ctrl+Shift+Z` shortcut to reset log view defaults +- [x] Included current log-view settings in diagnostics/session-report payloads +- [x] Updated help/sidebar guidance for expanded log tooling shortcuts + +## Milestone 28A: GUI Diagnostics/Report Write Helper Extraction +- [x] Added shared helpers for diagnostics/report file writing status handling +- [x] Replaced duplicated button/hotkey write blocks with helper calls +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28B: GUI Clipboard Helper Extraction +- [x] Added shared clipboard helper for text-copy status flows +- [x] Replaced duplicated clipboard button/hotkey handlers with helper calls +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28C: GUI Status/Log Push Helper Extraction +- [x] Added shared `push_status` helper for status assignment + action-log append +- [x] Replaced repeated status/log blocks across diagnostics, log-view, and clipboard hotkeys/actions +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28D: Autosave Interval Update Helper Extraction +- [x] Added shared autosave-interval setter helper with bounds enforcement + status message formatting +- [x] Replaced duplicated button/hotkey autosave-interval update blocks with helper calls +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28E: Path Action Helper Extraction +- [x] Added shared path-action helpers returning status messages (preset/sync/fix/all-fix) +- [x] Replaced duplicated button/hotkey path-update blocks with helper + `push_status` usage +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28F: Project Reset/Open Action Helper Extraction +- [x] Added shared helpers for reset/open project session flows (state replace, screen sync, dirty/autosave updates) +- [x] Replaced duplicated confirm/button/hotkey reset-open blocks with helper calls +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28G: Project Save Action Helper Extraction +- [x] Added shared helper for project save flows (path normalization, save call, dirty/autosave/save timestamps) +- [x] Replaced duplicated Save button and `Ctrl+S` save blocks with helper calls +- [x] Reused save helper in Auto-All+Save success path while preserving status semantics + +## Milestone 28H: Workflow Action Helper Extraction +- [x] Added shared helpers for script/panels/layout/export/next/auto action execution with consistent dirty/export-timestamp updates +- [x] Replaced duplicated button and F5–F10/`Ctrl+E` action blocks with helper + `push_status` calls +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28I: Navigation Status Helper Extraction +- [x] Added shared screen-navigation status helpers for button-driven sidebar navigation +- [x] Replaced duplicated per-screen button navigation blocks with helper + `push_status` calls +- [x] Preserved navigation guard/error behavior while reducing runtime event-loop duplication + +## Milestone 28J: Confirmation/Autosave/Helper-Reset Action Extraction +- [x] Added shared helpers for destructive-action confirmation requests, autosave toggle messaging, and helper-field resets +- [x] Replaced duplicated button/hotkey blocks (`New`/`Open` dirty prompts, autosave toggles, helper reset) with helper + `push_status` calls +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28K: Summary/Paste/Clear Interaction Helper Extraction +- [x] Added shared helpers for summary toggles (supported-screen guard), selected-field clear status, and clipboard paste-to-selected-field +- [x] Replaced duplicated button/hotkey blocks (`summary show/sort`, `clear field`, `Ctrl+V`, `Ctrl+Backspace`) with helper + `push_status` calls +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28L: Export-Format + Autosave-Tick Helper Extraction +- [x] Added shared helper for export-format switching (format update + path sync + dirty/status handling) +- [x] Added shared autosave-tick helper (interval gating, path normalization, save attempt, dirty/save timestamp updates) +- [x] Replaced duplicated export-format button and autosave-loop blocks with helper + `push_status` usage + +## Milestone 28M: Confirm-Resolve + Auto-All-Save Helper Extraction +- [x] Added shared helper to resolve pending destructive confirm actions (`Reset/Open/None`) into a single status path +- [x] Added shared helper for `Auto-All + Save` flow (auto pipeline + export timestamp + save) +- [x] Replaced duplicated confirm-yes switch and auto-save button block with helper + `push_status` usage + +## Milestone 28N: Help/Log-Clear Micro-Helper Extraction +- [x] Added shared helpers for help-overlay toggle/close and action-log clear messaging +- [x] Replaced duplicated help toggle/close and log-clear button/hotkey blocks with helper usage +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28O: Optional-Status Push Helper Extraction +- [x] Added shared `push_status_if_nonempty` helper for optional-message action paths +- [x] Replaced duplicated non-empty checks in summary toggles, clipboard paste, and autosave-tick status flow +- [x] Standardized initial GUI status-log seed via shared status push helper + +## Milestone 28P: Log-View Toggle Helper Extraction +- [x] Added shared helpers for log-view reset/toggle messaging (reset lines/order) +- [x] Replaced duplicated log-view button/hotkey blocks (`LogDef`, `Ctrl+Shift+Z/T/B`) with helper + `push_status` usage +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28Q: Diagnostics/Report Action Helper Consolidation +- [x] Added shared helpers for diagnostics/report write/copy actions and action-log snapshot copy +- [x] Replaced duplicated button/hotkey diagnostics/report/log-copy blocks with helper + `push_status` usage +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28R: Diagnostics Action Context Struct Introduction +- [x] Added `Diagnostics_Action_Context` + builder helper to consolidate wide diagnostics/report argument sets +- [x] Refactored diagnostics/report/log-copy button and hotkey handlers to pass context objects into helpers +- [x] Preserved behavior while improving readability and reducing call-site parameter noise + +## Milestone 28S: Dirty+Status Push Helper Extraction +- [x] Added shared `push_dirty_status` helper for common "mark dirty + push status" action paths +- [x] Replaced duplicated dirty/status blocks across autosave interval presets/hotkeys and path-fix hotkeys/buttons +- [x] Preserved behavior while reducing runtime event-loop duplication + +## Milestone 28T: GUI Helper Test Coverage Expansion +- [x] Added focused tests for extracted non-render GUI helpers (`parse_autosave_interval`, autosave text setter, log-view toggles, export-format switch helper) +- [x] Added focused test for diagnostics action-context builder mapping +- [x] Kept test allocator hygiene by explicitly deleting helper-produced strings in tests + +## Milestone 28U: GUI Helper Test Coverage Expansion II +- [x] Added focused tests for path normalization/fix helpers (`normalize_project_path`, `fix_all_paths`) +- [x] Added focused tests for summary-toggle supported-screen guards and dirty+status push helper behavior +- [x] Resolved test ownership edge case (constant-string bad free) and kept allocator hygiene clean + +## Milestone 28V: GUI Helper Test Coverage Expansion III +- [x] Added focused tests for optional-status push behavior (`push_status_if_nonempty`) and confirmation-request state updates +- [x] Added focused autosave no-op test coverage for disabled/clean-state guard paths (`autosave_tick_with_message`) +- [x] Expanded helper coverage without introducing render/runtime coupling + +## Milestone 28W: GUI Helper Test Coverage Expansion IV +- [x] Added focused tests for log maintenance helpers (`clear_action_log_with_message`, `reset_log_view_with_message`) +- [x] Added focused test for confirm-action resolver `.None` branch behavior +- [x] Increased non-render GUI helper confidence while keeping tests isolated from rendering loop + +## Milestone 28X: GUI Helper Test Coverage Expansion V +- [x] Added focused tests for help-overlay toggle/close helpers and export-path preset/derivation helper flows +- [x] Added focused test for project reset-session helper state effects (dirty reset + screen sync) +- [x] Maintained allocator hygiene in new helper tests (including overwrite/delete ownership handling) + +## Milestone 28Y: GUI Helper Test Coverage Expansion VI +- [x] Added focused tests for autosave toggle messaging and helper-field reset defaults +- [x] Added focused tests for selected-field clear helper behavior (changed vs already-empty paths) +- [x] Expanded non-render helper coverage while keeping full build/test gate green + +## Milestone 28Z: GUI Helper Test Coverage Expansion VII +- [x] Added focused tests for path-health hints/predicates and screen-label helper mapping +- [x] Added focused test for navigation-status helper successful path +- [x] Continued non-render helper coverage growth with allocator-safe test cleanup + +## Milestone 29A: Action-Log Snapshot Memory Hardening + Tests +- [x] Added focused action-log behavior tests (ring-buffer retention and clear/snapshot behavior) +- [x] Fixed `build_action_log_snapshot` temporary-string cleanup to eliminate builder leaks under repeated concatenation +- [x] Kept full build/test gate green with expanded suite + +## Milestone 29B: Diagnostics/Report String Lifecycle Hardening +- [x] Made empty action-log snapshots consistently heap-owned strings for predictable cleanup +- [x] Added explicit cleanup for intermediate diagnostics/report/log-snapshot strings in write/copy helper flows +- [x] Updated helper tests for new snapshot ownership semantics and kept full suite green + +## Milestone 29C: Status Message Ownership Hardening +- [x] Added `set_status` helper and routed `push_status` through owned string replacement semantics +- [x] Standardized GUI runtime status initialization/disposal and converted remaining direct status assignments to owned-status updates +- [x] Updated helper tests to use owned status strings under new lifecycle semantics and kept full suite green + +## Milestone 29D: Action-Log Timestamp Reset Hardening +- [x] Hardened `action_log_dispose` to reset `last_push_at` alongside entries/count state +- [x] Added focused tests for status replacement helper and action-log clear timestamp-reset behavior +- [x] Kept full build/test gate green with expanded helper suite + +## Milestone 29E: Confirm/Open Helper Branch Test Expansion +- [x] Added focused test for `open_project_session` missing-file branch (error propagation + state/timestamp/dirty preservation) +- [x] Added focused test for `resolve_confirm_action_with_message` reset branch dispatch behavior +- [x] Expanded non-render helper branch coverage while keeping full build/test gate green + +## Milestone 29F: Open/Confirm Success-Path Test Expansion +- [x] Added focused success-path tests for `open_project_session` and confirm resolver open-branch dispatch +- [x] Verified loaded-state replacement, dirty reset, export-path sync, and autosave timestamp refresh behavior +- [x] Applied owned-controller disposal in new load-path tests to keep allocator hygiene clean + +## Milestone 29G: Diagnostics/Report Write-Path Test + Leak Hardening +- [x] Added focused tests for diagnostics/report write helpers creating expected output files in temp project dirs +- [x] Hardened diagnostics/report path helper call-sites with explicit path-string cleanup after writes +- [x] Aligned diagnostics write-status assertion to current runtime wording and kept full suite green + +## Milestone 29H: Diagnostics/Open Failure-Path Test Expansion +- [x] Added focused failure-path tests for diagnostics/report write helpers when project directory is missing +- [x] Extended missing-file open-session test to assert project-path normalization side effect +- [x] Kept full build/test gate green with expanded non-render helper branch coverage + +## Milestone 29I: Confirm/Open Path-Behavior Test Tightening +- [x] Strengthened open-session success-path assertions to verify export-path project-directory sync (not just suffix) +- [x] Strengthened confirm-resolver open-branch success assertions with project-directory sync checks +- [x] Added focused confirm-resolver open-branch missing-file test for state/dirty/timestamp preservation + +## Milestone 29J: Autosave Success-Path Helper Test Expansion +- [x] Added focused autosave-tick success-path test validating project write, dirty-clear behavior, and save timestamp update +- [x] Verified autosave project-path normalization behavior under successful save flow +- [x] Kept full build/test gate green with expanded non-render helper coverage + +## Milestone 30A: GUI Aesthetic Foundation Refresh +- [x] Added reusable `draw_card` surface helper with subtle shadow + consistent border treatment +- [x] Applied refreshed scene styling (soft gradient background, tuned sidebar/header separation, unified card surfaces) +- [x] Switched key dashboard/summary/log surfaces to shared card rendering for more consistent visual hierarchy + +## Milestone 30B: GUI Aesthetic Hierarchy Pass +- [x] Added `draw_button_primary` and applied primary styling to high-priority actions (`Next`, `Auto-All`, `Auto-All + Save`) +- [x] Refined base component theming (button/nav/input color tuning, selected input fill treatment) +- [x] Tuned sidebar/headline/recommendation hint color hierarchy for clearer visual emphasis + +## Milestone 30C: GUI Spacing + Sidebar Information Architecture Pass +- [x] Replaced dense sidebar hotkey wall with grouped shortcut cards via `draw_sidebar_shortcuts` +- [x] Improved shortcut readability through sectioned labels (`Workflow`, `Tools`) and tighter typography rhythm +- [x] Preserved full help-overlay detail while reducing main-view visual noise + +## Milestone 30D: Main-Canvas Spacing + Section Framing Pass +- [x] Added framed card surfaces for `Project Inputs` and `Actions` zones to improve visual grouping on the main canvas +- [x] Tuned field-label typography scale and hierarchy (18px labels, section headings, less noisy tip/editing treatments) +- [x] Repositioned inline editing indicator and tightened supporting copy emphasis for cleaner rhythm + +## Milestone 30E: Overlay + Log/Status Readability Polish +- [x] Refined help and confirm overlays with stronger contrast layering, shared card surfaces, and calmer section typography +- [x] Improved action-log readability with subtle alternating row backgrounds and tuned log text colors +- [x] Tuned status/log metadata typography sizing and color balance for cleaner dashboard scanning + +## Milestone 30F: Action-Zone Micro-Hierarchy Polish +- [x] Added reusable `draw_hint_pill` helper for compact contextual guidance chips +- [x] Replaced noisy inline editing text with structured hint pills (`field focus`, safety hint, next/auto hint) +- [x] Added subtle status-header divider line to improve status card scan rhythm + +## Milestone 30G: Confirm/Toast Emphasis Polish +- [x] Added `draw_button_danger` style and applied it to destructive confirm CTA in modal overlay +- [x] Enhanced toast visual treatment with subtle shadow and border for clearer transient message legibility +- [x] Preserved behavior while improving visual emphasis on high-risk actions and transient feedback + +## Milestone 30H: Status Card Badge + Micro-Readability Pass +- [x] Added reusable `draw_status_badge` helper for compact status chips +- [x] Replaced plain dirty/autosave status text with badge-style indicators for faster visual parsing +- [x] Fine-tuned status-card spacing/metadata alignment to maintain clean scan rhythm + +## Milestone 30I: Utility Control Density + Visual Weight Pass +- [x] Added reusable `draw_small_button` helper for compact utility controls +- [x] Shifted low-priority utility controls (path tools, autosave presets, summary toggles, log toolbar) to compact button treatment +- [x] Updated log-toolbar labels for improved clarity while reducing visual heaviness + +## Milestone 30J: Header Context Chip Polish +- [x] Replaced plain top-header active-screen text with contextual hint-chip treatment for clearer glanceability +- [x] Added compact project-pages context chip in header row to reinforce current workflow context +- [x] Tuned header typography weight/size balance while preserving existing field-edit behavior + +## Milestone 30K: Sidebar/Nav Framing + Tip Presentation Polish +- [x] Added framed card surface around the screen-navigation cluster to improve left-rail structure +- [x] Replaced bottom plain-text caution tip with accented hint-pill treatment for visual consistency +- [x] Preserved behavior while reducing loose text noise in the primary canvas + +## Milestone 30L: Section Title Rhythm + Log Header Consolidation +- [x] Added reusable `draw_section_title` helper for consistent section-heading styling +- [x] Applied section-title treatment to key canvas regions (`Project Inputs`, `Actions`, `Action Log`) +- [x] Simplified action-log renderer by removing duplicate internal title drawing for cleaner hierarchy + +## Milestone 30M: Secondary Action Visual Tiering +- [x] Added `draw_button_soft_accent` helper for medium-priority actions +- [x] Applied soft-accent treatment to Save/Open/Help controls to better separate them from neutral and primary CTAs +- [x] Preserved behavior while improving action hierarchy legibility + +## Milestone 30N: Status/Log Metadata Pill Polish +- [x] Replaced dense status metadata lines with compact save/export/path pill treatments for cleaner glanceability +- [x] Added path-health badge stack (`P`/`E`) and accented inline path-fix hint pill in status card +- [x] Added compact log-toolbar shortcut hint pill to improve discoverability without visual clutter + +## Milestone 30O: Topbar Container + Chip Refinement +- [x] Added framed topbar container card to visually anchor header context controls +- [x] Added dedicated `draw_topbar_chip` helper for refined topbar context pills +- [x] Updated header chip placements/styles for cleaner alignment and improved glance readability + +## Milestone 30P: Sidebar Brand/Footer Cohesion Pass +- [x] Added framed sidebar brand card and section-title divider rhythm for a cleaner left-rail header +- [x] Added compact sidebar footer support card (`/` help reminder + overlay close hint) +- [x] Preserved behavior while improving left-rail visual cohesion and onboarding clarity + +## Milestone 30Q: Action/Log Toolbar Surface Unification +- [x] Added reusable `draw_subtle_strip` helper for lightweight grouped-control backgrounds +- [x] Applied subtle strip treatment to action-row and action-log toolbar regions for stronger grouping without heavy chrome +- [x] Preserved behavior while improving scan rhythm across high-density control zones + +## Milestone 30R: Destructive-Action Visual Cue Pass +- [x] Added `draw_button_warning` helper for low-intensity destructive/irreversible action emphasis +- [x] Applied warning-style treatment to `New` action in the primary action row to better signal reset risk +- [x] Preserved behavior while improving safety affordance visibility + +## Milestone 30S: Active Navigation Marker Polish +- [x] Enhanced active sidebar nav item styling with a subtle marker dot and adjusted label offset +- [x] Preserved existing hover/active behavior while improving active-screen discoverability +- [x] Kept full build/test gate green + +## Milestone 30T: Micro-Copy Pill Consistency Pass +- [x] Replaced plain helper micro-copy near export format/path controls with compact hint-pill treatments +- [x] Replaced summary toggle hotkey plain text with compact hint-pill treatment for visual consistency +- [x] Preserved behavior while reducing scattered plain-text noise + +## Milestone 30U: Log Toolbar Layout Alignment Pass +- [x] Re-aligned log toolbar button geometry to fit cleanly within the action-log card bounds +- [x] Tightened toolbar label lengths and shortcut-hint placement to reduce overlap risk in dense log controls +- [x] Preserved behavior while improving right-panel visual alignment + +## Milestone 30V: Status Card Density Rebalance +- [x] Consolidated save/export/path metadata into a single compact status line inside the status card bounds +- [x] Removed overflow-prone stacked metadata pills from the status region to reduce visual crowding +- [x] Preserved behavior while improving status-card containment and scan clarity + +## Milestone 30W: Input-Row Rhythm Surface Pass +- [x] Applied subtle strip surfaces behind each primary input row in the `Project Inputs` region +- [x] Extended strip treatment to path row + action row for stronger vertical rhythm continuity +- [x] Preserved behavior while improving form scanability and visual cadence + +## Milestone 30X: Utility/Modal Secondary Emphasis Pass +- [x] Applied soft-accent visual tier to helper controls (`Reset Helpers`, autosave toggle) for clearer control grouping +- [x] Applied soft-accent styling to confirm modal `Cancel` action for stronger destructive/non-destructive contrast +- [x] Preserved behavior while improving action hierarchy readability + +## Milestone 30Y: Focus/Affordance Refinement Pass +- [x] Enhanced selected-input affordance with subtle outer halo + focus border treatment for clearer field focus +- [x] Extended active navigation cueing with a slim active rail marker inside selected sidebar items +- [x] Preserved behavior while improving interaction-state discoverability + +## Milestone 30Z: Primary Action Guidance Chip Pass +- [x] Replaced plain recommended/hint text near Next/Auto controls with consistent hint-pill treatment +- [x] Added compact key-hint pills (`F9 Next`, `F10 Auto`) under primary action buttons for faster keyboard discoverability +- [x] Preserved behavior while improving action-guidance visual consistency + +## Milestone 31A: UI Text-Overflow Resilience Pass +- [x] Added shared `fit_text_for_width` helper for width-aware truncation with ellipsis +- [x] Applied overflow-safe text rendering to hint/topbar/status badges and toast surface text +- [x] Applied status-line overflow-safe rendering in status card to prevent long-message spillover + +## Milestone 31B: Button Label Overflow Resilience Pass +- [x] Applied width-aware label fitting across button styles (default/primary/danger/warning/soft-accent + disabled states) +- [x] Applied width-aware label fitting for compact utility buttons in enabled/disabled states +- [x] Preserved behavior while preventing long labels from overflowing high-density control regions + +## Milestone 31C: Nav/Input Overflow Resilience Pass +- [x] Applied width-aware label fitting to sidebar nav items (including active-state offset handling) +- [x] Applied non-editing input-field text fitting to prevent long values from spilling outside input surfaces +- [x] Preserved editing ergonomics by keeping full-value rendering while an input is actively selected + +## Milestone 31D: Sidebar Shortcut Overflow Resilience Pass +- [x] Added `draw_sidebar_shortcut_line` helper with width-aware text fitting for left-rail shortcut copy +- [x] Replaced direct sidebar shortcut text draws with overflow-safe helper usage +- [x] Preserved shortcut content while improving resilience to long copy and future wording changes + +## Milestone 31E: Help Overlay Overflow Resilience Pass +- [x] Added `draw_help_line` helper with width-aware text fitting for help-overlay body copy +- [x] Replaced direct long shortcut lines in help overlay with overflow-safe helper usage +- [x] Preserved content/structure while improving resilience to future shortcut-copy growth + +## Milestone 31F: Action Log Line Overflow Resilience Pass +- [x] Added width-aware fitting for rendered action-log lines (including timestamp prefix) +- [x] Prevented long log entries from spilling past right-panel bounds in compact log view +- [x] Preserved log semantics while improving dense-session readability + +## Milestone 31G: Summary/Status Metadata Overflow Resilience Pass +- [x] Added `draw_summary_line` helper and applied overflow-safe rendering to long dynamic summary lines (genre/audience/title/export target/block reason) +- [x] Applied overflow-safe rendering to status-card pipeline/next and metadata footer lines +- [x] Preserved behavior while improving resilience under long project names/paths/messages + +## Milestone 31H: Overlay/Layout-Row Overflow Resilience Pass +- [x] Applied overflow-safe fitting to confirm-overlay action sentence to guard long action labels/future copy changes +- [x] Applied overflow-safe summary-line rendering for layout pattern rows (`- P#: pattern (n)`) in both asc/desc views +- [x] Applied overflow-safe fitting to log-view metadata line (`View: n lines, order first`) in utility bar + +## Milestone 31I: Chip Micro-Overflow Resilience Pass +- [x] Applied width-aware fitting to compact stat-chip label/value rendering (`draw_stat_chip`) for narrow chip bounds +- [x] Applied width-aware fitting to readiness-chip line rendering (`draw_readiness_chip`) using chip width argument +- [x] Preserved chip semantics while preventing crowding/spill in compact telemetry surfaces + +## Milestone 31J: Screen Summary Uniform Overflow Pass +- [x] Expanded overflow-safe summary rendering across remaining dynamic Screen Summary lines (story/script/panels/layout/bubbles/export) +- [x] Replaced direct dynamic DrawText formatting with `draw_summary_line` for consistent truncation behavior +- [x] Preserved summary semantics while improving resilience under high-count data and long formatted values + +## Milestone 31K: Summary Helper Consistency Pass +- [x] Applied width-aware fitting to section-title labels for tighter heading-bound resilience +- [x] Added `draw_summary_subline` helper for 16px secondary summary text with consistent width fitting +- [x] Replaced export "Last layout pattern" subline rendering with helper usage to reduce one-off formatting logic + +## Milestone 31L: Fitted-Text Helper Consolidation Pass +- [x] Added shared `draw_text_fitted` helper to unify fit+draw behavior and reduce repeated truncation boilerplate +- [x] Refactored section-title/summary/help/sidebar shortcut helpers to use the consolidated text-fit renderer +- [x] Preserved behavior while reducing one-off fitting/draw patterns and tightening future maintenance seams + +## Milestone 31M: Button Text Renderer Consolidation Pass +- [x] Refactored all primary button draw variants to use shared `draw_text_fitted` (default/primary/danger/warning/soft-accent) +- [x] Refactored enabled/disabled compact button text rendering and disabled-state standard button rendering to use shared helper +- [x] Preserved behavior while reducing repeated fit+draw branches in high-touch control rendering paths + +## Milestone 31N: Surface/Chip Text Renderer Consolidation Pass +- [x] Refactored nav-item labels and non-selected input text rendering to use shared `draw_text_fitted` +- [x] Refactored hint/topbar/status chips plus stat/readiness chip text rendering to use shared helper +- [x] Preserved behavior while reducing repeated fit+draw fragments across non-button UI surfaces + +## Milestone 31O: Status/Log Fitted-Text Consolidation Pass +- [x] Refactored action-log row rendering and toast text rendering to use shared `draw_text_fitted` +- [x] Refactored confirm-overlay action sentence and status-card text rows (status/pipeline/next/meta) to use shared helper +- [x] Refactored log utility metadata line (`View: n lines, order first`) to use shared helper while preserving existing copy/behavior + +## Milestone 31P: Text-Fit Helper Test Coverage Pass +- [x] Added direct helper tests for `fit_text_for_width` truncation behavior (ellipsis + minimum-width rule) +- [x] Added helper passthrough tests for no-truncation and `px_per_char <= 0` paths +- [x] Revalidated full suite after test additions (76 passing) + +## Milestone 32A: GUI File Split Kickoff (Text Helpers) +- [x] Started structural decomposition of `src/gui/runtime.odin` by extracting text-fit helpers into `src/gui/text_helpers.odin` +- [x] Moved `fit_text_for_width` and `draw_text_fitted` into the new module without behavior change +- [x] Revalidated full build/test gate after file split (76 passing) + +## Milestone 32B: GUI File Split (Widget Primitives) +- [x] Extracted shared widget primitives from `src/gui/runtime.odin` into `src/gui/widgets.odin` +- [x] Moved card/strip/chip/section-summary draw helpers (`draw_card`, `draw_subtle_strip`, `draw_hint_pill`, `draw_topbar_chip`, `draw_status_badge`, `draw_section_title`, `draw_summary_line`, `draw_summary_subline`) +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32C: GUI File Split (Overlays + Log Views) +- [x] Extracted overlay/log rendering helpers from `src/gui/runtime.odin` into `src/gui/overlays.odin` +- [x] Moved action-log/toast/status-color + help/sidebar/confirm overlay draw helpers without behavior changes +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32D: GUI File Split (Summary + Readiness Views) +- [x] Extracted summary/readiness rendering helpers from `src/gui/runtime.odin` into `src/gui/summary_views.odin` +- [x] Moved status progress/readiness helpers and screen summary rendering (`draw_stat_chip`, `draw_readiness_chip`, `ready_stage_count`, `draw_progress_bar`, `draw_readiness_row`, `export_block_reason`, `draw_screen_summary`) +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32E: GUI File Split (Controls) +- [x] Extracted control rendering helpers from `src/gui/runtime.odin` into `src/gui/controls.odin` +- [x] Moved button/nav/input primitives and control helpers (`button_clicked`, button variants, `draw_small_button*`, `button_readiness_hint`, `draw_button_recommended`, `draw_nav_item`, `draw_input_field`) +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32F: GUI File Split (Path + Export Helper Layer) +- [x] Extracted path/export normalization and sync helpers from `src/gui/runtime.odin` into `src/gui/path_helpers.odin` +- [x] Moved format/path utility + path-message helpers (`format_suffix`, normalization helpers, preset/sync/fix helpers, path-health checks) +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32G: GUI File Split (Diagnostics + Report Helpers) +- [x] Extracted diagnostics/report helper layer from `src/gui/runtime.odin` into `src/gui/diagnostics.odin` +- [x] Moved diagnostics snapshot/report builders, context struct/builder, diagnostics/report file writers, and clipboard snapshot helpers +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32H: GUI File Split (Session + Status Helpers) +- [x] Extracted session/status/helper-state layer from `src/gui/runtime.odin` into `src/gui/session_helpers.odin` +- [x] Moved status/log push helpers, navigation/confirmation toggles, selected-field clear/paste helpers, and `Action_Log` lifecycle helpers +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32I: GUI File Split (Workflow + Action Helpers) +- [x] Extracted workflow/action helper layer from `src/gui/runtime.odin` into `src/gui/actions.odin` +- [x] Moved generation/layout/export runners, next/auto-all helpers, summary toggle helpers, interval parsers, and autosave/session action helpers +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32J: GUI File Split (Local Generation + Utility Helpers) +- [x] Extracted local generation and utility helper layer from `src/gui/runtime.odin` into `src/gui/local_helpers.odin` +- [x] Moved local script/panel builders, panel collection/count helpers, text append/pop helpers, recommended-label helper, and pending-action label helper +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32K: GUI File Split (Shared Types) +- [x] Extracted shared GUI types from `src/gui/runtime.odin` into `src/gui/types.odin` +- [x] Moved `Summary_View_Options` and `Pending_Confirm_Action` declarations to the dedicated types module +- [x] Revalidated full build/test gate after split (76 passing) + +## Milestone 32L: Runtime Import Cleanup Checkpoint +- [x] Removed stale `runtime.odin` imports left behind after module extraction (`os`, `filepath`, `strconv`, `adapters`) +- [x] Kept runtime import surface aligned to active dependencies only (`fmt`, `strings`, `raylib`, `core`, `shared`, `ui`) +- [x] Revalidated full build/test gate after cleanup (76 passing) + +## Milestone 32M: Fullscreen Startup Mode +- [x] Updated GUI runtime startup to size window to current monitor and toggle fullscreen on launch +- [x] Verified build + GUI launch path with fullscreen initialization +- [x] Revalidated build/test gate (`./build.sh`, `odin test tests`) + +## Milestone 33A: Visual Redesign (Modern Theme Pass) +- [x] Refreshed global shell styling with richer gradients, soft ambient highlights, and cleaner sidebar/topbar contrast +- [x] Modernized core surfaces (cards/strips/chips) and controls (buttons/nav/input focus) with updated radii, shadows, and contemporary palette tuning +- [x] Refined UI microcopy labels in primary form regions for cleaner modern presentation while preserving behavior + +## Milestone 33B: Layout Rhythm + Typography Pass +- [x] Refined section heading typography/underline treatment for stronger hierarchy and cleaner modern framing +- [x] Tuned topbar/input/action/status/log panel vertical rhythm (card heights, heading baselines, content offsets) for more consistent spacing cadence +- [x] Preserved behavior while improving visual balance and readability in dense dashboard regions + +## Milestone 33C: Visual Course-Correction (Clean Minimal Pass) +- [x] Rebalanced redesign styling toward a cleaner minimal look (reduced visual noise, flatter shell treatment, calmer surface/controls palette) +- [x] Reverted over-aggressive spacing/offset shifts in topbar/status/log regions to restore stable layout rhythm while keeping modern polish +- [x] Revalidated full build/test gate after visual corrections (76 passing) + +## Milestone 33D: Clutter Reduction + Readability Pass +- [x] Reduced dashboard visual clutter by removing non-essential row-strip treatments and duplicate key-hint pills in the action region +- [x] Consolidated top helper guidance into a single compact hint rail and simplified field-focus copy +- [x] Improved form label readability with lighter typography weight/size and calmer color tone while preserving behavior + +## Milestone 33E: Minimalist Visual Reset Pass +- [x] Flattened shell styling to a cleaner neutral canvas (removed decorative gradients/highlights and reduced ornamental contrast) +- [x] Simplified card/strip component treatment to low-noise borders with restrained depth for a more professional utility-tool look +- [x] Rebalanced primary/nav palette saturation and corner radii for calmer modern controls without changing behavior + +## Milestone 33F: Linear-like Dark Crisp Theme Pass +- [x] Shifted shell/surfaces/controls to a dark neutral palette with crisp blue accents for primary/active affordances +- [x] Updated summary/overlay/log text and chip/readiness/status color treatment for dark-background readability and contrast +- [x] Revalidated full build/test gate after dark-theme pass (76 passing) + +## Milestone 33G: Fullscreen Reliability Follow-up +- [x] Updated GUI window startup flow to maximize on launch and enforce borderless-windowed state for better full-screen coverage behavior +- [x] Preserved existing rendering/input behavior while improving startup window mode handling on desktop +- [x] Revalidated full build/test gate after window-mode adjustments (76 passing) + +## Milestone 33H: Fullscreen Utilization + Dark Theme Refinement +- [x] Added runtime full-screen setup verification and adaptive width usage in the main dashboard layout (`main_w_loop`/status-log split) to better use high-resolution displays +- [x] Centered/anchored overlays and confirm modal to dynamic screen dimensions (no fixed 1240x820 dimming bounds) +- [x] Revalidated build/test gate and launch path (`GUI window size after setup: 1920x1080`, 76 tests passing) + +## Milestone 33I: Vertical Responsiveness + Overlay Anchoring Pass +- [x] Added adaptive vertical anchoring for lower dashboard regions (status/summary/action-log blocks now track `screen_h` via `lower_y_loop` baseline) +- [x] Updated sidebar shortcut stacks and overlay/modal placement to derive positions from runtime screen height instead of fixed 820-based coordinates +- [x] Revalidated build/test gate and runtime launch diagnostics (`GUI window size after setup: 1920x1080`, 76 tests passing) + +## Milestone 33J: Overlap Cleanup + Debug Noise Removal +- [x] Removed temporary runtime window-size debug print after fullscreen verification +- [x] Repositioned summary controls/hint rail and bottom tip pill to dynamic lower-region anchors to avoid fixed-position overlap on tall screens +- [x] Revalidated full build/test gate after overlap cleanup (76 passing) + +## Milestone 33K: Overlap Guard Sweep +- [x] Added lower-region baseline clamp (`lower_y_loop >= 568`) to prevent top/lower panel collisions when runtime height shrinks +- [x] Revalidated full build/test gate and GUI launch path after overlap guard adjustment +- [x] Confirmed no regressions in automated suite (76 passing) + +## Milestone 33L: Export Path Robustness Fix +- [x] Added export output parent-directory creation in adapter layer (`ensure_export_output_parent_dir`) before file write/export execution +- [x] Eliminated `write pdf: Not_Exist` failures for nested/non-existent export directories during GUI/TUI quick-local flows +- [x] Revalidated gate and manual nested-path quick-local run (76 tests passing) + +## Milestone 33M: 1366x768 Layout Guard Pass +- [x] Relaxed lower-dashboard baseline clamp (`lower_y_loop >= 430`) to avoid bottom-edge clipping on shorter displays while preserving separation from top region +- [x] Updated sidebar shortcut stack minimum anchor (`base_y >= 120`) to keep left-rail cards inside viewport on low-height screens +- [x] Revalidated full build/test gate after low-height guard adjustments (76 passing) + +## Milestone 33N: Compact Mode Hint Suppression +- [x] Added compact-mode switch (`screen_h < 860`) in GUI runtime layout loop +- [x] Suppressed non-essential hint rails/pills in compact mode (field-focus rail, extension helper pills, summary/log shortcut hint pills, bottom tip rail) +- [x] Revalidated full build/test gate after compact-mode behavior update (76 passing) + +## Milestone 34: Script Results Visibility (GUI) +- [x] 34A: Script summary card promoted to page inspector with real per-page panel content previews +- [x] 34B: Add script page navigation controls (prev/next buttons + keyboard) +- [x] 34C: Add dedicated script detail pane (full-page text/dialogue surface) +- [x] 34D: Add script utility actions (copy visible page, copy full script) +- [x] 34F: Add GUI script-source toggle (Local/DeepSeek) with key-presence guard and next/auto-all integration +- [ ] 34E: Validation pass for script view at 1366x768 / 1920x1080 / ultrawide + +## Milestone 35: Panels Results Visibility (GUI) +- [x] 35A: Add panel gallery/list with panel metadata/status in dedicated Panels detail surface +- [x] 35B: Show panel generation health states (ready/missing/error) with retry actions +- [x] 35C: Add panel detail inspector (prompt, seed, dimensions, source URL/path) +- [x] 35D: Add panel pagination/virtualized list behavior for large projects + +## Milestone 36: Layout Results Visibility (GUI) +- [ ] 36A: Add page layout visual preview cards with panel cell geometry +- [ ] 36B: Add per-page selector and pattern metadata side rail +- [ ] 36C: Add layout validation badges (coverage, missing panel bindings, bounds) + +## Milestone 37: Bubble Editing MVP (GUI) +- [ ] 37A: Add bubble list per selected panel/page +- [ ] 37B: Add create/edit/delete bubble text/type/speaker controls +- [ ] 37C: Persist bubble edits to project save/load/export path + +## Milestone 38: Responsive System + Theme Tokens +- [x] 38A: Extract screen-size profiles (compact/standard/wide) into shared layout constants +- [x] 38B: Remove remaining hardcoded geometry hotspots from runtime orchestrator +- [x] 38C: Normalize semantic color tokens across widgets/controls/overlays +- [x] 38D: Final contrast/readability QA for dark crisp theme + +## Milestone 39: Reliability + Test Hardening +- [ ] 39A: Add GUI integration smoke tests for full local flow + save/open/export +- [ ] 39B: Add error-path tests (missing assets, invalid paths, blocked export) +- [ ] 39C: Expand ownership/lifecycle audits for new GUI state surfaces + +## Milestone 40: Release Packaging + Production Docs +- [ ] 40A: Ship-ready package artifacts + checksums + version stamping +- [ ] 40B: GUI user guide (workflow, shortcuts, troubleshooting) +- [ ] 40C: Production release checklist and known-issues policy + +## Milestone 34A: Script Inspector Upgrade (initial pass) +- [x] Upgraded Script screen summary into a real page inspector view (selected page, panel previews, first-dialogue snippets) +- [x] Added script page cursor state to GUI summary options with runtime clamping +- [x] Revalidated build/test gate after Script inspector upgrade (76 passing) + +## Milestone 34B: Script Page Navigation Controls (initial pass) +- [x] Added Script summary prev/next page buttons (`< Pg`, `Pg >`) in lower control rail +- [x] Added keyboard navigation (`Ctrl+[`, `Ctrl+]`) with wrap-around behavior and status/log feedback +- [x] Revalidated full build/test gate after navigation control wiring (76 passing) + +## Milestone 34C: Script Detail Pane (initial pass) +- [x] Added dedicated Script detail panel in lower-right workspace showing selected page panel descriptions and dialogue snippets +- [x] Kept action-log surface on non-Script screens while using Script-specific detail rendering on Script screen +- [x] Revalidated full build/test gate after detail-pane integration (76 passing) + +## Milestone 34D: Script Copy Utilities (initial pass) +- [x] Added Script-only copy actions (`Copy Page`, `Copy All`) in detail panel header +- [x] Added text builders for selected-page detail and full-script snapshots +- [x] Revalidated full build/test gate after copy-action wiring (76 passing) + +## Milestone 35A: Panels Detail Surface (initial pass) +- [x] Added Panels-focused detail panel in lower-right workspace with selected-panel metadata and readiness state +- [x] Added panel navigation controls (`< Pn`, `Pn >`) and keyboard navigation (`Ctrl+[`, `Ctrl+]`) with wrap-around + status feedback +- [x] Added compact panel list rows (selected marker, page/panel index, ready/missing state) for quick inspection +- [x] Revalidated full build/test gate after panels visibility integration (76 passing) + +## Milestone 34F: GUI Script Source Toggle (Local/DeepSeek) +- [x] Added script-source selector controls in GUI (`Local`, `DeepSeek`) plus keyboard toggle (`Ctrl+G`) +- [x] Added DeepSeek key guard on toggle/action (`DEEPSEEK_API_KEY` required) with explicit status feedback +- [x] Wired source mode into Script action and guided Next/Auto-All/Auto-All+Save flow decisions +- [x] Added topbar script-source status badge with live key availability (`Script: (key:yes|missing)`) and inline key-missing helper text +- [x] Improved DeepSeek HTTP error surfacing to include provider message text in GUI/CLI failures +- [x] Hardened DeepSeek request-body serialization using typed JSON marshal (instead of manual string assembly) to prevent malformed request payloads +- [x] Expanded DeepSeek response parser compatibility for multiple JSON shapes (camelCase, snake_case, and wrapped `script` payloads) +- [x] Added DeepSeek normalization resilience: if provider content parses but fails minimal schema, auto-fallback to deterministic script instead of hard-fail +- [x] Fixed normalization-owned string safety for default title/synopsis values to avoid invalid frees and downstream autosave crashes +- [x] Revalidated full build/test gate and GUI launch smoke after script-source toggle integration (76 passing) diff --git a/odin/generated/demo_comic.pdf b/odin/generated/demo_comic.pdf new file mode 100644 index 0000000..26560bb --- /dev/null +++ b/odin/generated/demo_comic.pdf @@ -0,0 +1,27 @@ +%PDF-1.4 +1 0 obj +<< /Type /Catalog /Pages 2 0 R >> +endobj +2 0 obj +<< /Type /Pages /Kids [3 0 R] /Count 1 >> +endobj +3 0 obj +<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >> +endobj +4 0 obj +<< /Length 55 >> +stream +BT /F1 12 Tf 50 780 Td (Comic Export - Panels: 4) Tj ET +endstream +endobj +5 0 obj +<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >> +endobj +xref +0 6 +0000000000 65535 f +trailer +<< /Size 6 /Root 1 0 R >> +startxref +416 +%%EOF diff --git a/odin/generated/demo_project.comic.json b/odin/generated/demo_project.comic.json new file mode 100644 index 0000000..b3f212e --- /dev/null +++ b/odin/generated/demo_project.comic.json @@ -0,0 +1,296 @@ +{ + "schemaVersion": 1, + "assetCacheDir": "generated/assets", + "state": { + "project": { + "project_id": "proj_todo", + "project_name": "Untitled Comic", + "created_at_iso": "", + "last_modified_iso": "" + }, + "user_mode": 0, + "story_idea": "A neon detective cat investigates a data-heist in a rain-soaked cyberpunk city", + "story_genre": "Cyberpunk Noir", + "target_audience": "Teens and Adults", + "art_style": "manga", + "script": { + "title": "Local Script", + "synopsis": "A neon detective cat investigates a data-heist in a rain-soaked cyberpunk city", + "characters": [ + { + "id": "char_001", + "name": "Protagonist", + "role": 0, + "description": "Main character", + "prompt_template": { + "age": "", + "gender": "", + "hair_color": "", + "hair_style": "", + "skin_tone": "", + "eye_color": "", + "body_type": "", + "outfit": "", + "accessories": "", + "distinguishing_features": "" + }, + "reference_image_url": "", + "character_sheet_urls": [ + + ], + "seed": 0, + "color_palette": { + "hair": "", + "eyes": "", + "skin": "", + "outfit": "" + }, + "appearance_count": 0, + "first_appearance_panel": "" + } + ], + "pages": [ + { + "page_number": 1, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_local_001", + "panel_number": 1, + "shot_type": 2, + "description": "A neon detective cat investigates a data-heist in a rain-soaked cyberpunk city", + "characters_present": [ + "char_001" + ], + "dialogue": [ + { + "speaker_id": "char_001", + "text": "Let's do this.", + "bubble_type": 0, + "emotion": "neutral" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + }, + { + "page_number": 2, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_local_002", + "panel_number": 1, + "shot_type": 2, + "description": "A neon detective cat investigates a data-heist in a rain-soaked cyberpunk city", + "characters_present": [ + "char_001" + ], + "dialogue": [ + { + "speaker_id": "char_001", + "text": "Let's do this.", + "bubble_type": 0, + "emotion": "neutral" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + }, + { + "page_number": 3, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_local_003", + "panel_number": 1, + "shot_type": 2, + "description": "A neon detective cat investigates a data-heist in a rain-soaked cyberpunk city", + "characters_present": [ + "char_001" + ], + "dialogue": [ + { + "speaker_id": "char_001", + "text": "Let's do this.", + "bubble_type": 0, + "emotion": "neutral" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + }, + { + "page_number": 4, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_local_004", + "panel_number": 1, + "shot_type": 2, + "description": "A neon detective cat investigates a data-heist in a rain-soaked cyberpunk city", + "characters_present": [ + "char_001" + ], + "dialogue": [ + { + "speaker_id": "char_001", + "text": "Let's do this.", + "bubble_type": 0, + "emotion": "neutral" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + } + ] + }, + "characters": [ + { + "id": "char_001", + "name": "Protagonist", + "role": 0, + "description": "Main character", + "prompt_template": { + "age": "", + "gender": "", + "hair_color": "", + "hair_style": "", + "skin_tone": "", + "eye_color": "", + "body_type": "", + "outfit": "", + "accessories": "", + "distinguishing_features": "" + }, + "reference_image_url": "", + "character_sheet_urls": [ + + ], + "seed": 0, + "color_palette": { + "hair": "", + "eyes": "", + "skin": "", + "outfit": "" + }, + "appearance_count": 0, + "first_appearance_panel": "" + } + ], + "panel_images": { + "panel_local_004": { + "url": "file:///tmp/comic-local-panels-9713917116/panel_004_panel_local_004.png", + "width": 1024, + "height": 1024, + "seed": 4, + "prompt": "local" + }, + "panel_local_001": { + "url": "file:///tmp/comic-local-panels-9713917116/panel_001_panel_local_001.png", + "width": 1024, + "height": 1024, + "seed": 1, + "prompt": "local" + }, + "panel_local_003": { + "url": "file:///tmp/comic-local-panels-9713917116/panel_003_panel_local_003.png", + "width": 1024, + "height": 1024, + "seed": 3, + "prompt": "local" + }, + "panel_local_002": { + "url": "file:///tmp/comic-local-panels-9713917116/panel_002_panel_local_002.png", + "width": 1024, + "height": 1024, + "seed": 2, + "prompt": "local" + } + }, + "page_layouts": [ + { + "page_number": 1, + "pattern_id": "grid-2x2", + "panels": [ + { + "panel_id": "panel_local_001", + "panel_number": 1, + "layout_cell": { + "x": 0.02000000, + "y": 0.02000000, + "w": 0.47000000, + "h": 0.47000000 + } + }, + { + "panel_id": "panel_local_002", + "panel_number": 1, + "layout_cell": { + "x": 0.50999999, + "y": 0.02000000, + "w": 0.47000000, + "h": 0.47000000 + } + }, + { + "panel_id": "panel_local_003", + "panel_number": 1, + "layout_cell": { + "x": 0.02000000, + "y": 0.50999999, + "w": 0.47000000, + "h": 0.47000000 + } + }, + { + "panel_id": "panel_local_004", + "panel_number": 1, + "layout_cell": { + "x": 0.50999999, + "y": 0.50999999, + "w": 0.47000000, + "h": 0.47000000 + } + } + ], + "width": 2480, + "height": 3508 + } + ], + "speech_bubbles": { + + }, + "export_format": 0, + "page_size": 0, + "color_profile": 0, + "workflow": { + "current_step": 7, + "completed_steps": [ + + ], + "is_generating": false, + "generation_progress": 0.00000000, + "error_message": "" + } + } +} \ No newline at end of file diff --git a/odin/generated/nested/demo.pdf b/odin/generated/nested/demo.pdf new file mode 100644 index 0000000..0fbf063 --- /dev/null +++ b/odin/generated/nested/demo.pdf @@ -0,0 +1,27 @@ +%PDF-1.4 +1 0 obj +<< /Type /Catalog /Pages 2 0 R >> +endobj +2 0 obj +<< /Type /Pages /Kids [3 0 R] /Count 1 >> +endobj +3 0 obj +<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >> +endobj +4 0 obj +<< /Length 55 >> +stream +BT /F1 12 Tf 50 780 Td (Comic Export - Panels: 2) Tj ET +endstream +endobj +5 0 obj +<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >> +endobj +xref +0 6 +0000000000 65535 f +trailer +<< /Size 6 /Root 1 0 R >> +startxref +416 +%%EOF diff --git a/odin/generated/nested/demo_project.comic.json b/odin/generated/nested/demo_project.comic.json new file mode 100644 index 0000000..afa87ef --- /dev/null +++ b/odin/generated/nested/demo_project.comic.json @@ -0,0 +1,206 @@ +{ + "schemaVersion": 1, + "assetCacheDir": "generated/nested/assets", + "state": { + "project": { + "project_id": "proj_todo", + "project_name": "Untitled Comic", + "created_at_iso": "", + "last_modified_iso": "" + }, + "user_mode": 0, + "story_idea": "", + "story_genre": "action", + "target_audience": "general", + "art_style": "manga", + "script": { + "title": "Local Script", + "synopsis": "A local adventure", + "characters": [ + { + "id": "char_001", + "name": "Protagonist", + "role": 0, + "description": "Main character", + "prompt_template": { + "age": "", + "gender": "", + "hair_color": "", + "hair_style": "", + "skin_tone": "", + "eye_color": "", + "body_type": "", + "outfit": "", + "accessories": "", + "distinguishing_features": "" + }, + "reference_image_url": "", + "character_sheet_urls": [ + + ], + "seed": 0, + "color_palette": { + "hair": "", + "eyes": "", + "skin": "", + "outfit": "" + }, + "appearance_count": 0, + "first_appearance_panel": "" + } + ], + "pages": [ + { + "page_number": 1, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_local_001", + "panel_number": 1, + "shot_type": 2, + "description": "A local adventure", + "characters_present": [ + "char_001" + ], + "dialogue": [ + { + "speaker_id": "char_001", + "text": "Let's do this.", + "bubble_type": 0, + "emotion": "neutral" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + }, + { + "page_number": 2, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_local_002", + "panel_number": 1, + "shot_type": 2, + "description": "A local adventure", + "characters_present": [ + "char_001" + ], + "dialogue": [ + { + "speaker_id": "char_001", + "text": "Let's do this.", + "bubble_type": 0, + "emotion": "neutral" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + } + ] + }, + "characters": [ + { + "id": "char_001", + "name": "Protagonist", + "role": 0, + "description": "Main character", + "prompt_template": { + "age": "", + "gender": "", + "hair_color": "", + "hair_style": "", + "skin_tone": "", + "eye_color": "", + "body_type": "", + "outfit": "", + "accessories": "", + "distinguishing_features": "" + }, + "reference_image_url": "", + "character_sheet_urls": [ + + ], + "seed": 0, + "color_palette": { + "hair": "", + "eyes": "", + "skin": "", + "outfit": "" + }, + "appearance_count": 0, + "first_appearance_panel": "" + } + ], + "panel_images": { + "panel_local_001": { + "url": "file:///tmp/comic-local-panels-0459413800/panel_001_panel_local_001.png", + "width": 1024, + "height": 1024, + "seed": 1, + "prompt": "local" + }, + "panel_local_002": { + "url": "file:///tmp/comic-local-panels-0459413800/panel_002_panel_local_002.png", + "width": 1024, + "height": 1024, + "seed": 2, + "prompt": "local" + } + }, + "page_layouts": [ + { + "page_number": 1, + "pattern_id": "grid-2x2", + "panels": [ + { + "panel_id": "panel_local_001", + "panel_number": 1, + "layout_cell": { + "x": 0.02000000, + "y": 0.02000000, + "w": 0.47000000, + "h": 0.47000000 + } + }, + { + "panel_id": "panel_local_002", + "panel_number": 1, + "layout_cell": { + "x": 0.50999999, + "y": 0.02000000, + "w": 0.47000000, + "h": 0.47000000 + } + } + ], + "width": 2480, + "height": 3508 + } + ], + "speech_bubbles": { + + }, + "export_format": 0, + "page_size": 0, + "color_profile": 0, + "workflow": { + "current_step": 7, + "completed_steps": [ + + ], + "is_generating": false, + "generation_progress": 0.00000000, + "error_message": "" + } + } +} \ No newline at end of file diff --git a/odin/gui_export.pdf b/odin/gui_export.pdf new file mode 100644 index 0000000..0fbf063 --- /dev/null +++ b/odin/gui_export.pdf @@ -0,0 +1,27 @@ +%PDF-1.4 +1 0 obj +<< /Type /Catalog /Pages 2 0 R >> +endobj +2 0 obj +<< /Type /Pages /Kids [3 0 R] /Count 1 >> +endobj +3 0 obj +<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >> +endobj +4 0 obj +<< /Length 55 >> +stream +BT /F1 12 Tf 50 780 Td (Comic Export - Panels: 2) Tj ET +endstream +endobj +5 0 obj +<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >> +endobj +xref +0 6 +0000000000 65535 f +trailer +<< /Size 6 /Root 1 0 R >> +startxref +416 +%%EOF diff --git a/odin/gui_project.comic.json b/odin/gui_project.comic.json new file mode 100644 index 0000000..f706e82 --- /dev/null +++ b/odin/gui_project.comic.json @@ -0,0 +1,387 @@ +{ + "schemaVersion": 1, + "assetCacheDir": "assets", + "state": { + "project": { + "project_id": "proj_todo", + "project_name": "Untitled Comic", + "created_at_iso": "", + "last_modified_iso": "" + }, + "user_mode": 0, + "story_idea": "two balls rolling under the sun", + "story_genre": "action", + "target_audience": "general", + "art_style": "manga", + "script": { + "title": "Rolling Duel", + "synopsis": "Generated comic synopsis", + "characters": [ + + ], + "pages": [ + { + "page_number": 1, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_001_001", + "panel_number": 1, + "shot_type": 2, + "description": "A blazing sun dominates the sky, casting harsh light on a vast, empty desert. Two small dots in the distance kick up dust.", + "characters_present": [ + + ], + "dialogue": [ + + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_001_002", + "panel_number": 2, + "shot_type": 2, + "description": "Close-up on two balls: one red with a fiery pattern, one blue with a water-like swirl. They are rolling fast, side by side. Cracks form in the ground beneath them.", + "characters_present": [ + + ], + "dialogue": [ + + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_001_003", + "panel_number": 3, + "shot_type": 2, + "description": "The red ball veers sharply left, kicking up a spray of sand. The blue ball mirrors the move, sparks flying from its surface.", + "characters_present": [ + + ], + "dialogue": [ + { + "speaker_id": "", + "text": "VROOM!", + "bubble_type": 0, + "emotion": "" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_001_004", + "panel_number": 4, + "shot_type": 2, + "description": "Red ball takes a ramp-like dune and launches into the air, spinning. Blue ball follows, but slightly lower.", + "characters_present": [ + + ], + "dialogue": [ + { + "speaker_id": "", + "text": "WHOOSH!", + "bubble_type": 0, + "emotion": "" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_001_005", + "panel_number": 5, + "shot_type": 2, + "description": "Aerial view: both balls are airborne, shadows on the sand below. Red ball is slightly ahead.", + "characters_present": [ + + ], + "dialogue": [ + + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_001_006", + "panel_number": 6, + "shot_type": 2, + "description": "They land simultaneously, creating twin craters. Dust clouds obscure them. The sun glints off their surfaces.", + "characters_present": [ + + ], + "dialogue": [ + { + "speaker_id": "", + "text": "BOOM!", + "bubble_type": 0, + "emotion": "" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + }, + { + "page_number": 2, + "layout_type": 0, + "panels": [ + { + "panel_id": "panel_002_001", + "panel_number": 1, + "shot_type": 2, + "description": "From the dust, the red ball emerges first, rolling faster. The blue ball is close behind, leaving a trail of steam.", + "characters_present": [ + + ], + "dialogue": [ + + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_002_002", + "panel_number": 2, + "shot_type": 2, + "description": "Close-up on the red ball: its surface is glowing hot, with tiny flames licking the edges.", + "characters_present": [ + + ], + "dialogue": [ + { + "speaker_id": "", + "text": "HISS", + "bubble_type": 0, + "emotion": "" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_002_003", + "panel_number": 3, + "shot_type": 2, + "description": "The blue ball rams into the red ball from the side. They lock, spinning together in a whirlwind of sand.", + "characters_present": [ + + ], + "dialogue": [ + { + "speaker_id": "", + "text": "CLANG!", + "bubble_type": 0, + "emotion": "" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_002_004", + "panel_number": 4, + "shot_type": 2, + "description": "They separate, skidding to a halt. Both balls are facing each other, a few meters apart. The sun is directly overhead.", + "characters_present": [ + + ], + "dialogue": [ + { + "speaker_id": "", + "text": "SCREECH", + "bubble_type": 0, + "emotion": "" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_002_005", + "panel_number": 5, + "shot_type": 2, + "description": "Silence. A single bead of sweat (or condensation) drips from the blue ball. The red ball's glow intensifies.", + "characters_present": [ + + ], + "dialogue": [ + + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + }, + { + "panel_id": "panel_002_006", + "panel_number": 6, + "shot_type": 2, + "description": "Both balls lunge forward at the same time. The panel is a blur of motion lines and dust. The final word:", + "characters_present": [ + + ], + "dialogue": [ + { + "speaker_id": "", + "text": "CRASH!!!", + "bubble_type": 0, + "emotion": "" + } + ], + "caption": "", + "sound_effects": [ + + ], + "transition_from_previous": 0 + } + ] + } + ] + }, + "characters": [ + + ], + "panel_images": { + "panel_001_001": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_001_panel_001_001.png", + "width": 1024, + "height": 1024, + "seed": 1, + "prompt": "local" + }, + "panel_002_006": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_012_panel_002_006.png", + "width": 1024, + "height": 1024, + "seed": 12, + "prompt": "local" + }, + "panel_001_006": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_006_panel_001_006.png", + "width": 1024, + "height": 1024, + "seed": 6, + "prompt": "local" + }, + "panel_002_001": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_007_panel_002_001.png", + "width": 1024, + "height": 1024, + "seed": 7, + "prompt": "local" + }, + "panel_001_002": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_002_panel_001_002.png", + "width": 1024, + "height": 1024, + "seed": 2, + "prompt": "local" + }, + "panel_002_005": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_011_panel_002_005.png", + "width": 1024, + "height": 1024, + "seed": 11, + "prompt": "local" + }, + "panel_001_004": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_004_panel_001_004.png", + "width": 1024, + "height": 1024, + "seed": 4, + "prompt": "local" + }, + "panel_002_003": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_009_panel_002_003.png", + "width": 1024, + "height": 1024, + "seed": 9, + "prompt": "local" + }, + "panel_001_003": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_003_panel_001_003.png", + "width": 1024, + "height": 1024, + "seed": 3, + "prompt": "local" + }, + "panel_002_004": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_010_panel_002_004.png", + "width": 1024, + "height": 1024, + "seed": 10, + "prompt": "local" + }, + "panel_002_002": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_008_panel_002_002.png", + "width": 1024, + "height": 1024, + "seed": 8, + "prompt": "local" + }, + "panel_001_005": { + "url": "file:///tmp/comic-gui-local-panels-1597088181/panel_005_panel_001_005.png", + "width": 1024, + "height": 1024, + "seed": 5, + "prompt": "local" + } + }, + "panel_errors": { + + }, + "page_layouts": [ + + ], + "speech_bubbles": { + + }, + "export_format": 0, + "page_size": 0, + "color_profile": 0, + "workflow": { + "current_step": 2, + "completed_steps": [ + + ], + "is_generating": false, + "generation_progress": 0.00000000, + "error_message": "" + } + } +} \ No newline at end of file diff --git a/odin/gui_session_report.txt b/odin/gui_session_report.txt new file mode 100644 index 0000000000000000000000000000000000000000..ee55f3e3baa04f8ccc921c43dd16dc678ddc755c GIT binary patch literal 479 zcmaJ-&1%Ci4BpvKA=qVuE^Er#L%@d}df2V7V+g@GYU(brjioHj+s|&&F~*n=vSdr& zkM2Rc-smUS7z^!SfRM;I3jw_gEJWEOt4g$JF(}5S9z2^K_w zh*rL{3loekd>lJB&Sm{({lH-H!tw?NvEO)x&S}*_V**cdLIO3gBlU@?c-XAzF^aT| zmZeuMQn6lnWwA?1rzSUW%JfNvc!O7bB6%p{>}sDP_~6c{Bkf@7CC{#|vol4fcu7v> z{NkHql+()H%HoK`@XM~!9Jf=)mP(X)P8A$x^eZnMgX{;Kf@$Kqoq`Iauq?Iz;h-H!MIG$^R~ literal 0 HcmV?d00001 diff --git a/odin/local.cbz b/odin/local.cbz new file mode 100644 index 0000000000000000000000000000000000000000..ac25d9efa148b62a57a4d98fddc29917ea7df293 GIT binary patch literal 509 zcmWIWW@Zs#U|`^2;9R#UW{&ul>B2ysAP`Fcv4MeMd_iJ*Dum8U%>gp>3i8rFe=INi z639{TrTA;$hcBfi<*W<=1Pn4F&!D53HWA4{m(&0;FAzKD=Vm5*=B4H9RpjPu-njn6 z*+30%U9EFx&TkGix?&s<b>!suA8_00_)(htrM=mCz%fWL$dw=$N!;||(P)1L>R;3x}Ek-60 zX51kJbP^aWX#`QY!i#uQJi(@54=i+3(8C7o5FoLnaT1V338?^YRyL3{GY}pJ(h7_q F9stqHkd6QV literal 0 HcmV?d00001 diff --git a/odin/local.pdf b/odin/local.pdf new file mode 100644 index 0000000..0fbf063 --- /dev/null +++ b/odin/local.pdf @@ -0,0 +1,27 @@ +%PDF-1.4 +1 0 obj +<< /Type /Catalog /Pages 2 0 R >> +endobj +2 0 obj +<< /Type /Pages /Kids [3 0 R] /Count 1 >> +endobj +3 0 obj +<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >> +endobj +4 0 obj +<< /Length 55 >> +stream +BT /F1 12 Tf 50 780 Td (Comic Export - Panels: 2) Tj ET +endstream +endobj +5 0 obj +<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >> +endobj +xref +0 6 +0000000000 65535 f +trailer +<< /Size 6 /Root 1 0 R >> +startxref +416 +%%EOF diff --git a/odin/missing-dir-for-autosave/project.comic.json b/odin/missing-dir-for-autosave/project.comic.json new file mode 100644 index 0000000..49c8c78 --- /dev/null +++ b/odin/missing-dir-for-autosave/project.comic.json @@ -0,0 +1,51 @@ +{ + "schemaVersion": 1, + "assetCacheDir": "missing-dir-for-autosave/assets", + "state": { + "project": { + "project_id": "proj_todo", + "project_name": "Untitled Comic", + "created_at_iso": "", + "last_modified_iso": "" + }, + "user_mode": 0, + "story_idea": "", + "story_genre": "action", + "target_audience": "general", + "art_style": "manga", + "script": { + "title": "", + "synopsis": "", + "characters": [ + + ], + "pages": [ + + ] + }, + "characters": [ + + ], + "panel_images": { + + }, + "page_layouts": [ + + ], + "speech_bubbles": { + + }, + "export_format": 0, + "page_size": 0, + "color_profile": 0, + "workflow": { + "current_step": 0, + "completed_steps": [ + + ], + "is_generating": false, + "generation_progress": 0.00000000, + "error_message": "" + } + } +} \ No newline at end of file diff --git a/odin/quick_3.cbz b/odin/quick_3.cbz new file mode 100644 index 0000000000000000000000000000000000000000..2628c54b898d5c8f5f1cfeb260a22b042fe09ab1 GIT binary patch literal 652 zcmWIWW@Zs#U|`^2Sg>wW%pCD8(}jUNK_Hd@Vgm!i_=3drR0y4ynge9$738IV{#ai2 zC6J@wOYzsh4_``4%2^o#2pD8UErX27Gw5ihO++%#OEo~u3&hU(xtYnHd1?826}dT^ zH?BW%Hc-P`SL@uF^P5ABt{4Xdd7Sk==YR5y_x4aNUC+x~12%1cys7Zq`LjOX&Ul~R z{x~RL1LsMdlb&0P{m**qdg*xj1~Qz!^}@Nuk&8*_a`4>G-k-hR@Z^3Gl+lx}RcQu> z42bK@VY&KR{qf<82^`65avc TtZX1D79iwhWMIeyVg?2PX-T>d literal 0 HcmV?d00001 diff --git a/odin/quick_local.pdf b/odin/quick_local.pdf new file mode 100644 index 0000000..0fbf063 --- /dev/null +++ b/odin/quick_local.pdf @@ -0,0 +1,27 @@ +%PDF-1.4 +1 0 obj +<< /Type /Catalog /Pages 2 0 R >> +endobj +2 0 obj +<< /Type /Pages /Kids [3 0 R] /Count 1 >> +endobj +3 0 obj +<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >> +endobj +4 0 obj +<< /Length 55 >> +stream +BT /F1 12 Tf 50 780 Td (Comic Export - Panels: 2) Tj ET +endstream +endobj +5 0 obj +<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >> +endobj +xref +0 6 +0000000000 65535 f +trailer +<< /Size 6 /Root 1 0 R >> +startxref +416 +%%EOF diff --git a/odin/schemas/comic-project.schema.json b/odin/schemas/comic-project.schema.json new file mode 100644 index 0000000..9aad2c8 --- /dev/null +++ b/odin/schemas/comic-project.schema.json @@ -0,0 +1,29 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://comic-odin/schemas/comic-project.schema.json", + "title": "Comic Project", + "type": "object", + "required": ["schemaVersion", "project", "workflow"], + "properties": { + "schemaVersion": { "type": "integer", "minimum": 1 }, + "project": { + "type": "object", + "required": ["projectId", "projectName", "createdAt", "lastModified"], + "properties": { + "projectId": { "type": "string" }, + "projectName": { "type": "string" }, + "createdAt": { "type": "string" }, + "lastModified": { "type": "string" } + } + }, + "workflow": { + "type": "object", + "required": ["currentStep"], + "properties": { + "currentStep": { "type": "string" }, + "completedSteps": { "type": "array", "items": { "type": "string" } }, + "error": { "type": ["string", "null"] } + } + } + } +} diff --git a/odin/scratch.odin b/odin/scratch.odin new file mode 100644 index 0000000..0f8384c --- /dev/null +++ b/odin/scratch.odin @@ -0,0 +1,11 @@ +package main + +import "core:fmt" + +main :: proc() { + m: map[string]string = nil + v, ok := m["test"] + fmt.printf("v: %s, ok: %v\n", v, ok) + delete_key(&m, "test") + fmt.println("did not crash") +} diff --git a/odin/screenshot000.png b/odin/screenshot000.png new file mode 100644 index 0000000000000000000000000000000000000000..584c028ea688af67c7dbaaf4dff310ef58463738 GIT binary patch literal 114391 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 WQ~vyGV>$%5M-rSX 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 RPKSU${jDZjaxm7X{|~LlJ;eY3 literal 0 HcmV?d00001 diff --git a/odin/scripts/package.sh b/odin/scripts/package.sh new file mode 100755 index 0000000..642d746 --- /dev/null +++ b/odin/scripts/package.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash +set -euo pipefail + +ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)" +cd "$ROOT_DIR" + +./build.sh + +mkdir -p dist +VERSION="${VERSION:-0.1.0}" +OS="$(uname -s | tr '[:upper:]' '[:lower:]')" +ARCH="$(uname -m)" +PKG_NAME="comic-odin-${VERSION}-${OS}-${ARCH}" +PKG_DIR="dist/${PKG_NAME}" + +rm -rf "$PKG_DIR" +mkdir -p "$PKG_DIR" + +cp bin/comic_odin "$PKG_DIR/" +cp README.md "$PKG_DIR/" +cp -r schemas "$PKG_DIR/" + +TAR_PATH="dist/${PKG_NAME}.tar.gz" +rm -f "$TAR_PATH" + +tar -czf "$TAR_PATH" -C dist "$PKG_NAME" + +if command -v sha256sum >/dev/null 2>&1; then + sha256sum "$TAR_PATH" > "${TAR_PATH}.sha256" +fi + +echo "Packaged: $TAR_PATH" diff --git a/odin/src/adapters/deepseek.odin b/odin/src/adapters/deepseek.odin new file mode 100644 index 0000000..967e30e --- /dev/null +++ b/odin/src/adapters/deepseek.odin @@ -0,0 +1,789 @@ +package adapters + +import json "core:encoding/json" +import "core:fmt" +import "core:os" +import "core:strings" +import "../core" +import "../shared" + +Generate_Script_Options :: struct { + story_idea: string, + genre: string, + art_style: string, + num_pages: int, + audience: string, +} + +Deepseek_Request_Message :: struct { + role: string, + content: string, +} + +Deepseek_Request_Response_Format :: struct { + type: string, +} + +Deepseek_Request_Body :: struct { + model: string, + messages: []Deepseek_Request_Message, + response_format: Deepseek_Request_Response_Format, + temperature: f32, +} + +Deepseek_Transport :: #type proc(cfg: shared.Config, request_json: string) -> (response_json: string, status_code: int, err: shared.App_Error) + +Deepseek_Client :: struct { + transport: Deepseek_Transport, + max_retries: int, + initial_backoff_ms: int, +} + +Deepseek_Response_Message :: struct { + content: string, +} + +Deepseek_Response_Choice :: struct { + message: Deepseek_Response_Message, +} + +Deepseek_Response :: struct { + choices: []Deepseek_Response_Choice, +} + +Raw_Dialogue :: struct { + speakerId: string, + text: string, + bubbleType: string, + emotion: string, +} + +Raw_Panel :: struct { + panelId: string, + panelNumber: int, + shotType: string, + description: string, + charactersPresent: []string, + dialogue: []Raw_Dialogue, + caption: string, + soundEffects: []string, + transitionFromPrevious: string, +} + +Raw_Page :: struct { + pageNumber: int, + layoutType: string, + panels: []Raw_Panel, +} + +Raw_Character :: struct { + id: string, + name: string, + role: string, + description: string, + firstAppearancePanel: string, +} + +Raw_Script :: struct { + title: string, + synopsis: string, + characters: []Raw_Character, + pages: []Raw_Page, +} + +Raw_Dialogue_Alt :: struct { + speaker_id: string, + text: string, + bubble_type: string, + emotion: string, +} + +Raw_Panel_Alt :: struct { + panel_id: string, + panel_number: int, + shot_type: string, + description: string, + characters_present: []string, + dialogue: []Raw_Dialogue_Alt, + caption: string, + sound_effects: []string, + transition_from_previous: string, +} + +Raw_Page_Alt :: struct { + page_number: int, + layout_type: string, + panels: []Raw_Panel_Alt, +} + +Raw_Character_Alt :: struct { + id: string, + name: string, + role: string, + description: string, + first_appearance_panel: string, +} + +Raw_Script_Alt :: struct { + title: string, + synopsis: string, + characters: []Raw_Character_Alt, + pages: []Raw_Page_Alt, +} + +Raw_Script_Wrapper :: struct { + script: Raw_Script, +} + +Raw_Script_Alt_Wrapper :: struct { + script: Raw_Script_Alt, +} + +deepseek_parse_curl_output :: proc(output: string) -> (body: string, status_code: int, ok: bool) { + marker := "__STATUS__:" + idx := strings.last_index(output, marker) + if idx < 0 { + return output, 0, false + } + + body = output[:idx] + status_str := output[idx+len(marker):] + status_code = 0 + for c in status_str { + if c < '0' || c > '9' { + break + } + status_code = status_code*10 + int(c-'0') + } + return body, status_code, true +} + +default_deepseek_transport :: proc(cfg: shared.Config, request_json: string) -> (string, int, shared.App_Error) { + url := fmt.aprintf("%s/chat/completions", cfg.deepseek_base_url) + auth := fmt.aprintf("Authorization: Bearer %s", cfg.deepseek_api_key) + + cmd := [13]string{ + "curl", "-sS", "-X", "POST", url, + "-H", "Content-Type: application/json", + "-H", auth, + "-d", request_json, + "-w", "\\n__STATUS__:%{http_code}", + } + desc := os.Process_Desc{command = cmd[:]} + state, stdout, stderr, exec_err := os.process_exec(desc, context.temp_allocator) + if exec_err != nil { + return "", 0, shared.network_error(fmt.aprintf("curl execution failed: %v", exec_err)) + } + if !state.exited || state.exit_code != 0 { + return "", 0, shared.network_error(fmt.aprintf("curl failed: %s", string(stderr))) + } + + body, status_code, ok := deepseek_parse_curl_output(string(stdout)) + if !ok { + return string(stdout), 0, shared.network_error("unable to parse curl status output") + } + return body, status_code, shared.ok() +} + +new_deepseek_client :: proc() -> Deepseek_Client { + return Deepseek_Client{ + transport = default_deepseek_transport, + max_retries = 3, + initial_backoff_ms = 500, + } +} + +backoff_ms :: proc(initial_ms, attempt: int) -> int { + if attempt <= 0 { + return 0 + } + mul := 1 << u32(attempt-1) + return initial_ms * mul +} + +extract_deepseek_error_message :: proc(body: string) -> string { + trimmed := strings.trim_space(body) + if len(trimmed) == 0 { + return "" + } + marker := "\"message\":\"" + idx := strings.index(trimmed, marker) + if idx < 0 { + if len(trimmed) > 180 { + return fmt.aprintf("%s…", trimmed[:179]) + } + return trimmed + } + start := idx + len(marker) + end := start + for end < len(trimmed) { + if trimmed[end] == '"' && (end == start || trimmed[end-1] != '\\') { + break + } + end += 1 + } + msg := trimmed[start:end] + if len(msg) == 0 { + if len(trimmed) > 180 { + return fmt.aprintf("%s…", trimmed[:179]) + } + return trimmed + } + return msg +} + +map_http_error :: proc(status_code: int, response_body: string) -> shared.App_Error { + detail := extract_deepseek_error_message(response_body) + if status_code == 429 { + if len(detail) > 0 { + return shared.rate_limit_error(fmt.aprintf("deepseek rate-limited (429): %s", detail)) + } + return shared.rate_limit_error("deepseek rate-limited (429)") + } + if status_code >= 500 { + if len(detail) > 0 { + return shared.network_error(fmt.aprintf("deepseek server error (%d): %s", status_code, detail)) + } + return shared.network_error(fmt.aprintf("deepseek server error (%d)", status_code)) + } + if status_code >= 400 { + if len(detail) > 0 { + return shared.validation_error(fmt.aprintf("deepseek request failed (%d): %s", status_code, detail)) + } + return shared.validation_error(fmt.aprintf("deepseek request failed (%d)", status_code)) + } + return shared.ok() +} + +deepseek_json_escape :: proc(s: string) -> string { + out: [dynamic]u8 + for c in s { + switch c { + case '"': + append(&out, '\\') + append(&out, '"') + case '\\': + append(&out, '\\') + append(&out, '\\') + case '\n': + append(&out, '\\') + append(&out, 'n') + case '\r': + append(&out, '\\') + append(&out, 'r') + case '\t': + append(&out, '\\') + append(&out, 't') + case: + append(&out, u8(c)) + } + } + return string(out[:]) +} + +build_deepseek_request_json :: proc(opts: Generate_Script_Options) -> string { + user_content := fmt.aprintf( + "Create a %d-page comic script. Idea: %s. Genre: %s. Art Style: %s. Audience: %s. Return valid JSON.", + opts.num_pages, + opts.story_idea, + opts.genre, + opts.art_style, + opts.audience, + ) + defer delete(user_content) + + messages := [2]Deepseek_Request_Message{ + {role = "system", content = "You are an expert comic writer. Return JSON only."}, + {role = "user", content = user_content}, + } + body := Deepseek_Request_Body{ + model = "deepseek-chat", + messages = messages[:], + response_format = Deepseek_Request_Response_Format{type = "json_object"}, + temperature = 0.8, + } + request_json, merr := json.marshal(body, {}, context.allocator) + if merr == nil { + return string(request_json) + } + + escaped := deepseek_json_escape(user_content) + defer delete(escaped) + return fmt.aprintf( + "{\"model\":\"deepseek-chat\",\"messages\":[{\"role\":\"system\",\"content\":\"You are an expert comic writer. Return JSON only.\"},{\"role\":\"user\",\"content\":\"%s\"}],\"response_format\":{\"type\":\"json_object\"},\"temperature\":0.8}", + escaped, + ) +} + +validate_generate_script_options :: proc(opts: Generate_Script_Options) -> shared.App_Error { + if len(opts.story_idea) == 0 { + return shared.validation_error("story_idea is required") + } + if opts.num_pages <= 0 { + return shared.validation_error("num_pages must be > 0") + } + return shared.ok() +} + +build_fallback_script :: proc(opts: Generate_Script_Options) -> core.Comic_Script { + dialogues: [1]core.Dialogue = [1]core.Dialogue{ + {speaker_id = "char_001", text = "Let's begin.", bubble_type = .Normal, emotion = "neutral"}, + } + chars_present: [1]string = [1]string{"char_001"} + panels: [1]core.Panel = [1]core.Panel{ + { + panel_id = "panel_001_001", + panel_number = 1, + shot_type = .Medium, + description = opts.story_idea, + characters_present = chars_present[:], + dialogue = dialogues[:], + caption = "", + sound_effects = nil, + transition_from_previous = .None, + }, + } + pages: [1]core.Page = [1]core.Page{ + {page_number = 1, layout_type = .Grid, panels = panels[:]}, + } + chars: [1]core.Character = [1]core.Character{ + {name = "Protagonist", description = "A determined lead character"}, + } + + raw := core.Comic_Script{ + title = "Generated Comic", + synopsis = opts.story_idea, + characters = chars[:], + pages = pages[:], + } + return core.normalize_script(raw) +} + +extract_json_block :: proc(s: string) -> string { + trimmed := strings.trim(s, " \n\r\t") + start := strings.index(trimmed, "{") + finish := strings.last_index(trimmed, "}") + if start >= 0 && finish >= start { + return trimmed[start : finish+1] + } + return trimmed +} + +character_role_from_string :: proc(role: string) -> core.Character_Role { + switch role { + case "protagonist": + return .Protagonist + case "antagonist": + return .Antagonist + case "supporting": + return .Supporting + case "extra": + return .Extra + } + return .Supporting +} + +layout_type_from_string :: proc(layout: string) -> core.Layout_Type { + switch layout { + case "grid": + return .Grid + case "manga": + return .Manga + case "western": + return .Western + case "action": + return .Action + case "dialogue": + return .Dialogue + case "splash": + return .Splash + } + return .Grid +} + +shot_type_from_string :: proc(shot: string) -> core.Shot_Type { + switch shot { + case "establishing": + return .Establishing + case "wide": + return .Wide + case "medium": + return .Medium + case "close-up": + return .Close_Up + case "extreme-close-up": + return .Extreme_Close_Up + case "over-shoulder": + return .Over_Shoulder + case "aerial": + return .Aerial + } + return .Medium +} + +bubble_type_from_string :: proc(bt: string) -> core.Bubble_Type { + switch bt { + case "normal": + return .Normal + case "thought": + return .Thought + case "shout": + return .Shout + case "whisper": + return .Whisper + case "narration": + return .Narration + case "sound-effect": + return .Sound_Effect + } + return .Normal +} + +transition_from_string :: proc(t: string) -> core.Transition_Type { + switch t { + case "none": + return .None + case "fade": + return .Fade + case "wipe": + return .Wipe + case "dissolve": + return .Dissolve + case "action-lines": + return .Action_Lines + } + return .None +} + +clone_string_array :: proc(items: []string) -> []string { + out: [dynamic]string + for s in items { + append(&out, strings.clone(s, context.allocator)) + } + return out[:] +} + +dispose_deepseek_response :: proc(resp: ^Deepseek_Response) { + for c in resp.choices { + delete(c.message.content) + } + delete(resp.choices) +} + +dispose_raw_script :: proc(raw: ^Raw_Script) { + delete(raw.title) + delete(raw.synopsis) + + for c in raw.characters { + delete(c.id) + delete(c.name) + delete(c.role) + delete(c.description) + delete(c.firstAppearancePanel) + } + delete(raw.characters) + + for p in raw.pages { + delete(p.layoutType) + for pan in p.panels { + delete(pan.panelId) + delete(pan.shotType) + delete(pan.description) + delete(pan.caption) + delete(pan.transitionFromPrevious) + for d in pan.dialogue { + delete(d.speakerId) + delete(d.text) + delete(d.bubbleType) + delete(d.emotion) + } + delete(pan.dialogue) + for s in pan.charactersPresent { + delete(s) + } + delete(pan.charactersPresent) + for s in pan.soundEffects { + delete(s) + } + delete(pan.soundEffects) + } + delete(p.panels) + } + delete(raw.pages) +} + +dispose_raw_script_alt :: proc(raw: ^Raw_Script_Alt) { + delete(raw.title) + delete(raw.synopsis) + + for c in raw.characters { + delete(c.id) + delete(c.name) + delete(c.role) + delete(c.description) + delete(c.first_appearance_panel) + } + delete(raw.characters) + + for p in raw.pages { + delete(p.layout_type) + for pan in p.panels { + delete(pan.panel_id) + delete(pan.shot_type) + delete(pan.description) + delete(pan.caption) + delete(pan.transition_from_previous) + for d in pan.dialogue { + delete(d.speaker_id) + delete(d.text) + delete(d.bubble_type) + delete(d.emotion) + } + delete(pan.dialogue) + for s in pan.characters_present { + delete(s) + } + delete(pan.characters_present) + for s in pan.sound_effects { + delete(s) + } + delete(pan.sound_effects) + } + delete(p.panels) + } + delete(raw.pages) +} + +convert_raw_script :: proc(raw: Raw_Script) -> core.Comic_Script { + chars: [dynamic]core.Character + for c in raw.characters { + append(&chars, core.Character{ + id = strings.clone(c.id, context.allocator), + name = strings.clone(c.name, context.allocator), + role = character_role_from_string(c.role), + description = strings.clone(c.description, context.allocator), + first_appearance_panel = strings.clone(c.firstAppearancePanel, context.allocator), + }) + } + + pages: [dynamic]core.Page + for p in raw.pages { + panels: [dynamic]core.Panel + for pan in p.panels { + dialogues: [dynamic]core.Dialogue + for d in pan.dialogue { + append(&dialogues, core.Dialogue{ + speaker_id = strings.clone(d.speakerId, context.allocator), + text = strings.clone(d.text, context.allocator), + bubble_type = bubble_type_from_string(d.bubbleType), + emotion = strings.clone(d.emotion, context.allocator), + }) + } + + append(&panels, core.Panel{ + panel_id = strings.clone(pan.panelId, context.allocator), + panel_number = pan.panelNumber, + shot_type = shot_type_from_string(pan.shotType), + description = strings.clone(pan.description, context.allocator), + characters_present = clone_string_array(pan.charactersPresent), + dialogue = dialogues[:], + caption = strings.clone(pan.caption, context.allocator), + sound_effects = clone_string_array(pan.soundEffects), + transition_from_previous = transition_from_string(pan.transitionFromPrevious), + }) + } + + append(&pages, core.Page{ + page_number = p.pageNumber, + layout_type = layout_type_from_string(p.layoutType), + panels = panels[:], + }) + } + + return core.Comic_Script{ + title = strings.clone(raw.title, context.allocator), + synopsis = strings.clone(raw.synopsis, context.allocator), + characters = chars[:], + pages = pages[:], + } +} + +convert_raw_script_alt :: proc(raw: Raw_Script_Alt) -> core.Comic_Script { + chars: [dynamic]core.Character + for c in raw.characters { + append(&chars, core.Character{ + id = strings.clone(c.id, context.allocator), + name = strings.clone(c.name, context.allocator), + role = character_role_from_string(c.role), + description = strings.clone(c.description, context.allocator), + first_appearance_panel = strings.clone(c.first_appearance_panel, context.allocator), + }) + } + + pages: [dynamic]core.Page + for p in raw.pages { + panels: [dynamic]core.Panel + for pan in p.panels { + dialogues: [dynamic]core.Dialogue + for d in pan.dialogue { + append(&dialogues, core.Dialogue{ + speaker_id = strings.clone(d.speaker_id, context.allocator), + text = strings.clone(d.text, context.allocator), + bubble_type = bubble_type_from_string(d.bubble_type), + emotion = strings.clone(d.emotion, context.allocator), + }) + } + + append(&panels, core.Panel{ + panel_id = strings.clone(pan.panel_id, context.allocator), + panel_number = pan.panel_number, + shot_type = shot_type_from_string(pan.shot_type), + description = strings.clone(pan.description, context.allocator), + characters_present = clone_string_array(pan.characters_present), + dialogue = dialogues[:], + caption = strings.clone(pan.caption, context.allocator), + sound_effects = clone_string_array(pan.sound_effects), + transition_from_previous = transition_from_string(pan.transition_from_previous), + }) + } + + append(&pages, core.Page{ + page_number = p.page_number, + layout_type = layout_type_from_string(p.layout_type), + panels = panels[:], + }) + } + + return core.Comic_Script{ + title = strings.clone(raw.title, context.allocator), + synopsis = strings.clone(raw.synopsis, context.allocator), + characters = chars[:], + pages = pages[:], + } +} + +invalid_normalized_script_err :: proc(script: core.Comic_Script) -> shared.App_Error { + return shared.generation_error(fmt.aprintf("normalized script failed minimal validation (title:%d synopsis:%d pages:%d)", len(script.title), len(script.synopsis), len(script.pages))) +} + +parse_deepseek_script_response :: proc(response_json: string) -> (core.Comic_Script, shared.App_Error) { + outer: Deepseek_Response + if err := json.unmarshal_string(response_json, &outer); err != nil { + return core.Comic_Script{}, shared.generation_error(fmt.aprintf("failed to parse deepseek envelope: %v", err)) + } + defer dispose_deepseek_response(&outer) + if len(outer.choices) == 0 { + return core.Comic_Script{}, shared.generation_error("deepseek response has no choices") + } + + content := outer.choices[0].message.content + if len(content) == 0 { + return core.Comic_Script{}, shared.generation_error("deepseek content is empty") + } + + raw_json := extract_json_block(content) + + raw_script: Raw_Script + if err := json.unmarshal_string(raw_json, &raw_script); err == nil { + defer dispose_raw_script(&raw_script) + script := convert_raw_script(raw_script) + norm := core.normalize_script(script) + if !core.script_is_valid_minimal(norm) { + core.dispose_script(&norm) + return core.Comic_Script{}, invalid_normalized_script_err(script) + } + return norm, shared.ok() + } + + wrapped: Raw_Script_Wrapper + if err := json.unmarshal_string(raw_json, &wrapped); err == nil { + defer dispose_raw_script(&wrapped.script) + script := convert_raw_script(wrapped.script) + norm := core.normalize_script(script) + if !core.script_is_valid_minimal(norm) { + core.dispose_script(&norm) + return core.Comic_Script{}, invalid_normalized_script_err(script) + } + return norm, shared.ok() + } + + raw_alt: Raw_Script_Alt + if err := json.unmarshal_string(raw_json, &raw_alt); err == nil { + defer dispose_raw_script_alt(&raw_alt) + script := convert_raw_script_alt(raw_alt) + norm := core.normalize_script(script) + if !core.script_is_valid_minimal(norm) { + core.dispose_script(&norm) + return core.Comic_Script{}, invalid_normalized_script_err(script) + } + return norm, shared.ok() + } + + wrapped_alt: Raw_Script_Alt_Wrapper + if err := json.unmarshal_string(raw_json, &wrapped_alt); err == nil { + defer dispose_raw_script_alt(&wrapped_alt.script) + script := convert_raw_script_alt(wrapped_alt.script) + norm := core.normalize_script(script) + if !core.script_is_valid_minimal(norm) { + core.dispose_script(&norm) + return core.Comic_Script{}, invalid_normalized_script_err(script) + } + return norm, shared.ok() + } + + return core.Comic_Script{}, shared.generation_error("failed to parse deepseek script content (unsupported JSON shape)") +} + +generate_comic_script :: proc(client: Deepseek_Client, cfg: shared.Config, opts: Generate_Script_Options) -> (core.Comic_Script, shared.App_Error) { + if len(cfg.deepseek_api_key) == 0 { + return core.Comic_Script{}, shared.config_error("DEEPSEEK_API_KEY is missing") + } + + if verr := validate_generate_script_options(opts); !shared.is_ok(verr) { + return core.Comic_Script{}, verr + } + + request_json := build_deepseek_request_json(opts) + defer delete(request_json) + attempts := client.max_retries + if attempts < 1 { + attempts = 1 + } + + last_err := shared.generation_error("unknown deepseek error") + for attempt in 1..=attempts { + response_json, status_code, transport_err := client.transport(cfg, request_json) + if !shared.is_ok(transport_err) { + last_err = transport_err + } else if status_code >= 400 { + last_err = map_http_error(status_code, response_json) + } else { + if len(response_json) == 0 { + last_err = shared.generation_error("deepseek returned empty response") + } else { + script, parse_err := parse_deepseek_script_response(response_json) + if shared.is_ok(parse_err) { + return script, shared.ok() + } + if strings.has_prefix(parse_err.message, "normalized script failed minimal validation") { + fallback := build_fallback_script(opts) + return fallback, shared.ok() + } + last_err = parse_err + } + } + + if attempt < attempts && shared.should_retry(last_err) { + _ = backoff_ms(client.initial_backoff_ms, attempt) + continue + } + break + } + + return core.Comic_Script{}, last_err +} + +generate_comic_script_stub :: proc(cfg: shared.Config, opts: Generate_Script_Options) -> (core.Comic_Script, shared.App_Error) { + client := new_deepseek_client() + return generate_comic_script(client, cfg, opts) +} diff --git a/odin/src/adapters/export.odin b/odin/src/adapters/export.odin new file mode 100644 index 0000000..815289a --- /dev/null +++ b/odin/src/adapters/export.odin @@ -0,0 +1,251 @@ +package adapters + +import "core:fmt" +import "core:os" +import filepath "core:path/filepath" +import "core:strings" +import "../core" +import "../shared" + +Export_Options :: struct { + format: core.Export_Format, + page_size: core.Page_Size_Name, + dpi: int, + quality: int, +} + +Ordered_Panel :: struct { + page_number: int, + panel_number: int, + panel_id: string, +} + +collect_ordered_panels :: proc(layouts: []core.Page_Layout) -> []Ordered_Panel { + panels: [dynamic]Ordered_Panel + for page in layouts { + for p in page.panels { + append(&panels, Ordered_Panel{ + page_number = page.page_number, + panel_number = p.panel_number, + panel_id = p.panel_id, + }) + } + } + return panels[:] +} + +path_join2 :: proc(a, b: string) -> (string, shared.App_Error) { + parts := [2]string{a, b} + out, err := filepath.join(parts[:], context.allocator) + if err != nil { + msg := fmt.aprintf("path join failed: %v", err) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + return "", err_out + } + return out, shared.ok() +} + +run_command :: proc(args: []string) -> shared.App_Error { + desc := os.Process_Desc{command = args} + state, _, stderr, err := os.process_exec(desc, context.temp_allocator) + if err != nil { + msg := fmt.aprintf("command failed to execute: %v", err) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + return err_out + } + if !state.exited || state.exit_code != 0 { + err_text := string(stderr) + msg := fmt.aprintf("command failed: %s", err_text) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + return err_out + } + return shared.ok() +} + +file_ext_from_url :: proc(url: string) -> string { + base := url + if q := strings.index(base, "?"); q >= 0 { + base = base[:q] + } + ext := filepath.ext(base) + if len(ext) == 0 { + return ".png" + } + return ext +} + +stage_panel_images :: proc(temp_dir: string, ordered: []Ordered_Panel, panel_images: map[string]core.Panel_Image) -> shared.App_Error { + staged_count := 0 + for p, idx in ordered { + img := panel_images[p.panel_id] + if len(img.url) == 0 { + continue + } + + ext := file_ext_from_url(img.url) + filename := fmt.aprintf("%03d_page%03d_panel%03d%s", idx+1, p.page_number, p.panel_number, ext) + out_path, jerr := path_join2(temp_dir, filename) + delete(filename) + if !shared.is_ok(jerr) { + return jerr + } + + if strings.has_prefix(img.url, "file://") { + src_path := img.url[len("file://"):] + if cerr := os.copy_file(out_path, src_path); cerr != nil { + msg := fmt.aprintf("failed to copy local panel image %s: %v", p.panel_id, cerr) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + delete(out_path) + return err_out + } + } else { + cmd := [6]string{"curl", "-L", "-sS", "-o", out_path, img.url} + cerr := run_command(cmd[:]) + if !shared.is_ok(cerr) { + msg := fmt.aprintf("failed to download panel %s: %s", p.panel_id, cerr.message) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + delete(out_path) + return err_out + } + } + + delete(out_path) + staged_count += 1 + } + + if staged_count == 0 { + return shared.new_error(.Export, "no panel images available for export", false) + } + return shared.ok() +} + +write_comic_info_xml :: proc(temp_dir: string, page_count: int) -> shared.App_Error { + comic_info := fmt.aprintf("\n\n Generated Comic\n %d\n\n", page_count) + defer delete(comic_info) + path, jerr := path_join2(temp_dir, "ComicInfo.xml") + if !shared.is_ok(jerr) { + return jerr + } + defer delete(path) + if err := os.write_entire_file(path, comic_info); err != nil { + msg := fmt.aprintf("failed to write ComicInfo.xml: %v", err) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + return err_out + } + return shared.ok() +} + +zip_directory_with_python :: proc(output_path, source_dir: string, include_comic_info: bool) -> shared.App_Error { + script := "import os,sys,zipfile\nout=sys.argv[1]; src=sys.argv[2]; inc=sys.argv[3]=='1'\nwith zipfile.ZipFile(out,'w',zipfile.ZIP_DEFLATED) as z:\n for n in sorted(os.listdir(src)):\n if (not inc) and n=='ComicInfo.xml':\n continue\n p=os.path.join(src,n)\n if os.path.isfile(p):\n z.write(p,arcname=n)" + inc := "0" + if include_comic_info { + inc = "1" + } + cmd := [6]string{"python3", "-c", script, output_path, source_dir, inc} + return run_command(cmd[:]) +} + +write_simple_pdf :: proc(output_path: string, ordered: []Ordered_Panel) -> shared.App_Error { + text := fmt.aprintf("Comic Export - Panels: %d", len(ordered)) + defer delete(text) + content := fmt.aprintf("BT /F1 12 Tf 50 780 Td (%s) Tj ET", text) + defer delete(content) + stream := fmt.aprintf("<< /Length %d >>\nstream\n%s\nendstream", len(content), content) + defer delete(stream) + + obj1 := "1 0 obj\n<< /Type /Catalog /Pages 2 0 R >>\nendobj\n" + obj2 := "2 0 obj\n<< /Type /Pages /Kids [3 0 R] /Count 1 >>\nendobj\n" + obj3 := "3 0 obj\n<< /Type /Page /Parent 2 0 R /MediaBox [0 0 612 792] /Contents 4 0 R /Resources << /Font << /F1 5 0 R >> >> >>\nendobj\n" + obj4 := fmt.aprintf("4 0 obj\n%s\nendobj\n", stream) + defer delete(obj4) + obj5 := "5 0 obj\n<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >>\nendobj\n" + + xref_start := len("%PDF-1.4\n") + len(obj1) + len(obj2) + len(obj3) + len(obj4) + len(obj5) + pdf := fmt.aprintf( + "%%PDF-1.4\n%s%s%s%s%sxref\n0 6\n0000000000 65535 f \ntrailer\n<< /Size 6 /Root 1 0 R >>\nstartxref\n%d\n%%%%EOF\n", + obj1, obj2, obj3, obj4, obj5, xref_start, + ) + defer delete(pdf) + + if err := os.write_entire_file(output_path, pdf); err != nil { + msg := fmt.aprintf("failed to write pdf: %v", err) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + return err_out + } + return shared.ok() +} + +ensure_export_output_parent_dir :: proc(output_path: string) -> shared.App_Error { + dir, _ := filepath.split(output_path) + if len(dir) == 0 { + return shared.ok() + } + if err := os.mkdir_all(dir); err != nil && err != .Exist { + msg := fmt.aprintf("failed to create export output directory: %v", err) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + return err_out + } + return shared.ok() +} + +export_comic :: proc(output_path: string, layouts: []core.Page_Layout, panel_images: map[string]core.Panel_Image, opts: Export_Options) -> shared.App_Error { + if len(output_path) == 0 { + return shared.new_error(.Export, "output path is empty", false) + } + if len(layouts) == 0 { + return shared.new_error(.Export, "no layouts available for export", false) + } + if derr := ensure_export_output_parent_dir(output_path); !shared.is_ok(derr) { + return derr + } + + ordered := collect_ordered_panels(layouts) + defer delete(ordered) + if len(ordered) == 0 { + return shared.new_error(.Export, "no panels available for export", false) + } + + switch opts.format { + case .PDF: + return write_simple_pdf(output_path, ordered) + case .CBZ, .PNG: + temp_dir, terr := os.make_directory_temp("", "comic-export-*", context.temp_allocator) + if terr != nil { + msg := fmt.aprintf("failed to create temp dir: %v", terr) + err_out := shared.new_error(.Export, msg, true) + delete(msg) + return err_out + } + defer os.remove_all(temp_dir) + + if serr := stage_panel_images(temp_dir, ordered, panel_images); !shared.is_ok(serr) { + return serr + } + + include_comic_info := opts.format == .CBZ + if include_comic_info { + if ierr := write_comic_info_xml(temp_dir, len(layouts)); !shared.is_ok(ierr) { + return ierr + } + } + + if zerr := zip_directory_with_python(output_path, temp_dir, include_comic_info); !shared.is_ok(zerr) { + return zerr + } + return shared.ok() + } + + return shared.new_error(.Export, "unknown export format", false) +} + +export_comic_stub :: proc(output_path: string, layouts: []core.Page_Layout, panel_images: map[string]core.Panel_Image, opts: Export_Options) -> shared.App_Error { + return export_comic(output_path, layouts, panel_images, opts) +} diff --git a/odin/src/adapters/fal.odin b/odin/src/adapters/fal.odin new file mode 100644 index 0000000..273eefe --- /dev/null +++ b/odin/src/adapters/fal.odin @@ -0,0 +1,299 @@ +package adapters + +import json "core:encoding/json" +import "core:fmt" +import "core:os" +import "core:strings" +import "../core" +import "../shared" + +Fal_Transport :: #type proc(cfg: shared.Config, endpoint: string, prompt: string, seed: i64) -> (image_url: string, status_code: int, err: shared.App_Error) + +Fal_Generation_Queue :: struct { + max_concurrency: int, + in_flight: int, +} + +new_fal_queue :: proc(max_concurrency: int) -> Fal_Generation_Queue { + cap := max_concurrency + if cap < 1 { + cap = 1 + } + return Fal_Generation_Queue{max_concurrency = cap, in_flight = 0} +} + +try_acquire_slot :: proc(q: ^Fal_Generation_Queue) -> bool { + if q.in_flight >= q.max_concurrency { + return false + } + q.in_flight += 1 + return true +} + +release_slot :: proc(q: ^Fal_Generation_Queue) { + if q.in_flight > 0 { + q.in_flight -= 1 + } +} + +Fal_Client :: struct { + transport: Fal_Transport, + max_retries: int, + initial_backoff_ms: int, + queue: ^Fal_Generation_Queue, +} + +fal_parse_curl_output :: proc(output: string) -> (body: string, status_code: int, ok: bool) { + marker := "__STATUS__:" + idx := strings.last_index(output, marker) + if idx < 0 { + return output, 0, false + } + + body = output[:idx] + status_str := output[idx+len(marker):] + status_code = 0 + for c in status_str { + if c < '0' || c > '9' { + break + } + status_code = status_code*10 + int(c-'0') + } + return body, status_code, true +} + +Fal_Image :: struct { + url: string, + width: int, + height: int, +} + +Fal_Response :: struct { + images: []Fal_Image, +} + +dispose_fal_response :: proc(resp: ^Fal_Response) { + for img in resp.images { + delete(img.url) + } + delete(resp.images) +} + +fal_parse_response_body :: proc(body: string) -> (Fal_Response, shared.App_Error) { + resp: Fal_Response + if err := json.unmarshal_string(body, &resp); err != nil { + return Fal_Response{}, shared.generation_error(fmt.aprintf("failed to parse fal response JSON: %v", err)) + } + if len(resp.images) == 0 { + return Fal_Response{}, shared.generation_error("fal response missing images array") + } + if len(resp.images[0].url) == 0 { + return Fal_Response{}, shared.generation_error("fal response image url is empty") + } + return resp, shared.ok() +} + +fal_json_escape :: proc(s: string) -> string { + out: [dynamic]u8 + for c in s { + switch c { + case '"': + append(&out, '\\') + append(&out, '"') + case '\\': + append(&out, '\\') + append(&out, '\\') + case '\n': + append(&out, '\\') + append(&out, 'n') + case '\r': + append(&out, '\\') + append(&out, 'r') + case '\t': + append(&out, '\\') + append(&out, 't') + case: + append(&out, u8(c)) + } + } + return string(out[:]) +} + +default_fal_transport :: proc(cfg: shared.Config, endpoint, prompt: string, seed: i64) -> (string, int, shared.App_Error) { + url := fmt.aprintf("https://fal.run/fal-ai/%s", endpoint) + auth := fmt.aprintf("Authorization: Key %s", cfg.fal_api_key) + payload := fmt.aprintf("{\"prompt\":\"%s\",\"seed\":%d}", fal_json_escape(prompt), seed) + + cmd := [13]string{ + "curl", "-sS", "-X", "POST", url, + "-H", "Content-Type: application/json", + "-H", auth, + "-d", payload, + "-w", "\\n__STATUS__:%{http_code}", + } + desc := os.Process_Desc{command = cmd[:]} + state, stdout, stderr, exec_err := os.process_exec(desc, context.temp_allocator) + if exec_err != nil { + return "", 0, shared.network_error(fmt.aprintf("curl execution failed: %v", exec_err)) + } + if !state.exited || state.exit_code != 0 { + return "", 0, shared.network_error(fmt.aprintf("curl failed: %s", string(stderr))) + } + + body, status_code, ok := fal_parse_curl_output(string(stdout)) + if !ok { + return "", 0, shared.network_error("unable to parse curl status output") + } + + if status_code >= 400 { + return "", status_code, shared.ok() + } + + resp, parse_err := fal_parse_response_body(body) + if !shared.is_ok(parse_err) { + return "", status_code, parse_err + } + return resp.images[0].url, status_code, shared.ok() +} + +new_fal_client :: proc(queue: ^Fal_Generation_Queue) -> Fal_Client { + return Fal_Client{ + transport = default_fal_transport, + max_retries = 3, + initial_backoff_ms = 500, + queue = queue, + } +} + +fal_http_error :: proc(status_code: int) -> shared.App_Error { + if status_code == 429 { + return shared.rate_limit_error("fal rate-limited (429)") + } + if status_code >= 500 { + return shared.network_error(fmt.aprintf("fal server error (%d)", status_code)) + } + if status_code >= 400 { + return shared.validation_error(fmt.aprintf("fal request failed (%d)", status_code)) + } + return shared.ok() +} + +fal_backoff_ms :: proc(initial_ms, attempt: int) -> int { + if attempt <= 0 { + return 0 + } + mul := 1 << u32(attempt-1) + return initial_ms * mul +} + +generate_character_reference :: proc(client: Fal_Client, cfg: shared.Config, c: core.Character, art_style: string) -> (string, shared.App_Error) { + if len(cfg.fal_api_key) == 0 { + return "", shared.config_error("FAL_API_KEY is missing") + } + if client.queue == nil { + return "", shared.config_error("fal queue is not configured") + } + if !try_acquire_slot(client.queue) { + return "", shared.generation_error("fal queue saturated") + } + defer release_slot(client.queue) + + prompt := core.build_character_prompt(c, "standing in neutral pose", "clean background", "studio lighting", art_style) + + attempts := client.max_retries + if attempts < 1 { + attempts = 1 + } + + last_err := shared.generation_error("unknown fal character generation error") + for attempt in 1..=attempts { + url, status_code, transport_err := client.transport(cfg, "fast-sdxl", prompt, c.seed) + if !shared.is_ok(transport_err) { + last_err = transport_err + } else if status_code >= 400 { + last_err = fal_http_error(status_code) + } else if len(url) == 0 { + last_err = shared.generation_error("fal returned empty image url") + } else { + return url, shared.ok() + } + + if attempt < attempts && shared.should_retry(last_err) { + _ = fal_backoff_ms(client.initial_backoff_ms, attempt) + continue + } + break + } + + return "", last_err +} + +generate_panel_image :: proc(client: Fal_Client, cfg: shared.Config, panel: core.Panel, characters: []core.Character, art_style, project_id: string) -> (core.Panel_Image, shared.App_Error) { + if len(cfg.fal_api_key) == 0 { + return core.Panel_Image{}, shared.config_error("FAL_API_KEY is missing") + } + if client.queue == nil { + return core.Panel_Image{}, shared.config_error("fal queue is not configured") + } + if !try_acquire_slot(client.queue) { + return core.Panel_Image{}, shared.generation_error("fal queue saturated") + } + defer release_slot(client.queue) + + _ = characters + seed := core.generate_panel_seed(project_id, 1, panel.panel_number, panel.panel_id) + prompt := fmt.aprintf("%s comic panel. %s", art_style, panel.description) + + attempts := client.max_retries + if attempts < 1 { + attempts = 1 + } + + last_err := shared.generation_error("unknown fal panel generation error") + for attempt in 1..=attempts { + url, status_code, transport_err := client.transport(cfg, "fast-sdxl", prompt, seed) + if !shared.is_ok(transport_err) { + last_err = transport_err + } else if status_code >= 400 { + last_err = fal_http_error(status_code) + } else if len(url) == 0 { + last_err = shared.generation_error("fal returned empty image url") + } else { + return core.Panel_Image{url = url, width = 1024, height = 1024, seed = seed, prompt = prompt}, shared.ok() + } + + if attempt < attempts && shared.should_retry(last_err) { + _ = fal_backoff_ms(client.initial_backoff_ms, attempt) + continue + } + break + } + + return core.Panel_Image{}, last_err +} + +generate_all_panels_batched :: proc(client: Fal_Client, cfg: shared.Config, panels: []core.Panel, characters: []core.Character, art_style, project_id: string) -> (map[string]core.Panel_Image, shared.App_Error) { + results := make(map[string]core.Panel_Image) + + for p in panels { + img, err := generate_panel_image(client, cfg, p, characters, art_style, project_id) + if !shared.is_ok(err) { + return results, err + } + results[p.panel_id] = img + } + + return results, shared.ok() +} + +generate_character_reference_stub :: proc(cfg: shared.Config, c: core.Character, art_style: string) -> (string, shared.App_Error) { + q := new_fal_queue(2) + client := new_fal_client(&q) + return generate_character_reference(client, cfg, c, art_style) +} + +generate_panel_image_stub :: proc(cfg: shared.Config, panel: core.Panel, characters: []core.Character, art_style, project_id: string) -> (core.Panel_Image, shared.App_Error) { + q := new_fal_queue(2) + client := new_fal_client(&q) + return generate_panel_image(client, cfg, panel, characters, art_style, project_id) +} diff --git a/odin/src/adapters/storage.odin b/odin/src/adapters/storage.odin new file mode 100644 index 0000000..222e67b --- /dev/null +++ b/odin/src/adapters/storage.odin @@ -0,0 +1,133 @@ +package adapters + +import json "core:encoding/json" +import "core:fmt" +import "core:os" +import filepath "core:path/filepath" +import "../core" +import "../shared" + +CURRENT_PROJECT_SCHEMA_VERSION :: 1 + +Comic_Project_Document :: struct { + schemaVersion: int, + assetCacheDir: string, + state: core.Comic_State, +} + +join_paths :: proc(a, b: string) -> (string, shared.App_Error) { + parts := [2]string{a, b} + joined, err := filepath.join(parts[:], context.temp_allocator) + if err != nil { + return "", shared.new_error(.Storage, fmt.aprintf("path join failed: %v", err), false) + } + return joined, shared.ok() +} + +derive_asset_cache_dir :: proc(project_file_path: string) -> (string, shared.App_Error) { + dir, _ := filepath.split(project_file_path) + if len(dir) == 0 { + dir = "." + } + return join_paths(dir, "assets") +} + +ensure_project_layout :: proc(project_file_path: string) -> shared.App_Error { + dir, _ := filepath.split(project_file_path) + if len(dir) > 0 { + if err := os.mkdir_all(dir); err != nil && err != .Exist { + return shared.new_error(.Storage, fmt.aprintf("failed to create project directory: %v", err), true) + } + } + + asset_dir, aerr := derive_asset_cache_dir(project_file_path) + if !shared.is_ok(aerr) { + return aerr + } + if err := os.mkdir_all(asset_dir); err != nil && err != .Exist { + return shared.new_error(.Storage, fmt.aprintf("failed to create asset cache directory: %v", err), true) + } + + return shared.ok() +} + +migrate_document_to_current_state :: proc(doc: Comic_Project_Document) -> (core.Comic_State, shared.App_Error) { + switch doc.schemaVersion { + case 1: + return doc.state, shared.ok() + case: + return core.Comic_State{}, shared.new_error(.Storage, fmt.aprintf("unsupported schemaVersion: %d", doc.schemaVersion), false) + } +} + +save_project :: proc(path: string, state: core.Comic_State) -> shared.App_Error { + if len(path) == 0 { + return shared.new_error(.Storage, "save path is empty", false) + } + + if lerr := ensure_project_layout(path); !shared.is_ok(lerr) { + return lerr + } + + asset_dir, derr := derive_asset_cache_dir(path) + if !shared.is_ok(derr) { + return derr + } + + doc := Comic_Project_Document{ + schemaVersion = CURRENT_PROJECT_SCHEMA_VERSION, + assetCacheDir = asset_dir, + state = state, + } + + payload, merr := json.marshal(doc, json.Marshal_Options{pretty = true, use_spaces = true, spaces = 2}, context.temp_allocator) + if merr != nil { + return shared.new_error(.Storage, fmt.aprintf("failed to marshal project: %v", merr), false) + } + + if werr := os.write_entire_file(path, payload); werr != nil { + return shared.new_error(.Storage, fmt.aprintf("failed to write project file: %v", werr), true) + } + + return shared.ok() +} + +load_project :: proc(path: string) -> (core.Comic_State, shared.App_Error) { + if len(path) == 0 { + return core.Comic_State{}, shared.new_error(.Storage, "load path is empty", false) + } + if !os.exists(path) { + return core.Comic_State{}, shared.new_error(.Storage, "project file does not exist", false) + } + + payload, rerr := os.read_entire_file(path, context.temp_allocator) + if rerr != nil { + return core.Comic_State{}, shared.new_error(.Storage, fmt.aprintf("failed to read project file: %v", rerr), true) + } + + doc: Comic_Project_Document + if err := json.unmarshal(payload, &doc); err == nil { + if doc.schemaVersion <= 0 { + return core.Comic_State{}, shared.new_error(.Storage, "invalid project schemaVersion", false) + } + state, merr := migrate_document_to_current_state(doc) + delete(doc.assetCacheDir) + return state, merr + } + + // Legacy fallback: raw Comic_State payload without wrapper + legacy: core.Comic_State + if err := json.unmarshal(payload, &legacy); err == nil { + return legacy, shared.ok() + } + + return core.Comic_State{}, shared.new_error(.Storage, "failed to decode project payload", false) +} + +save_project_stub :: proc(path: string, state: core.Comic_State) -> shared.App_Error { + return save_project(path, state) +} + +load_project_stub :: proc(path: string) -> (core.Comic_State, shared.App_Error) { + return load_project(path) +} diff --git a/odin/src/app/cli.odin b/odin/src/app/cli.odin new file mode 100644 index 0000000..ca52218 --- /dev/null +++ b/odin/src/app/cli.odin @@ -0,0 +1,1166 @@ +package main + +import "core:fmt" +import "core:os" +import "core:strconv" +import "core:strings" +import "../adapters" +import "../core" +import "../gui" +import "../shared" +import "../ui" + +CLI_Command_Kind :: enum { + Demo, + Status, + Save, + Load, + Tui, + Gui, + Help, +} + +Parsed_CLI_Command :: struct { + kind: CLI_Command_Kind, + path: string, +} + +parse_cli_command :: proc(args: []string) -> Parsed_CLI_Command { + if len(args) == 0 { + return Parsed_CLI_Command{kind = .Demo} + } + + switch args[0] { + case "status": + return Parsed_CLI_Command{kind = .Status} + case "save": + if len(args) >= 2 { + return Parsed_CLI_Command{kind = .Save, path = args[1]} + } + return Parsed_CLI_Command{kind = .Help} + case "load": + if len(args) >= 2 { + return Parsed_CLI_Command{kind = .Load, path = args[1]} + } + return Parsed_CLI_Command{kind = .Help} + case "tui": + return Parsed_CLI_Command{kind = .Tui} + case "gui": + return Parsed_CLI_Command{kind = .Gui} + case "help", "-h", "--help": + return Parsed_CLI_Command{kind = .Help} + } + + return Parsed_CLI_Command{kind = .Help} +} + +usage_text :: proc() -> string { + return "Usage: comic_odin [status|save |load |tui|gui|help]" +} + +tui_help_text :: proc() -> string { + return "TUI commands: help|h, status|s, doctor|?, ready|r, next|n, plan|p, auto|x, auto all , auto all local [pages], new, set idea , set genre , set audience , generate script [pages], generate script local [pages], generate panels [page ], generate panels local [page ], layout auto, export , quick local [pages], quick local all [pages], goto (or 1..8), step , save|saveas , load|open , start , progress <0-100>, done|d, fail , cancel|c, quit|q" +} + +bool_text :: proc(v: bool) -> string { + if v { + return "yes" + } + return "no" +} + +export_format_name :: proc(f: core.Export_Format) -> string { + switch f { + case .PDF: return "pdf" + case .PNG: return "png" + case .CBZ: return "cbz" + } + return "pdf" +} + +command_available :: proc(name: string) -> bool { + cmd := [2]string{"which", name} + desc := os.Process_Desc{command = cmd[:]} + state, _, _, err := os.process_exec(desc, context.temp_allocator) + if err != nil { + return false + } + return state.exited && state.exit_code == 0 +} + +build_doctor_report :: proc() -> string { + cfg := shared.load_config() + has_deepseek := len(cfg.deepseek_api_key) > 0 + has_fal := len(cfg.fal_api_key) > 0 + has_curl := command_available("curl") + has_python := command_available("python3") + return fmt.aprintf("Doctor\n- deepseek key: %s\n- fal key: %s\n- curl: %s\n- python3: %s", bool_text(has_deepseek), bool_text(has_fal), bool_text(has_curl), bool_text(has_python)) +} + +build_ready_report :: proc(c: ui.App_Controller) -> string { + has_script := len(c.state.script.pages) > 0 + has_panels := len(c.state.panel_images) > 0 + has_layout := len(c.state.page_layouts) > 0 + can_export := has_layout && has_panels + return fmt.aprintf("Ready\n- script generated: %s\n- panel images generated: %s\n- layout generated: %s\n- export ready: %s", bool_text(has_script), bool_text(has_panels), bool_text(has_layout), bool_text(can_export)) +} + +next_action_hint :: proc(c: ui.App_Controller) -> string { + cfg := shared.load_config() + if len(c.state.script.pages) == 0 { + if len(cfg.deepseek_api_key) > 0 { + return "next: generate script 4" + } + return "next: generate script local 2" + } + if len(c.state.panel_images) == 0 { + if len(cfg.fal_api_key) > 0 { + return "next: generate panels" + } + return "next: generate panels local" + } + if len(c.state.page_layouts) == 0 { + return "next: layout auto" + } + return "next: export pdf ./comic.pdf" +} + +plan_report :: proc(c: ui.App_Controller) -> string { + script_done := len(c.state.script.pages) > 0 + panels_done := len(c.state.panel_images) > 0 + layout_done := len(c.state.page_layouts) > 0 + export_ready := panels_done && layout_done + + return fmt.aprintf( + "Plan\n- [%-3s] 1) Script\n- [%-3s] 2) Panels\n- [%-3s] 3) Layout\n- [%-3s] 4) Export\n%s", + bool_text(script_done), + bool_text(panels_done), + bool_text(layout_done), + bool_text(export_ready), + next_action_hint(c), + ) +} + +collect_script_panels :: proc(script: core.Comic_Script) -> []core.Panel { + out: [dynamic]core.Panel + for p in script.pages { + for pan in p.panels { + append(&out, pan) + } + } + return out[:] +} + +collect_script_panels_for_page :: proc(script: core.Comic_Script, page_number: int) -> []core.Panel { + out: [dynamic]core.Panel + for p in script.pages { + if p.page_number != page_number { + continue + } + for pan in p.panels { + append(&out, pan) + } + } + return out[:] +} + +parse_generate_script_pages :: proc(input: string) -> (int, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if trimmed == "generate script" { + return 4, true, shared.ok() + } + if !strings.has_prefix(trimmed, "generate script ") || strings.has_prefix(trimmed, "generate script local") { + return 0, false, shared.ok() + } + + raw := strings.trim_space(trimmed[len("generate script "):]) + pages, ok := strconv.parse_int(raw) + if !ok || pages <= 0 { + return 0, true, shared.validation_error("generate script pages must be a positive integer") + } + return pages, true, shared.ok() +} + +parse_generate_script_local_pages :: proc(input: string) -> (int, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if trimmed == "generate script local" { + return 4, true, shared.ok() + } + if !strings.has_prefix(trimmed, "generate script local ") { + return 0, false, shared.ok() + } + + raw := strings.trim_space(trimmed[len("generate script local "):]) + pages, ok := strconv.parse_int(raw) + if !ok || pages <= 0 { + return 0, true, shared.validation_error("generate script local pages must be a positive integer") + } + return pages, true, shared.ok() +} + +local_panel_id_by_index :: proc(i: int) -> string { + switch i { + case 0: return "panel_local_001" + case 1: return "panel_local_002" + case 2: return "panel_local_003" + case 3: return "panel_local_004" + case 4: return "panel_local_005" + case 5: return "panel_local_006" + case 6: return "panel_local_007" + case 7: return "panel_local_008" + case 8: return "panel_local_009" + } + return "panel_local_overflow" +} + +build_local_script :: proc(story_idea: string, pages: int) -> core.Comic_Script { + out_pages: [dynamic]core.Page + for i in 0.. (int, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if trimmed == "generate panels" { + return 0, true, shared.ok() + } + if !strings.has_prefix(trimmed, "generate panels page ") || strings.has_prefix(trimmed, "generate panels local") { + return 0, false, shared.ok() + } + + raw := strings.trim_space(trimmed[len("generate panels page "):]) + page, ok := strconv.parse_int(raw) + if !ok || page <= 0 { + return 0, true, shared.validation_error("generate panels page must be a positive integer") + } + return page, true, shared.ok() +} + +parse_generate_panels_local_page :: proc(input: string) -> (int, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if trimmed == "generate panels local" { + return 0, true, shared.ok() + } + if !strings.has_prefix(trimmed, "generate panels local page ") { + return 0, false, shared.ok() + } + + raw := strings.trim_space(trimmed[len("generate panels local page "):]) + page, ok := strconv.parse_int(raw) + if !ok || page <= 0 { + return 0, true, shared.validation_error("generate panels local page must be a positive integer") + } + return page, true, shared.ok() +} + +build_local_panel_images :: proc(panels: []core.Panel) -> (map[string]core.Panel_Image, shared.App_Error) { + tmp_dir, terr := os.make_directory_temp("", "comic-local-panels-*", context.temp_allocator) + if terr != nil { + return nil, shared.new_error(.Generation, "failed to create local panel temp dir", true) + } + + images := make(map[string]core.Panel_Image) + for p, idx in panels { + name := fmt.aprintf("panel_%03d_%s.png", idx+1, p.panel_id) + out_path := fmt.aprintf("%s/%s", tmp_dir, name) + delete(name) + if werr := os.write_entire_file(out_path, "LOCAL PANEL IMAGE"); werr != nil { + delete(out_path) + return nil, shared.new_error(.Generation, "failed writing local panel image", true) + } + url := fmt.aprintf("file://%s", out_path) + prompt := fmt.aprintf("local") + images[p.panel_id] = core.Panel_Image{url = url, width = 1024, height = 1024, seed = i64(idx + 1), prompt = prompt} + delete(out_path) + } + return images, shared.ok() +} + +parse_export_command :: proc(input: string) -> (core.Export_Format, string, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if !strings.has_prefix(trimmed, "export ") { + return .PDF, "", false, shared.ok() + } + + rest := strings.trim_space(trimmed[len("export "):]) + sp := strings.index(rest, " ") + if sp < 0 { + return .PDF, "", true, shared.validation_error("usage: export ") + } + + fmt_name := strings.trim_space(rest[:sp]) + out_path := strings.trim_space(rest[sp+1:]) + if len(out_path) == 0 { + return .PDF, "", true, shared.validation_error("export path is required") + } + + switch fmt_name { + case "pdf": return .PDF, out_path, true, shared.ok() + case "png": return .PNG, out_path, true, shared.ok() + case "cbz": return .CBZ, out_path, true, shared.ok() + } + + return .PDF, "", true, shared.validation_error("unknown export format") +} + +parse_quick_local_command :: proc(input: string) -> (core.Export_Format, string, int, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if !strings.has_prefix(trimmed, "quick local ") || strings.has_prefix(trimmed, "quick local all ") { + return .PDF, "", 0, false, shared.ok() + } + + rest := strings.trim_space(trimmed[len("quick local "):]) + parts, ferr := strings.fields(rest) + if ferr != nil { + return .PDF, "", 0, true, shared.new_error(.Validation, "quick local parse failed", true) + } + defer delete(parts) + + if len(parts) < 2 || len(parts) > 3 { + return .PDF, "", 0, true, shared.validation_error("usage: quick local [pages]") + } + + fmt_name := parts[0] + out_path := parts[1] + if len(out_path) == 0 { + return .PDF, "", 0, true, shared.validation_error("quick local export path is required") + } + + pages := 2 + if len(parts) == 3 { + v, ok := strconv.parse_int(parts[2]) + if !ok || v <= 0 { + return .PDF, "", 0, true, shared.validation_error("quick local pages must be a positive integer") + } + pages = v + } + + switch fmt_name { + case "pdf": return .PDF, out_path, pages, true, shared.ok() + case "png": return .PNG, out_path, pages, true, shared.ok() + case "cbz": return .CBZ, out_path, pages, true, shared.ok() + } + + return .PDF, "", 0, true, shared.validation_error("unknown quick local export format") +} + +parse_quick_local_all_command :: proc(input: string) -> (string, core.Export_Format, string, int, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if !strings.has_prefix(trimmed, "quick local all ") { + return "", .PDF, "", 0, false, shared.ok() + } + + rest := strings.trim_space(trimmed[len("quick local all "):]) + parts, ferr := strings.fields(rest) + if ferr != nil { + return "", .PDF, "", 0, true, shared.new_error(.Validation, "quick local all parse failed", true) + } + defer delete(parts) + + if len(parts) < 3 || len(parts) > 4 { + return "", .PDF, "", 0, true, shared.validation_error("usage: quick local all [pages]") + } + + project_path := parts[0] + fmt_name := parts[1] + export_path := parts[2] + if len(project_path) == 0 || len(export_path) == 0 { + return "", .PDF, "", 0, true, shared.validation_error("quick local all paths are required") + } + + pages := 2 + if len(parts) == 4 { + v, ok := strconv.parse_int(parts[3]) + if !ok || v <= 0 { + return "", .PDF, "", 0, true, shared.validation_error("quick local all pages must be a positive integer") + } + pages = v + } + + switch fmt_name { + case "pdf": return project_path, .PDF, export_path, pages, true, shared.ok() + case "png": return project_path, .PNG, export_path, pages, true, shared.ok() + case "cbz": return project_path, .CBZ, export_path, pages, true, shared.ok() + } + + return "", .PDF, "", 0, true, shared.validation_error("unknown quick local all export format") +} + +parse_auto_all_command :: proc(input: string) -> (core.Export_Format, string, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if !strings.has_prefix(trimmed, "auto all ") || strings.has_prefix(trimmed, "auto all local ") { + return .PDF, "", false, shared.ok() + } + + rest := strings.trim_space(trimmed[len("auto all "):]) + parts, ferr := strings.fields(rest) + if ferr != nil { + return .PDF, "", true, shared.new_error(.Validation, "auto all parse failed", true) + } + defer delete(parts) + + if len(parts) != 2 { + return .PDF, "", true, shared.validation_error("usage: auto all ") + } + + switch parts[0] { + case "pdf": return .PDF, parts[1], true, shared.ok() + case "png": return .PNG, parts[1], true, shared.ok() + case "cbz": return .CBZ, parts[1], true, shared.ok() + } + return .PDF, "", true, shared.validation_error("unknown auto all export format") +} + +parse_auto_all_local_command :: proc(input: string) -> (core.Export_Format, string, int, bool, shared.App_Error) { + trimmed := strings.trim_space(input) + if !strings.has_prefix(trimmed, "auto all local ") { + return .PDF, "", 0, false, shared.ok() + } + + rest := strings.trim_space(trimmed[len("auto all local "):]) + parts, ferr := strings.fields(rest) + if ferr != nil { + return .PDF, "", 0, true, shared.new_error(.Validation, "auto all local parse failed", true) + } + defer delete(parts) + + if len(parts) < 2 || len(parts) > 3 { + return .PDF, "", 0, true, shared.validation_error("usage: auto all local [pages]") + } + + pages := 2 + if len(parts) == 3 { + v, ok := strconv.parse_int(parts[2]) + if !ok || v <= 0 { + return .PDF, "", 0, true, shared.validation_error("auto all local pages must be a positive integer") + } + pages = v + } + + switch parts[0] { + case "pdf": return .PDF, parts[1], pages, true, shared.ok() + case "png": return .PNG, parts[1], pages, true, shared.ok() + case "cbz": return .CBZ, parts[1], pages, true, shared.ok() + } + return .PDF, "", 0, true, shared.validation_error("unknown auto all local export format") +} + +run_quick_local_pipeline :: proc(controller: ^ui.App_Controller, export_format: core.Export_Format, export_path: string, pages: int) -> shared.App_Error { + story := controller.state.story_idea + if len(story) == 0 { + story = "A local adventure" + } + + script := build_local_script(story, pages) + core.dispose_script(&controller.state.script) + controller.state.script = script + controller.state.characters = controller.state.script.characters + + panels := collect_script_panels(controller.state.script) + defer delete(panels) + if len(panels) == 0 { + return shared.validation_error("quick local failed: no panels") + } + + images, lerr := build_local_panel_images(panels) + if !shared.is_ok(lerr) { + return lerr + } + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = images + + core.dispose_page_layouts(&controller.state.page_layouts) + controller.state.page_layouts = core.auto_layout_pages(panels, controller.state.page_size, controller.state.story_genre, "") + + opts := adapters.Export_Options{format = export_format, page_size = controller.state.page_size, dpi = 300, quality = 90} + err := adapters.export_comic_stub(export_path, controller.state.page_layouts, controller.state.panel_images, opts) + if !shared.is_ok(err) { + controller.state.workflow.error_message = err.message + return err + } + controller.state.export_format = export_format + controller.active_screen = .Export + controller.state.workflow.current_step = .Complete + controller.state.workflow.error_message = "" + return shared.ok() +} + +clear_screen :: proc() { + fmt.print("\x1b[2J\x1b[H") +} + +normalize_tui_command :: proc(input: string) -> string { + cmd := strings.trim_space(input) + switch cmd { + case "h": return "help" + case "s": return "status" + case "?": return "doctor" + case "r": return "ready" + case "n": return "next" + case "p": return "plan" + case "x": return "auto" + case "d": return "done" + case "c": return "cancel" + case "q": return "quit" + case "1": return "goto story" + case "2": return "goto script" + case "3": return "goto characters" + case "4": return "goto panels" + case "5": return "goto layout" + case "6": return "goto bubbles" + case "7": return "goto export" + case "8": return "goto community" + } + return cmd +} + +screen_from_name :: proc(s: string) -> (ui.App_Screen, bool) { + switch s { + case "story": return .Story, true + case "script": return .Script, true + case "characters": return .Characters, true + case "panels": return .Panels, true + case "layout": return .Layout, true + case "bubbles", "speech": return .Bubbles, true + case "export": return .Export, true + case "community": return .Community, true + } + return .Story, false +} + +workflow_from_name :: proc(s: string) -> (core.Workflow_Step, bool) { + switch s { + case "story": return .Story_Input, true + case "generating-script": return .Generating_Script, true + case "script-review": return .Script_Review, true + case "character-setup": return .Character_Setup, true + case "generating-panels": return .Generating_Panels, true + case "layout": return .Layout, true + case "speech-bubbles": return .Speech_Bubbles, true + case "complete": return .Complete, true + } + return .Story_Input, false +} + +job_type_from_name :: proc(s: string) -> (ui.Job_Type, bool) { + switch s { + case "script": return .Generate_Script, true + case "character": return .Generate_Character, true + case "panel": return .Generate_Panel, true + case "export": return .Export, true + } + return .Generate_Script, false +} + +read_stdin_line :: proc() -> (line: string, ok: bool, err: shared.App_Error) { + buf: [dynamic]u8 + one: [1]u8 + + for { + n, rerr := os.read(os.stdin, one[:]) + if rerr != nil { + if rerr == .EOF { + if len(buf) == 0 { + return "", false, shared.ok() + } + break + } + delete(buf) + return "", false, shared.new_error(.Config, "stdin read error", true) + } + if n == 0 { + continue + } + if one[0] == '\n' { + break + } + if one[0] != '\r' { + append(&buf, one[0]) + } + } + + return string(buf[:]), true, shared.ok() +} + +run_tui_command :: proc(controller: ^ui.App_Controller, input: string, last_job_id: ^int) -> (quit: bool, out: string, err: shared.App_Error) { + if input == "help" { + return false, fmt.aprintf("%s", tui_help_text()), shared.ok() + } + if input == "status" { + return false, ui.render_app_to_string(controller^), shared.ok() + } + if input == "doctor" { + return false, build_doctor_report(), shared.ok() + } + if input == "ready" { + return false, build_ready_report(controller^), shared.ok() + } + if input == "next" { + return false, fmt.aprintf("%s", next_action_hint(controller^)), shared.ok() + } + if input == "plan" { + return false, plan_report(controller^), shared.ok() + } + auto_all_local_format, auto_all_local_path, auto_all_local_pages, is_auto_all_local, aalerr := parse_auto_all_local_command(input) + if !shared.is_ok(aalerr) { + return false, "", aalerr + } + if is_auto_all_local { + if err := run_quick_local_pipeline(controller, auto_all_local_format, auto_all_local_path, auto_all_local_pages); !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("auto all local exported %s (%d pages)", auto_all_local_path, auto_all_local_pages), shared.ok() + } + + auto_all_format, auto_all_path, is_auto_all, aaerr := parse_auto_all_command(input) + if !shared.is_ok(aaerr) { + return false, "", aaerr + } + if is_auto_all { + for i in 0..<6 { + hint := next_action_hint(controller^) + if strings.has_prefix(hint, "next: export ") { + export_cmd := fmt.aprintf("export %s %s", export_format_name(auto_all_format), auto_all_path) + _, out, eerr := run_tui_command(controller, export_cmd, last_job_id) + delete(export_cmd) + if !shared.is_ok(eerr) { + return false, "", eerr + } + if len(out) > 0 { delete(out) } + return false, fmt.aprintf("auto all exported %s", auto_all_path), shared.ok() + } + if !strings.has_prefix(hint, "next: ") { + return false, "", shared.validation_error("auto all failed: invalid next hint") + } + next_cmd := strings.trim_space(hint[len("next: "):]) + _, out, aerr := run_tui_command(controller, next_cmd, last_job_id) + if len(out) > 0 { delete(out) } + if !shared.is_ok(aerr) { + return false, "", aerr + } + } + return false, "", shared.validation_error("auto all exceeded step limit") + } + + if input == "auto" { + hint := next_action_hint(controller^) + if !strings.has_prefix(hint, "next: ") { + return false, "", shared.validation_error("auto failed: invalid next hint") + } + next_cmd := strings.trim_space(hint[len("next: "):]) + _, out, aerr := run_tui_command(controller, next_cmd, last_job_id) + if !shared.is_ok(aerr) { + return false, "", aerr + } + if len(out) > 0 { + msg := fmt.aprintf("auto ran: %s\n%s", next_cmd, out) + delete(out) + return false, msg, shared.ok() + } + return false, fmt.aprintf("auto ran: %s", next_cmd), shared.ok() + } + if input == "done" { + if last_job_id^ <= 0 { + return false, "", shared.validation_error("no active job") + } + err = ui.finish_background_job(controller, last_job_id^, "") + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("job marked done"), shared.ok() + } + if input == "cancel" { + if last_job_id^ <= 0 { + return false, "", shared.validation_error("no active job") + } + err = ui.cancel_background_job(controller, last_job_id^) + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("job cancelled"), shared.ok() + } + if input == "quit" || input == "exit" { + return true, fmt.aprintf("exiting tui"), shared.ok() + } + + if strings.has_prefix(input, "goto ") { + target_name := strings.trim_space(input[len("goto "):]) + target, ok := screen_from_name(target_name) + if !ok { + return false, "", shared.validation_error("unknown screen") + } + err = ui.navigate_to_screen(controller, target) + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("screen: %s", ui.screen_name(target)), shared.ok() + } + + if strings.has_prefix(input, "step ") { + step_name := strings.trim_space(input[len("step "):]) + next, ok := workflow_from_name(step_name) + if !ok { + return false, "", shared.validation_error("unknown workflow step") + } + err = ui.set_workflow_step(controller, next) + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("step: %v", next), shared.ok() + } + + if strings.trim_space(input) == "new" { + core.dispose_state(&controller.state) + controller.state = core.new_initial_state() + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + last_job_id^ = 0 + return false, fmt.aprintf("new project initialized"), shared.ok() + } + + local_pages, is_generate_local_script, lserr := parse_generate_script_local_pages(input) + if !shared.is_ok(lserr) { + return false, "", lserr + } + if is_generate_local_script { + core.set_workflow_step(&controller.state, .Generating_Script) + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + controller.state.workflow.is_generating = true + controller.state.workflow.generation_progress = 25 + + script := build_local_script(controller.state.story_idea, local_pages) + core.dispose_script(&controller.state.script) + controller.state.script = script + controller.state.characters = controller.state.script.characters + core.set_workflow_step(&controller.state, .Script_Review) + controller.active_screen = .Script + controller.state.workflow.is_generating = false + controller.state.workflow.generation_progress = 100 + controller.state.workflow.error_message = "" + return false, fmt.aprintf("local script generated (%d pages)", local_pages), shared.ok() + } + + script_pages, is_generate_script, pserr := parse_generate_script_pages(input) + if !shared.is_ok(pserr) { + return false, "", pserr + } + if is_generate_script { + cfg := shared.load_config() + core.set_workflow_step(&controller.state, .Generating_Script) + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + controller.state.workflow.is_generating = true + controller.state.workflow.generation_progress = 25 + + opts := adapters.Generate_Script_Options{ + story_idea = controller.state.story_idea, + genre = controller.state.story_genre, + art_style = controller.state.art_style, + num_pages = script_pages, + audience = controller.state.target_audience, + } + script, gerr := adapters.generate_comic_script_stub(cfg, opts) + if !shared.is_ok(gerr) { + controller.state.workflow.is_generating = false + controller.state.workflow.error_message = gerr.message + controller.state.workflow.current_step = .Story_Input + controller.active_screen = .Story + return false, "", gerr + } + + core.dispose_script(&controller.state.script) + controller.state.script = script + controller.state.characters = controller.state.script.characters + core.set_workflow_step(&controller.state, .Script_Review) + controller.active_screen = .Script + controller.state.workflow.is_generating = false + controller.state.workflow.generation_progress = 100 + controller.state.workflow.error_message = "" + return false, fmt.aprintf("script generated (%d pages)", script_pages), shared.ok() + } + + panel_local_page, is_generate_panels_local, plerr := parse_generate_panels_local_page(input) + if !shared.is_ok(plerr) { + return false, "", plerr + } + if is_generate_panels_local { + panels: []core.Panel + if panel_local_page > 0 { + panels = collect_script_panels_for_page(controller.state.script, panel_local_page) + } else { + panels = collect_script_panels(controller.state.script) + } + defer delete(panels) + if len(panels) == 0 { + return false, "", shared.validation_error("no script panels available") + } + + core.set_workflow_step(&controller.state, .Generating_Panels) + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + controller.state.workflow.is_generating = true + controller.state.workflow.generation_progress = 35 + + images, gerr := build_local_panel_images(panels) + if !shared.is_ok(gerr) { + controller.state.workflow.is_generating = false + controller.state.workflow.error_message = gerr.message + return false, "", gerr + } + + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = images + core.set_workflow_step(&controller.state, .Layout) + controller.active_screen = .Layout + controller.state.workflow.is_generating = false + controller.state.workflow.generation_progress = 100 + controller.state.workflow.error_message = "" + if panel_local_page > 0 { + return false, fmt.aprintf("local panel images generated for page %d (%d)", panel_local_page, len(images)), shared.ok() + } + return false, fmt.aprintf("local panel images generated (%d)", len(images)), shared.ok() + } + + panel_page, is_generate_panels, pperr := parse_generate_panels_page(input) + if !shared.is_ok(pperr) { + return false, "", pperr + } + if is_generate_panels { + cfg := shared.load_config() + panels: []core.Panel + if panel_page > 0 { + panels = collect_script_panels_for_page(controller.state.script, panel_page) + } else { + panels = collect_script_panels(controller.state.script) + } + defer delete(panels) + if len(panels) == 0 { + return false, "", shared.validation_error("no script panels available") + } + + core.set_workflow_step(&controller.state, .Generating_Panels) + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + controller.state.workflow.is_generating = true + controller.state.workflow.generation_progress = 35 + + q := adapters.new_fal_queue(2) + client := adapters.new_fal_client(&q) + images, gerr := adapters.generate_all_panels_batched(client, cfg, panels, controller.state.characters, controller.state.art_style, controller.state.project.project_id) + if !shared.is_ok(gerr) { + controller.state.workflow.is_generating = false + controller.state.workflow.error_message = gerr.message + return false, "", gerr + } + + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = images + core.set_workflow_step(&controller.state, .Layout) + controller.active_screen = .Layout + controller.state.workflow.is_generating = false + controller.state.workflow.generation_progress = 100 + controller.state.workflow.error_message = "" + if panel_page > 0 { + return false, fmt.aprintf("panel images generated for page %d (%d)", panel_page, len(images)), shared.ok() + } + return false, fmt.aprintf("panel images generated (%d)", len(images)), shared.ok() + } + + if strings.trim_space(input) == "layout auto" { + panels := collect_script_panels(controller.state.script) + defer delete(panels) + if len(panels) == 0 { + return false, "", shared.validation_error("no script panels available") + } + core.dispose_page_layouts(&controller.state.page_layouts) + controller.state.page_layouts = core.auto_layout_pages(panels, controller.state.page_size, controller.state.story_genre, "") + controller.state.workflow.current_step = .Layout + controller.active_screen = .Layout + return false, fmt.aprintf("layout generated (%d pages)", len(controller.state.page_layouts)), shared.ok() + } + + project_path, quick_all_format, quick_all_export_path, quick_all_pages, is_quick_local_all, qaerr := parse_quick_local_all_command(input) + if !shared.is_ok(qaerr) { + return false, "", qaerr + } + if is_quick_local_all { + if err := run_quick_local_pipeline(controller, quick_all_format, quick_all_export_path, quick_all_pages); !shared.is_ok(err) { + return false, "", err + } + err = adapters.save_project(project_path, controller.state) + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("quick local all saved %s and exported %s (%d pages)", project_path, quick_all_export_path, quick_all_pages), shared.ok() + } + + quick_format, quick_path, quick_pages, is_quick_local, qerr := parse_quick_local_command(input) + if !shared.is_ok(qerr) { + return false, "", qerr + } + if is_quick_local { + if err := run_quick_local_pipeline(controller, quick_format, quick_path, quick_pages); !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("quick local exported %s (%d pages)", quick_path, quick_pages), shared.ok() + } + + export_format, export_path, is_export, exerr := parse_export_command(input) + if !shared.is_ok(exerr) { + return false, "", exerr + } + if is_export { + opts := adapters.Export_Options{format = export_format, page_size = controller.state.page_size, dpi = 300, quality = 90} + err = adapters.export_comic_stub(export_path, controller.state.page_layouts, controller.state.panel_images, opts) + if !shared.is_ok(err) { + controller.state.workflow.error_message = err.message + return false, "", err + } + controller.state.export_format = export_format + controller.active_screen = .Export + controller.state.workflow.current_step = .Complete + controller.state.workflow.error_message = "" + return false, fmt.aprintf("exported %s", export_path), shared.ok() + } + + if strings.has_prefix(input, "set idea ") { + v := strings.trim_space(input[len("set idea "):]) + controller.state.story_idea = fmt.aprintf("%s", v) + return false, fmt.aprintf("story idea updated"), shared.ok() + } + + if strings.has_prefix(input, "set genre ") { + v := strings.trim_space(input[len("set genre "):]) + controller.state.story_genre = fmt.aprintf("%s", v) + return false, fmt.aprintf("story genre updated"), shared.ok() + } + + if strings.has_prefix(input, "set audience ") { + v := strings.trim_space(input[len("set audience "):]) + controller.state.target_audience = fmt.aprintf("%s", v) + return false, fmt.aprintf("target audience updated"), shared.ok() + } + + if strings.has_prefix(input, "saveas ") { + path := strings.trim_space(input[len("saveas "):]) + err = adapters.save_project(path, controller.state) + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("saved to %s", path), shared.ok() + } + + if strings.has_prefix(input, "save ") { + path := strings.trim_space(input[len("save "):]) + err = adapters.save_project(path, controller.state) + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("saved to %s", path), shared.ok() + } + + if strings.has_prefix(input, "open ") { + path := strings.trim_space(input[len("open "):]) + loaded, lerr := adapters.load_project(path) + if !shared.is_ok(lerr) { + return false, "", lerr + } + core.dispose_state(&controller.state) + controller.state = loaded + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + return false, fmt.aprintf("loaded from %s", path), shared.ok() + } + + if strings.has_prefix(input, "load ") { + path := strings.trim_space(input[len("load "):]) + loaded, lerr := adapters.load_project(path) + if !shared.is_ok(lerr) { + return false, "", lerr + } + core.dispose_state(&controller.state) + controller.state = loaded + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + return false, fmt.aprintf("loaded from %s", path), shared.ok() + } + + if strings.has_prefix(input, "start ") { + name := strings.trim_space(input[len("start "):]) + job_type, ok := job_type_from_name(name) + if !ok { + return false, "", shared.validation_error("unknown job type") + } + id := ui.start_background_job(controller, job_type, "job") + _ = ui.mark_job_running(&controller.jobs, id) + last_job_id^ = id + return false, fmt.aprintf("started job %d", id), shared.ok() + } + + if strings.has_prefix(input, "progress ") { + v := strings.trim_space(input[len("progress "):]) + n, ok := strconv.parse_int(v) + if !ok { + return false, "", shared.validation_error("invalid progress") + } + if n < 0 || n > 100 { + return false, "", shared.validation_error("progress must be 0..100") + } + ui.set_generation_progress(controller, f32(n)) + controller.state.workflow.is_generating = true + return false, fmt.aprintf("progress set to %d", n), shared.ok() + } + + if strings.has_prefix(input, "fail ") { + if last_job_id^ <= 0 { + return false, "", shared.validation_error("no active job") + } + msg := strings.trim_space(input[len("fail "):]) + if len(msg) == 0 { + msg = "job failed" + } + err = ui.finish_background_job(controller, last_job_id^, msg) + if !shared.is_ok(err) { + return false, "", err + } + return false, fmt.aprintf("job marked failed"), shared.ok() + } + + return false, "", shared.validation_error("unknown command") +} + +run_tui_loop :: proc(state: ^core.Comic_State) -> (string, shared.App_Error) { + controller := ui.new_controller(state^) + defer ui.dispose_job_manager(&controller.jobs) + + last_job_id := 0 + + for { + clear_screen() + fmt.println("comic-odin interactive tui") + fmt.println("screens: [1]Story [2]Script [3]Characters [4]Panels [5]Layout [6]Bubbles [7]Export [8]Community") + fmt.println("shortcuts: h help | s status | ? doctor | r ready | n next | p plan | x auto | d done | c cancel | q quit") + fmt.println() + view := ui.render_app_to_string(controller) + fmt.println(view) + delete(view) + fmt.print("\ntui> ") + + line, ok, rerr := read_stdin_line() + if !shared.is_ok(rerr) { + return "", rerr + } + if !ok { + break + } + + cmd := normalize_tui_command(line) + if len(cmd) == 0 { + delete(line) + continue + } + + quit, out, cerr := run_tui_command(&controller, cmd, &last_job_id) + delete(line) + if !shared.is_ok(cerr) { + fmt.printf("error: %s\n", cerr.message) + } else if len(out) > 0 { + fmt.println(out) + delete(out) + } + if quit { + break + } + } + + core.dispose_state(state) + state^ = controller.state + controller.state = core.Comic_State{} + return "", shared.ok() +} + +run_cli_command :: proc(cmd: Parsed_CLI_Command, state: ^core.Comic_State) -> (string, shared.App_Error) { + switch cmd.kind { + case .Demo: + controller := ui.new_controller(state^) + defer ui.dispose_controller(&controller) + job_id := ui.start_background_job(&controller, .Generate_Script, "Generating script") + _ = ui.mark_job_running(&controller.jobs, job_id) + ui.set_generation_progress(&controller, 35) + _ = ui.finish_background_job(&controller, job_id, "") + return ui.render_app_to_string(controller), shared.ok() + case .Status: + controller := ui.new_controller(state^) + defer ui.dispose_controller(&controller) + return ui.render_app_to_string(controller), shared.ok() + case .Save: + if len(cmd.path) == 0 { + return usage_text(), shared.validation_error("missing save path") + } + err := adapters.save_project(cmd.path, state^) + if !shared.is_ok(err) { + return "", err + } + return fmt.aprintf("Saved project to %s", cmd.path), shared.ok() + case .Load: + if len(cmd.path) == 0 { + return usage_text(), shared.validation_error("missing load path") + } + loaded, err := adapters.load_project(cmd.path) + if !shared.is_ok(err) { + return "", err + } + core.dispose_state(state) + state^ = loaded + return fmt.aprintf("Loaded project from %s", cmd.path), shared.ok() + case .Tui: + return run_tui_loop(state) + case .Gui: + err := gui.run_gui_app(state) + if !shared.is_ok(err) { + return "", err + } + return fmt.aprintf("GUI session ended"), shared.ok() + case .Help: + fallthrough + case: + return usage_text(), shared.ok() + } +} + +run_cli_from_process_args :: proc(state: ^core.Comic_State) -> (string, shared.App_Error) { + if len(os.args) <= 1 { + return run_cli_command(Parsed_CLI_Command{kind = .Demo}, state) + } + cmd := parse_cli_command(os.args[1:]) + return run_cli_command(cmd, state) +} diff --git a/odin/src/app/main.odin b/odin/src/app/main.odin new file mode 100644 index 0000000..f00822f --- /dev/null +++ b/odin/src/app/main.odin @@ -0,0 +1,25 @@ +package main + +import "core:fmt" +import "../core" +import "../shared" + +main :: proc() { + cfg := shared.load_config() + state := core.new_initial_state() + defer core.dispose_state(&state) + + fmt.println("comic-odin: phase6 cli runtime") + fmt.printf("DeepSeek configured: %v\n", len(cfg.deepseek_api_key) > 0) + + out, err := run_cli_from_process_args(&state) + if !shared.is_ok(err) { + fmt.printf("Error: %s\n", err.message) + if len(out) > 0 { + fmt.println(out) + } + return + } + + fmt.println(out) +} diff --git a/odin/src/core/bubble.odin b/odin/src/core/bubble.odin new file mode 100644 index 0000000..78ffa4c --- /dev/null +++ b/odin/src/core/bubble.odin @@ -0,0 +1,163 @@ +package core + +import "core:fmt" + +DEFAULT_BUBBLE_STYLE := Speech_Bubble_Style{ + background_color = "#ffffff", + border_color = "#000000", + border_width = 2, + border_radius = 16, + font_family = "Comic Sans MS, cursive, sans-serif", + font_size = 14, + text_color = "#000000", + padding = 12, +} + +clampf :: proc(v, minv, maxv: f32) -> f32 { + if v < minv { return minv } + if v > maxv { return maxv } + return v +} + +calculate_bubble_size :: proc(text: string, style: Speech_Bubble_Style) -> Size { + char_width := style.font_size * 0.6 + char_height := style.font_size * 1.4 + chars_per_line: f32 = 25 + lines := f32(len(text)) / chars_per_line + if lines < 1 { + lines = 1 + } + + width := f32(len(text))*char_width/lines + style.padding*2 + width = clampf(width, 100, 300) + height := lines*char_height + style.padding*2 + 20 + + return Size{width = width, height = height} +} + +auto_place_bubble :: proc(bubble: Speech_Bubble, panel_w, panel_h: f32, speaker_pos: Position) -> Speech_Bubble { + updated := bubble + size := calculate_bubble_size(bubble.text, bubble.style) + updated.size = size + + speaker := speaker_pos + if speaker.x == 0 && speaker.y == 0 { + speaker = Position{x = panel_w * 0.5, y = panel_h * 0.7} + } + + switch bubble.type { + case .Thought: + updated.position = Position{ + x = clampf(speaker.x-size.width/2, 20, panel_w-size.width-20), + y = clampf(speaker.y-size.height-40, 20, panel_h-size.height-10), + } + updated.tail_target = Position{x = speaker.x, y = speaker.y - 20} + updated.tail_direction = "bottom" + case .Shout: + updated.size = Size{width = size.width * 1.1, height = size.height * 1.1} + updated.position = Position{ + x = clampf(speaker.x-updated.size.width/2, 10, panel_w-updated.size.width-10), + y = clampf(speaker.y-updated.size.height-30, 10, panel_h-updated.size.height-10), + } + updated.tail_target = Position{x = speaker.x, y = speaker.y - 10} + updated.tail_direction = "bottom" + case .Whisper: + updated.position = Position{ + x = clampf(speaker.x-size.width/2, 20, panel_w-size.width-20), + y = clampf(speaker.y-size.height-30, 20, panel_h-size.height-10), + } + updated.tail_target = Position{x = speaker.x, y = speaker.y - 20} + updated.tail_direction = "bottom" + case .Narration: + updated.position = Position{x = panel_w * 0.1, y = 20} + updated.size = Size{width = panel_w * 0.8, height = size.height} + updated.tail_direction = "bottom" + case .Sound_Effect: + updated.position = Position{ + x = clampf(speaker.x+20, 10, panel_w-size.width-10), + y = clampf(speaker.y-size.height-50, 10, panel_h-size.height-10), + } + updated.tail_target = Position{x = speaker.x + 30, y = speaker.y - 30} + updated.tail_direction = "bottom-left" + case .Normal: + updated.position = Position{ + x = clampf(speaker.x-size.width/2, 20, panel_w-size.width-20), + y = clampf(speaker.y-size.height-30, 20, panel_h-size.height-10), + } + updated.tail_target = Position{x = speaker.x, y = speaker.y - 20} + updated.tail_direction = "bottom" + } + + return updated +} + +auto_place_panel_bubbles :: proc(panel: Panel, panel_w, panel_h: f32) -> []Speech_Bubble { + if len(panel.dialogue) == 0 && len(panel.caption) == 0 { + return nil + } + + bubbles: [dynamic]Speech_Bubble + + for dialogue, idx in panel.dialogue { + speaker_count := len(panel.characters_present) + speaker_idx := 0 + for char_id, j in panel.characters_present { + if char_id == dialogue.speaker_id { + speaker_idx = j + break + } + } + + speaker_x := panel_w * 0.5 + if speaker_count > 1 { + speaker_x = (panel_w / f32(speaker_count + 1)) * f32(speaker_idx + 1) + } + speaker_y := panel_h * 0.75 + + bubble := Speech_Bubble{ + id = fmt.aprintf("bubble_%s_%d", panel.panel_id, idx), + panel_id = panel.panel_id, + type = dialogue.bubble_type, + text = dialogue.text, + position = Position{}, + size = Size{width = 100, height = 50}, + tail_direction = "bottom", + tail_target = Position{x = speaker_x, y = speaker_y}, + style = DEFAULT_BUBBLE_STYLE, + speaker_id = dialogue.speaker_id, + } + + placed := auto_place_bubble(bubble, panel_w, panel_h, Position{x = speaker_x, y = speaker_y}) + placed.position.y = clampf(placed.position.y-f32(idx*10), 10, panel_h-placed.size.height-10) + placed.position.x = clampf(placed.position.x, 10, panel_w-placed.size.width-10) + + append(&bubbles, placed) + } + + if len(panel.caption) > 0 { + caption_bubble := Speech_Bubble{ + id = fmt.aprintf("caption_%s", panel.panel_id), + panel_id = panel.panel_id, + type = .Narration, + text = panel.caption, + position = Position{x = panel_w * 0.1, y = 20}, + size = Size{width = panel_w * 0.8, height = 40}, + tail_direction = "bottom", + tail_target = Position{x = panel_w * 0.5, y = 60}, + style = Speech_Bubble_Style{ + background_color = "#f5f5f5", + border_color = "#999999", + border_width = DEFAULT_BUBBLE_STYLE.border_width, + border_radius = DEFAULT_BUBBLE_STYLE.border_radius, + font_family = DEFAULT_BUBBLE_STYLE.font_family, + font_size = DEFAULT_BUBBLE_STYLE.font_size, + text_color = DEFAULT_BUBBLE_STYLE.text_color, + padding = DEFAULT_BUBBLE_STYLE.padding, + }, + speaker_id = "", + } + append(&bubbles, caption_bubble) + } + + return bubbles[:] +} diff --git a/odin/src/core/character_prompt.odin b/odin/src/core/character_prompt.odin new file mode 100644 index 0000000..5158ccf --- /dev/null +++ b/odin/src/core/character_prompt.odin @@ -0,0 +1,108 @@ +package core + +import "core:fmt" + +DEFAULT_PROMPT_AGE :: "young adult" +DEFAULT_PROMPT_GENDER :: "person" +DEFAULT_PROMPT_BODY :: "average" +DEFAULT_PROMPT_OUTFIT :: "casual clothing" +DEFAULT_PROMPT_ACCESSORIES :: "no accessories" + +build_character_prompt :: proc(c: Character, action, setting, lighting, art_style: string) -> string { + t := c.prompt_template + + age := t.age + if len(age) == 0 { age = DEFAULT_PROMPT_AGE } + gender := t.gender + if len(gender) == 0 { gender = DEFAULT_PROMPT_GENDER } + body := t.body_type + if len(body) == 0 { body = DEFAULT_PROMPT_BODY } + outfit := t.outfit + if len(outfit) == 0 { outfit = DEFAULT_PROMPT_OUTFIT } + accessories := t.accessories + if len(accessories) == 0 { accessories = DEFAULT_PROMPT_ACCESSORIES } + + return fmt.aprintf( + "%s style. %s-year-old %s, %s %s hair, %s eyes, %s skin, %s build, wearing %s, %s, %s, %s, %s, %s", + art_style, + age, + gender, + t.hair_color, + t.hair_style, + t.eye_color, + t.skin_tone, + body, + outfit, + accessories, + t.distinguishing_features, + action, + setting, + lighting, + ) +} + +derive_seed_from_string :: proc(s: string) -> i64 { + hash: i32 = 0 + for r in s { + hash = ((hash << 5) - hash) + i32(r) + } + + res := i64(hash) + if res < 0 { + res = -res + } + return res % 2147483647 +} + +hash_char :: proc(hash: ^i32, c: u8) { + hash^ = ((hash^ << 5) - hash^) + i32(c) +} + +hash_string :: proc(hash: ^i32, s: string) { + for r in s { + hash^ = ((hash^ << 5) - hash^) + i32(r) + } +} + +hash_decimal_int :: proc(hash: ^i32, n: int) { + if n == 0 { + hash_char(hash, '0') + return + } + + value := n + if value < 0 { + hash_char(hash, '-') + value = -value + } + + buf: [20]u8 + i := len(buf) + for value > 0 { + i -= 1 + d := value % 10 + buf[i] = u8('0' + d) + value /= 10 + } + + for ; i < len(buf); i += 1 { + hash_char(hash, buf[i]) + } +} + +generate_panel_seed :: proc(project_id: string, page_number, panel_number: int, panel_id: string) -> i64 { + hash: i32 = 0 + hash_string(&hash, project_id) + hash_char(&hash, '_') + hash_decimal_int(&hash, page_number) + hash_char(&hash, '_') + hash_decimal_int(&hash, panel_number) + hash_char(&hash, '_') + hash_string(&hash, panel_id) + + res := i64(hash) + if res < 0 { + res = -res + } + return res % 2147483647 +} diff --git a/odin/src/core/dispose.odin b/odin/src/core/dispose.odin new file mode 100644 index 0000000..28d4953 --- /dev/null +++ b/odin/src/core/dispose.odin @@ -0,0 +1,140 @@ +package core + +dispose_character :: proc(c: Character) { + delete(c.character_sheet_urls) +} + +dispose_character_owned :: proc(c: Character) { + delete(c.id) + delete(c.name) + delete(c.description) + delete(c.reference_image_url) + delete(c.first_appearance_panel) + delete(c.character_sheet_urls) +} + +dispose_script :: proc(script: ^Comic_Script) { + for c in script.characters { + dispose_character(c) + } + for p in script.pages { + for pan in p.panels { + delete(pan.characters_present) + delete(pan.dialogue) + delete(pan.sound_effects) + } + delete(p.panels) + } + delete(script.characters) + delete(script.pages) +} + +dispose_script_owned :: proc(script: ^Comic_Script) { + delete(script.title) + delete(script.synopsis) + + for c in script.characters { + dispose_character_owned(c) + } + for p in script.pages { + for pan in p.panels { + delete(pan.panel_id) + delete(pan.description) + delete(pan.caption) + for id in pan.characters_present { delete(id) } + delete(pan.characters_present) + for d in pan.dialogue { + delete(d.speaker_id) + delete(d.text) + delete(d.emotion) + } + delete(pan.dialogue) + for s in pan.sound_effects { delete(s) } + delete(pan.sound_effects) + } + delete(p.panels) + } + delete(script.characters) + delete(script.pages) +} + +dispose_page_layouts :: proc(layouts: ^[]Page_Layout) { + for l in layouts^ { + delete(l.panels) + } + delete(layouts^) +} + +dispose_speech_bubbles :: proc(bubbles: ^map[string][]Speech_Bubble) { + for _, s in bubbles^ { + delete(s) + } + delete(bubbles^) +} + +dispose_state :: proc(state: ^Comic_State) { + dispose_script(&state.script) + + for c in state.characters { + dispose_character(c) + } + if raw_data(state.characters) != raw_data(state.script.characters) { + delete(state.characters) + } + + delete(state.panel_images) + delete(state.panel_errors) + dispose_page_layouts(&state.page_layouts) + dispose_speech_bubbles(&state.speech_bubbles) + delete(state.workflow.completed_steps) + + state.panel_images = nil + state.panel_errors = nil + state.speech_bubbles = nil + state.page_layouts = nil + state.characters = nil + state.workflow.completed_steps = nil +} + +dispose_state_owned :: proc(state: ^Comic_State) { + delete(state.project.project_id) + delete(state.project.project_name) + delete(state.project.created_at_iso) + delete(state.project.last_modified_iso) + delete(state.story_idea) + delete(state.story_genre) + delete(state.target_audience) + delete(state.art_style) + delete(state.workflow.error_message) + + dispose_script_owned(&state.script) + + for c in state.characters { + dispose_character_owned(c) + } + if raw_data(state.characters) != raw_data(state.script.characters) { + delete(state.characters) + } + + for _, img in state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(state.panel_images) + + for _, msg in state.panel_errors { + delete(msg) + } + delete(state.panel_errors) + + dispose_page_layouts(&state.page_layouts) + dispose_speech_bubbles(&state.speech_bubbles) + delete(state.workflow.completed_steps) + + state.panel_images = nil + state.panel_errors = nil + state.speech_bubbles = nil + state.page_layouts = nil + state.characters = nil + state.workflow.completed_steps = nil +} diff --git a/odin/src/core/layout.odin b/odin/src/core/layout.odin new file mode 100644 index 0000000..95df1a8 --- /dev/null +++ b/odin/src/core/layout.odin @@ -0,0 +1,264 @@ +package core + +Page_Size :: struct { + name: string, + width: int, + height: int, + dpi: int, +} + +get_page_size :: proc(name: Page_Size_Name) -> Page_Size { + switch name { + case .A4: + return Page_Size{"A4", 2480, 3508, 300} + case .Letter: + return Page_Size{"US Letter", 2550, 3300, 300} + case .Manga: + return Page_Size{"B5 Manga", 2158, 3035, 300} + case .Webtoon: + return Page_Size{"Webtoon", 800, 1280, 72} + case .Square: + return Page_Size{"Square", 1080, 1080, 72} + } + return Page_Size{"A4", 2480, 3508, 300} +} + +GRID_2X2_CELLS : [4]Layout_Cell = [4]Layout_Cell{ + {x = 0.02, y = 0.02, w = 0.47, h = 0.47}, + {x = 0.51, y = 0.02, w = 0.47, h = 0.47}, + {x = 0.02, y = 0.51, w = 0.47, h = 0.47}, + {x = 0.51, y = 0.51, w = 0.47, h = 0.47}, +} + +MANGA_3_TIER_CELLS : [6]Layout_Cell = [6]Layout_Cell{ + {x = 0.02, y = 0.02, w = 0.3, h = 0.3}, + {x = 0.35, y = 0.02, w = 0.3, h = 0.3}, + {x = 0.68, y = 0.02, w = 0.3, h = 0.3}, + {x = 0.02, y = 0.35, w = 0.47, h = 0.3}, + {x = 0.51, y = 0.35, w = 0.47, h = 0.3}, + {x = 0.02, y = 0.68, w = 0.96, h = 0.3}, +} + +ACTION_DYNAMIC_CELLS : [5]Layout_Cell = [5]Layout_Cell{ + {x = 0.02, y = 0.02, w = 0.6, h = 0.35}, + {x = 0.64, y = 0.02, w = 0.34, h = 0.35}, + {x = 0.02, y = 0.4, w = 0.34, h = 0.28}, + {x = 0.38, y = 0.4, w = 0.6, h = 0.28}, + {x = 0.02, y = 0.71, w = 0.96, h = 0.27}, +} + +SPLASH_CELLS : [1]Layout_Cell = [1]Layout_Cell{ + {x = 0.02, y = 0.02, w = 0.96, h = 0.96}, +} + +WEBTOON_CELLS : [3]Layout_Cell = [3]Layout_Cell{ + {x = 0.02, y = 0.01, w = 0.96, h = 0.32}, + {x = 0.02, y = 0.34, w = 0.96, h = 0.32}, + {x = 0.02, y = 0.67, w = 0.96, h = 0.32}, +} + +WESTERN_3X3_CELLS : [9]Layout_Cell = [9]Layout_Cell{ + {x = 0.02, y = 0.02, w = 0.3, h = 0.29}, + {x = 0.35, y = 0.02, w = 0.3, h = 0.29}, + {x = 0.68, y = 0.02, w = 0.3, h = 0.29}, + {x = 0.02, y = 0.35, w = 0.3, h = 0.29}, + {x = 0.35, y = 0.35, w = 0.3, h = 0.29}, + {x = 0.68, y = 0.35, w = 0.3, h = 0.29}, + {x = 0.02, y = 0.68, w = 0.3, h = 0.29}, + {x = 0.35, y = 0.68, w = 0.3, h = 0.29}, + {x = 0.68, y = 0.68, w = 0.3, h = 0.29}, +} + +DIALOGUE_HEAVY_CELLS : [8]Layout_Cell = [8]Layout_Cell{ + {x = 0.02, y = 0.02, w = 0.47, h = 0.22}, + {x = 0.51, y = 0.02, w = 0.47, h = 0.22}, + {x = 0.02, y = 0.26, w = 0.47, h = 0.22}, + {x = 0.51, y = 0.26, w = 0.47, h = 0.22}, + {x = 0.02, y = 0.5, w = 0.47, h = 0.22}, + {x = 0.51, y = 0.5, w = 0.47, h = 0.22}, + {x = 0.02, y = 0.74, w = 0.47, h = 0.22}, + {x = 0.51, y = 0.74, w = 0.47, h = 0.22}, +} + +CINEMATIC_CELLS : [4]Layout_Cell = [4]Layout_Cell{ + {x = 0.02, y = 0.02, w = 0.96, h = 0.22}, + {x = 0.02, y = 0.26, w = 0.96, h = 0.22}, + {x = 0.02, y = 0.5, w = 0.96, h = 0.22}, + {x = 0.02, y = 0.74, w = 0.96, h = 0.22}, +} + +pattern_max_panels :: proc(id: string) -> int { + switch id { + case "grid-2x2": + return 4 + case "manga-3-tier": + return 6 + case "action-dynamic": + return 5 + case "splash-page": + return 1 + case "webtoon-scroll": + return 3 + case "western-3x3": + return 9 + case "dialogue-heavy": + return 8 + case "cinematic-widescreen": + return 4 + } + return 4 +} + +pattern_matches_genre :: proc(id: string, genre: string) -> bool { + if len(genre) == 0 { + return true + } + + switch id { + case "grid-2x2": + return true + case "manga-3-tier": + return genre == "manga" || genre == "action" + case "action-dynamic": + return genre == "action" || genre == "superhero" + case "splash-page": + return true + case "webtoon-scroll": + return genre == "webtoon" || genre == "slice-of-life" + case "western-3x3": + return genre == "western-comic" + case "dialogue-heavy": + return genre == "drama" || genre == "slice-of-life" || genre == "romance" + case "cinematic-widescreen": + return genre == "action" || genre == "scifi" || genre == "noir" + } + + return true +} + +get_layout_pattern_by_id :: proc(id: string) -> Layout_Pattern { + switch id { + case "grid-2x2": + return Layout_Pattern{id = id, name = "Classic Grid", description = "2x2 equal panels", genres = nil, max_panels = 4, cells = GRID_2X2_CELLS[:]} + case "manga-3-tier": + return Layout_Pattern{id = id, name = "Manga 3-Tier", description = "Three horizontal tiers", genres = nil, max_panels = 6, cells = MANGA_3_TIER_CELLS[:]} + case "action-dynamic": + return Layout_Pattern{id = id, name = "Action Dynamic", description = "Varied action panels", genres = nil, max_panels = 5, cells = ACTION_DYNAMIC_CELLS[:]} + case "splash-page": + return Layout_Pattern{id = id, name = "Splash Page", description = "Single full-page panel", genres = nil, max_panels = 1, cells = SPLASH_CELLS[:]} + case "webtoon-scroll": + return Layout_Pattern{id = id, name = "Webtoon Scroll", description = "Vertical mobile panels", genres = nil, max_panels = 3, cells = WEBTOON_CELLS[:]} + case "western-3x3": + return Layout_Pattern{id = id, name = "Western 3x3", description = "Classic 3x3", genres = nil, max_panels = 9, cells = WESTERN_3X3_CELLS[:]} + case "dialogue-heavy": + return Layout_Pattern{id = id, name = "Dialogue Heavy", description = "Conversation-focused", genres = nil, max_panels = 8, cells = DIALOGUE_HEAVY_CELLS[:]} + case "cinematic-widescreen": + return Layout_Pattern{id = id, name = "Cinematic Widescreen", description = "Wide cinematic panels", genres = nil, max_panels = 4, cells = CINEMATIC_CELLS[:]} + } + + return Layout_Pattern{id = "grid-2x2", name = "Classic Grid", description = "2x2 equal panels", genres = nil, max_panels = 4, cells = GRID_2X2_CELLS[:]} +} + +select_best_pattern :: proc(panel_count: int, genre: string, preference: string) -> Layout_Pattern { + pattern_ids := [8]string{ + "grid-2x2", + "manga-3-tier", + "action-dynamic", + "splash-page", + "webtoon-scroll", + "western-3x3", + "dialogue-heavy", + "cinematic-widescreen", + } + + if len(preference) > 0 { + if pattern_max_panels(preference) >= panel_count { + return get_layout_pattern_by_id(preference) + } + } + + best_genre_id := "" + best_genre_max := 1 << 30 + for id in pattern_ids { + max_panels := pattern_max_panels(id) + if max_panels < panel_count { + continue + } + if !pattern_matches_genre(id, genre) { + continue + } + if max_panels < best_genre_max { + best_genre_max = max_panels + best_genre_id = id + } + } + if len(best_genre_id) > 0 { + return get_layout_pattern_by_id(best_genre_id) + } + + best_id := "" + best_max := 1 << 30 + for id in pattern_ids { + max_panels := pattern_max_panels(id) + if max_panels < panel_count { + continue + } + if max_panels < best_max { + best_max = max_panels + best_id = id + } + } + if len(best_id) > 0 { + return get_layout_pattern_by_id(best_id) + } + + return get_layout_pattern_by_id("grid-2x2") +} + +auto_layout_pages :: proc(panels: []Panel, page_size: Page_Size_Name, genre: string, pattern_preference: string) -> []Page_Layout { + if len(panels) == 0 { + return nil + } + + size := get_page_size(page_size) + pages: [dynamic]Page_Layout + panel_index := 0 + page_number := 1 + + for panel_index < len(panels) { + remaining := len(panels) - panel_index + pattern := select_best_pattern(remaining, genre, pattern_preference) + take := pattern.max_panels + if take > remaining { + take = remaining + } + + layout_panels: [dynamic]Page_Layout_Panel + for i in 0..= len(pattern.cells) { + cell_index = len(pattern.cells) - 1 + } + + append(&layout_panels, Page_Layout_Panel{ + panel_id = p.panel_id, + panel_number = p.panel_number, + layout_cell = pattern.cells[cell_index], + }) + } + + append(&pages, Page_Layout{ + page_number = page_number, + pattern_id = pattern.id, + panels = layout_panels[:], + width = size.width, + height = size.height, + }) + + panel_index += take + page_number += 1 + } + + return pages[:] +} diff --git a/odin/src/core/script.odin b/odin/src/core/script.odin new file mode 100644 index 0000000..57644c2 --- /dev/null +++ b/odin/src/core/script.odin @@ -0,0 +1,56 @@ +package core + +import "core:fmt" + +script_is_valid_minimal :: proc(script: Comic_Script) -> bool { + if len(script.title) == 0 { + return false + } + if len(script.synopsis) == 0 { + return false + } + if len(script.pages) == 0 { + return false + } + return true +} + +normalize_script :: proc(script: Comic_Script) -> Comic_Script { + normalized := script + + if len(normalized.title) == 0 { + normalized.title = fmt.aprintf("Untitled Comic") + } + if len(normalized.synopsis) == 0 { + normalized.synopsis = fmt.aprintf("Generated comic synopsis") + } + + for idx in 0.. Comic_State { + iso := "" + + return Comic_State{ + project = Project_Metadata{ + project_id = "proj_todo", + project_name = "Untitled Comic", + created_at_iso = iso, + last_modified_iso = iso, + }, + user_mode = .Casual, + story_idea = "", + story_genre = "action", + target_audience = "general", + art_style = "manga", + export_format = .PDF, + page_size = .A4, + color_profile = .RGB, + workflow = Workflow_State{ + current_step = .Story_Input, + completed_steps = nil, + is_generating = false, + generation_progress = 0, + error_message = "", + }, + panel_images = nil, + panel_errors = nil, + speech_bubbles = nil, + } +} + +set_workflow_step :: proc(state: ^Comic_State, step: Workflow_Step) { + state.workflow.current_step = step + + for s in state.workflow.completed_steps { + if s == step { + return + } + } + + old_steps := state.workflow.completed_steps + steps: [dynamic]Workflow_Step + for s in old_steps { + append(&steps, s) + } + append(&steps, step) + state.workflow.completed_steps = steps[:] + delete(old_steps) +} diff --git a/odin/src/core/types.odin b/odin/src/core/types.odin new file mode 100644 index 0000000..21a0e2d --- /dev/null +++ b/odin/src/core/types.odin @@ -0,0 +1,251 @@ +package core + +User_Mode :: enum { + Casual, + Professional, +} + +Workflow_Step :: enum { + Story_Input, + Generating_Script, + Script_Review, + Character_Setup, + Generating_Panels, + Layout, + Speech_Bubbles, + Complete, +} + +Export_Format :: enum { + PDF, + CBZ, + PNG, +} + +Page_Size_Name :: enum { + A4, + Letter, + Manga, + Webtoon, + Square, +} + +Color_Profile :: enum { + RGB, + CMYK, +} + +Character_Role :: enum { + Protagonist, + Antagonist, + Supporting, + Extra, +} + +Shot_Type :: enum { + Establishing, + Wide, + Medium, + Close_Up, + Extreme_Close_Up, + Over_Shoulder, + Aerial, +} + +Layout_Type :: enum { + Grid, + Manga, + Western, + Action, + Dialogue, + Splash, +} + +Bubble_Type :: enum { + Normal, + Thought, + Shout, + Whisper, + Narration, + Sound_Effect, +} + +Transition_Type :: enum { + None, + Fade, + Wipe, + Dissolve, + Action_Lines, +} + +Position :: struct { + x: f32, + y: f32, +} + +Size :: struct { + width: f32, + height: f32, +} + +Character_Prompt_Template :: struct { + age: string, + gender: string, + hair_color: string, + hair_style: string, + skin_tone: string, + eye_color: string, + body_type: string, + outfit: string, + accessories: string, + distinguishing_features: string, +} + +Color_Palette :: struct { + hair: string, + eyes: string, + skin: string, + outfit: string, +} + +Character :: struct { + id: string, + name: string, + role: Character_Role, + description: string, + prompt_template: Character_Prompt_Template, + reference_image_url: string, + character_sheet_urls: []string, + seed: i64, + color_palette: Color_Palette, + appearance_count: int, + first_appearance_panel: string, +} + +Dialogue :: struct { + speaker_id: string, + text: string, + bubble_type: Bubble_Type, + emotion: string, +} + +Panel :: struct { + panel_id: string, + panel_number: int, + shot_type: Shot_Type, + description: string, + characters_present: []string, + dialogue: []Dialogue, + caption: string, + sound_effects: []string, + transition_from_previous: Transition_Type, +} + +Page :: struct { + page_number: int, + layout_type: Layout_Type, + panels: []Panel, +} + +Comic_Script :: struct { + title: string, + synopsis: string, + characters: []Character, + pages: []Page, +} + +Panel_Image :: struct { + url: string, + width: int, + height: int, + seed: i64, + prompt: string, +} + +Layout_Cell :: struct { + x: f32, + y: f32, + w: f32, + h: f32, +} + +Layout_Pattern :: struct { + id: string, + name: string, + description: string, + genres: []string, + max_panels: int, + cells: []Layout_Cell, +} + +Page_Layout_Panel :: struct { + panel_id: string, + panel_number: int, + layout_cell: Layout_Cell, +} + +Page_Layout :: struct { + page_number: int, + pattern_id: string, + panels: []Page_Layout_Panel, + width: int, + height: int, +} + +Speech_Bubble_Style :: struct { + background_color: string, + border_color: string, + border_width: f32, + border_radius: f32, + font_family: string, + font_size: f32, + text_color: string, + padding: f32, +} + +Speech_Bubble :: struct { + id: string, + panel_id: string, + type: Bubble_Type, + text: string, + position: Position, + size: Size, + tail_direction: string, + tail_target: Position, + style: Speech_Bubble_Style, + speaker_id: string, +} + +Project_Metadata :: struct { + project_id: string, + project_name: string, + created_at_iso: string, + last_modified_iso: string, +} + +Workflow_State :: struct { + current_step: Workflow_Step, + completed_steps: []Workflow_Step, + is_generating: bool, + generation_progress: f32, + error_message: string, +} + +Comic_State :: struct { + project: Project_Metadata, + user_mode: User_Mode, + story_idea: string, + story_genre: string, + target_audience: string, + art_style: string, + script: Comic_Script, + characters: []Character, + panel_images: map[string]Panel_Image, + panel_errors: map[string]string, + page_layouts: []Page_Layout, + speech_bubbles: map[string][]Speech_Bubble, + export_format: Export_Format, + page_size: Page_Size_Name, + color_profile: Color_Profile, + workflow: Workflow_State, +} diff --git a/odin/src/core/workflow.odin b/odin/src/core/workflow.odin new file mode 100644 index 0000000..40a57ed --- /dev/null +++ b/odin/src/core/workflow.odin @@ -0,0 +1,24 @@ +package core + +can_transition :: proc(from, to: Workflow_Step) -> bool { + switch from { + case .Story_Input: + return to == .Generating_Script + case .Generating_Script: + return to == .Script_Review || to == .Story_Input + case .Script_Review: + return to == .Character_Setup + case .Character_Setup: + return to == .Generating_Panels + case .Generating_Panels: + return to == .Layout + case .Layout: + return to == .Speech_Bubbles + case .Speech_Bubbles: + return to == .Complete + case .Complete: + return to == .Story_Input + } + + return false +} diff --git a/odin/src/gui/actions.odin b/odin/src/gui/actions.odin new file mode 100644 index 0000000..c2fe18f --- /dev/null +++ b/odin/src/gui/actions.odin @@ -0,0 +1,429 @@ +package gui + +import "core:fmt" +import "core:strconv" +import "core:strings" +import rl "vendor:raylib" +import "../adapters" +import "../core" +import "../shared" +import "../ui" + +action_generate_local_script :: proc(controller: ^ui.App_Controller, pages: int) -> string { + story := controller.state.story_idea + if len(story) == 0 { + story = "A local GUI adventure" + } + script := build_local_script(story, pages) + core.dispose_script(&controller.state.script) + controller.state.script = script + controller.state.characters = controller.state.script.characters + controller.active_screen = .Script + controller.state.workflow.current_step = .Script_Review + return "Generated local script" +} + +action_generate_deepseek_script :: proc(controller: ^ui.App_Controller, pages: int) -> string { + cfg := shared.load_config() + if len(cfg.deepseek_api_key) == 0 { + return "DeepSeek key missing (set DEEPSEEK_API_KEY)" + } + opts := adapters.Generate_Script_Options{ + story_idea = controller.state.story_idea, + genre = controller.state.story_genre, + art_style = controller.state.art_style, + num_pages = pages, + audience = controller.state.target_audience, + } + script, gerr := adapters.generate_comic_script_stub(cfg, opts) + if !shared.is_ok(gerr) { + return fmt.aprintf("DeepSeek script failed: %s", gerr.message) + } + core.dispose_script(&controller.state.script) + controller.state.script = script + controller.state.characters = controller.state.script.characters + controller.active_screen = .Script + controller.state.workflow.current_step = .Script_Review + return "Generated DeepSeek script" +} + +action_generate_local_panels :: proc(controller: ^ui.App_Controller) -> string { + panels := collect_script_panels(controller.state.script) + defer delete(panels) + if len(panels) == 0 { + return "No script panels available" + } + images, ierr := build_local_panel_images(panels) + if !shared.is_ok(ierr) { + return ierr.message + } + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = images + controller.active_screen = .Panels + return "Generated local panels" +} + +action_regenerate_panel :: proc(controller: ^ui.App_Controller, panel_id: string) -> string { + panels := collect_script_panels(controller.state.script) + defer delete(panels) + + target_panel: core.Panel + found := false + for p in panels { + if p.panel_id == panel_id { + target_panel = p + found = true + break + } + } + if !found { + return "Panel not found in script" + } + + single := make([]core.Panel, 1) + single[0] = target_panel + defer delete(single) + + images, ierr := build_local_panel_images(single) + if !shared.is_ok(ierr) { + if controller.state.panel_errors == nil { + controller.state.panel_errors = make(map[string]string) + } + controller.state.panel_errors[panel_id] = strings.clone(ierr.message) + return "Panel generation failed" + } + + if img, has := images[panel_id]; has { + if old, exists := controller.state.panel_images[panel_id]; exists { + delete(old.url) + delete(old.prompt) + } + if controller.state.panel_images == nil { + controller.state.panel_images = make(map[string]core.Panel_Image) + } + controller.state.panel_images[panel_id] = img + + if err_msg, err_exists := controller.state.panel_errors[panel_id]; err_exists { + delete(err_msg) + delete_key(&controller.state.panel_errors, panel_id) + } + } + delete(images) // free the map shell returned by build_local_panel_images + + return "Regenerated panel" +} + +action_layout_auto :: proc(controller: ^ui.App_Controller) -> string { + panels := collect_script_panels(controller.state.script) + defer delete(panels) + if len(panels) == 0 { + return "No script panels for layout" + } + core.dispose_page_layouts(&controller.state.page_layouts) + controller.state.page_layouts = core.auto_layout_pages(panels, controller.state.page_size, controller.state.story_genre, "") + controller.active_screen = .Layout + controller.state.workflow.current_step = .Layout + return "Auto layout generated" +} + +export_format_name :: proc(f: core.Export_Format) -> string { + switch f { + case .PDF: return "PDF" + case .PNG: return "PNG" + case .CBZ: return "CBZ" + } + return "PDF" +} + +parse_pages_or_default :: proc(s: string, def: int) -> int { + v, ok := strconv.parse_int(strings.trim_space(s)) + if !ok || v <= 0 { + return def + } + return v +} + +parse_autosave_interval :: proc(s: string, def: int) -> int { + v, ok := strconv.parse_int(strings.trim_space(s)) + if !ok { + return def + } + if v < 5 { + return 5 + } + if v > 300 { + return 300 + } + return v +} + +set_autosave_interval_text :: proc(dst: ^string, seconds: int) -> string { + v := seconds + if v < 5 { + v = 5 + } + if v > 300 { + v = 300 + } + dst^ = fmt.aprintf("%d", v) + return fmt.aprintf("Autosave interval: %ds", v) +} + +yn :: proc(v: bool) -> string { + if v { + return "yes" + } + return "no" +} + +toggle_summary_show :: proc(active_screen: ui.App_Screen, opts: ^Summary_View_Options) -> string { + #partial switch active_screen { + case .Script: + opts.script_show_all = !opts.script_show_all + return fmt.aprintf("Script summary show-all: %s", yn(opts.script_show_all)) + case .Layout: + opts.layout_show_all = !opts.layout_show_all + return fmt.aprintf("Layout summary show-all: %s", yn(opts.layout_show_all)) + } + return "Summary show toggle unavailable on this screen" +} + +toggle_summary_sort :: proc(active_screen: ui.App_Screen, opts: ^Summary_View_Options) -> string { + #partial switch active_screen { + case .Script: + opts.script_desc = !opts.script_desc + sort_name := "asc" + if opts.script_desc { + sort_name = "desc" + } + return fmt.aprintf("Script summary sort: %s", sort_name) + case .Layout: + opts.layout_desc = !opts.layout_desc + sort_name := "asc" + if opts.layout_desc { + sort_name = "desc" + } + return fmt.aprintf("Layout summary sort: %s", sort_name) + } + return "Summary sort toggle unavailable on this screen" +} + +toggle_summary_show_if_supported :: proc(active_screen: ui.App_Screen, opts: ^Summary_View_Options) -> string { + if active_screen == .Script || active_screen == .Layout { + return toggle_summary_show(active_screen, opts) + } + return "" +} + +toggle_summary_sort_if_supported :: proc(active_screen: ui.App_Screen, opts: ^Summary_View_Options) -> string { + if active_screen == .Script || active_screen == .Layout { + return toggle_summary_sort(active_screen, opts) + } + return "" +} + +reset_project_session :: proc(controller: ^ui.App_Controller, is_dirty: ^bool, last_autosave_at: ^f64, touch_time: bool) -> string { + core.dispose_state(&controller.state) + controller.state = core.new_initial_state() + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + is_dirty^ = false + if touch_time { + last_autosave_at^ = rl.GetTime() + } + return "Reset project" +} + +open_project_session :: proc(controller: ^ui.App_Controller, project_path, export_path: ^string, export_format: core.Export_Format, is_dirty: ^bool, last_autosave_at: ^f64) -> string { + normalize_project_path_field(project_path) + loaded, lerr := adapters.load_project(project_path^) + if !shared.is_ok(lerr) { + return lerr.message + } + core.dispose_state(&controller.state) + controller.state = loaded + controller.active_screen = ui.screen_from_workflow(controller.state.workflow.current_step) + sync_export_path_to_project_dir(project_path^, export_path, export_format) + is_dirty^ = false + last_autosave_at^ = rl.GetTime() + return fmt.aprintf("Opened project: %s (export -> %s)", project_path^, export_path^) +} + +resolve_confirm_action_with_message :: proc(action: Pending_Confirm_Action, controller: ^ui.App_Controller, project_path, export_path: ^string, export_format: core.Export_Format, is_dirty: ^bool, last_autosave_at: ^f64) -> string { + switch action { + case .Reset_Project: + return reset_project_session(controller, is_dirty, last_autosave_at, true) + case .Open_Project: + return open_project_session(controller, project_path, export_path, export_format, is_dirty, last_autosave_at) + case .None: + return "No pending destructive action" + } + return "No pending destructive action" +} + +save_project_session_with_message :: proc(project_path: ^string, state: core.Comic_State, is_dirty: ^bool, last_autosave_at, last_save_at: ^f64, success_prefix: string) -> string { + normalize_project_path_field(project_path) + err := adapters.save_project(project_path^, state) + if !shared.is_ok(err) { + return err.message + } + is_dirty^ = false + last_autosave_at^ = rl.GetTime() + last_save_at^ = last_autosave_at^ + return fmt.aprintf("%s: %s", success_prefix, project_path^) +} + +action_export :: proc(controller: ^ui.App_Controller, export_path: string, export_format: core.Export_Format) -> string { + opts := adapters.Export_Options{format = export_format, page_size = controller.state.page_size, dpi = 300, quality = 90} + err := adapters.export_comic_stub(export_path, controller.state.page_layouts, controller.state.panel_images, opts) + if !shared.is_ok(err) { + return err.message + } + controller.active_screen = .Export + controller.state.workflow.current_step = .Complete + controller.state.export_format = export_format + return fmt.aprintf("Exported %s", export_format_name(export_format)) +} + +gui_next_hint_with_source :: proc(controller: ui.App_Controller, use_deepseek_script: bool) -> string { + if len(controller.state.script.pages) == 0 { + if use_deepseek_script { + return "generate script" + } + return "generate script local" + } + if len(controller.state.panel_images) == 0 { + return "generate panels local" + } + if len(controller.state.page_layouts) == 0 { + return "layout auto" + } + return "export pdf" +} + +gui_next_hint :: proc(controller: ui.App_Controller) -> string { + return gui_next_hint_with_source(controller, false) +} + +action_run_next :: proc(controller: ^ui.App_Controller, export_path: string, export_format: core.Export_Format, script_pages: int, use_deepseek_script: bool) -> string { + hint := gui_next_hint_with_source(controller^, use_deepseek_script) + switch hint { + case "generate script": + return action_generate_deepseek_script(controller, script_pages) + case "generate script local": + return action_generate_local_script(controller, script_pages) + case "generate panels local": + return action_generate_local_panels(controller) + case "layout auto": + return action_layout_auto(controller) + case "export pdf": + return action_export(controller, export_path, export_format) + } + return "No next action" +} + +action_run_auto_all_local :: proc(controller: ^ui.App_Controller, export_path: string, export_format: core.Export_Format, script_pages: int, use_deepseek_script: bool) -> string { + for _ in 0..<4 { + msg := action_run_next(controller, export_path, export_format, script_pages, use_deepseek_script) + if controller.active_screen == .Export { + return fmt.aprintf("Auto-all complete: %s", msg) + } + } + return "Auto-all could not complete" +} + +run_script_action :: proc(controller: ^ui.App_Controller, pages_count: int, use_deepseek_script: bool, is_dirty: ^bool) -> string { + is_dirty^ = true + if use_deepseek_script { + return action_generate_deepseek_script(controller, pages_count) + } + return action_generate_local_script(controller, pages_count) +} + +run_panels_action :: proc(controller: ^ui.App_Controller, can_generate_panels: bool, is_dirty: ^bool) -> string { + if !can_generate_panels { + return "Generate script before panels" + } + is_dirty^ = true + return action_generate_local_panels(controller) +} + +run_layout_action :: proc(controller: ^ui.App_Controller, can_layout: bool, is_dirty: ^bool) -> string { + if !can_layout { + return "Generate panels before layout" + } + is_dirty^ = true + return action_layout_auto(controller) +} + +run_export_action :: proc(controller: ^ui.App_Controller, export_path: ^string, export_format: core.Export_Format, can_export: bool, is_dirty: ^bool, last_export_at: ^f64) -> string { + normalize_export_path_field(export_path, export_format) + if !can_export { + return "Export blocked: generate panels + layout first" + } + msg := action_export(controller, export_path^, export_format) + is_dirty^ = true + if strings.has_prefix(msg, "Exported ") { + last_export_at^ = rl.GetTime() + } + return msg +} + +run_next_action :: proc(controller: ^ui.App_Controller, export_path: ^string, export_format: core.Export_Format, pages_count: int, use_deepseek_script: bool, is_dirty: ^bool, last_export_at: ^f64) -> string { + normalize_export_path_field(export_path, export_format) + msg := action_run_next(controller, export_path^, export_format, pages_count, use_deepseek_script) + is_dirty^ = true + if controller.active_screen == .Export { + last_export_at^ = rl.GetTime() + } + return msg +} + +run_auto_all_action :: proc(controller: ^ui.App_Controller, export_path: ^string, export_format: core.Export_Format, pages_count: int, use_deepseek_script: bool, is_dirty: ^bool, last_export_at: ^f64) -> string { + normalize_export_path_field(export_path, export_format) + msg := action_run_auto_all_local(controller, export_path^, export_format, pages_count, use_deepseek_script) + is_dirty^ = true + if controller.active_screen == .Export { + last_export_at^ = rl.GetTime() + } + return msg +} + +run_auto_all_save_action :: proc(controller: ^ui.App_Controller, project_path, export_path: ^string, export_format: core.Export_Format, pages_count: int, use_deepseek_script: bool, is_dirty: ^bool, last_export_at, last_autosave_at, last_save_at: ^f64) -> string { + normalize_export_path_field(export_path, export_format) + msg := action_run_auto_all_local(controller, export_path^, export_format, pages_count, use_deepseek_script) + if controller.active_screen == .Export { + last_export_at^ = rl.GetTime() + return save_project_session_with_message(project_path, controller.state, is_dirty, last_autosave_at, last_save_at, "Auto-all + saved") + } + return msg +} + +set_export_format_with_message :: proc(export_format: ^core.Export_Format, export_path: ^string, next: core.Export_Format, is_dirty: ^bool) -> string { + export_format^ = next + export_path^ = export_path_for_format(export_path^, export_format^) + is_dirty^ = true + return fmt.aprintf("Export format: %s (%s)", export_format_name(export_format^), export_path^) +} + +autosave_tick_with_message :: proc(project_path: ^string, state: core.Comic_State, autosave_enabled: bool, is_dirty: ^bool, last_autosave_at: ^f64, last_save_at: ^f64, autosave_interval_s: f64) -> string { + if !autosave_enabled || !is_dirty^ { + return "" + } + now := rl.GetTime() + if now-last_autosave_at^ < autosave_interval_s { + return "" + } + normalize_project_path_field(project_path) + err := adapters.save_project(project_path^, state) + last_autosave_at^ = now + if shared.is_ok(err) { + is_dirty^ = false + last_save_at^ = now + return fmt.aprintf("Autosaved: %s", project_path^) + } + return fmt.aprintf("Autosave failed: %s", err.message) +} diff --git a/odin/src/gui/controls.odin b/odin/src/gui/controls.odin new file mode 100644 index 0000000..96d6f0f --- /dev/null +++ b/odin/src/gui/controls.odin @@ -0,0 +1,177 @@ +package gui + +import "core:fmt" +import rl "vendor:raylib" + +button_clicked :: proc(rec: rl.Rectangle) -> bool { + if !rl.IsMouseButtonPressed(.LEFT) { + return false + } + return rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) +} + +draw_button :: proc(rec: rl.Rectangle, label: string) { + hover := rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) + bg := BTN_BG + border := BTN_BORDER + text := BTN_TEXT + if hover { + bg = BTN_BG_HOVER + border = BTN_BORDER_HOVER + } + rl.DrawRectangleRounded(rec, RADIUS_BUTTON, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_BUTTON, 8, 1.2, border) + draw_text_fitted(label, i32(rec.x)+10, i32(rec.y)+8, 18, int(rec.width)-20, 8, text) +} + +draw_button_primary :: proc(rec: rl.Rectangle, label: string) { + hover := rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) + bg := ACCENT + border := ACCENT_MUTED + if hover { + bg = ACCENT_HOVER + border = ACCENT + } + rl.DrawRectangleRounded(rec, RADIUS_BUTTON, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_BUTTON, 8, 1.2, border) + draw_text_fitted(label, i32(rec.x)+10, i32(rec.y)+8, 18, int(rec.width)-20, 8, TEXT_BRIGHT) +} + +draw_button_danger :: proc(rec: rl.Rectangle, label: string) { + hover := rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) + bg := DANGER_BG + border := DANGER_BORDER + if hover { + bg = DANGER_BG_HOVER + border = DANGER_BORDER + } + rl.DrawRectangleRounded(rec, RADIUS_BUTTON, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_BUTTON, 8, 1.2, border) + draw_text_fitted(label, i32(rec.x)+10, i32(rec.y)+8, 18, int(rec.width)-20, 8, TEXT_BRIGHT) +} + +draw_button_warning :: proc(rec: rl.Rectangle, label: string) { + hover := rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) + bg := WARN_BTN_BG + border := WARN_BTN_BORDER + text := WARN_BTN_TEXT + if hover { + bg = WARN_BTN_BG_HOVER + border = WARN_BTN_BORDER + } + rl.DrawRectangleRounded(rec, RADIUS_BUTTON, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_BUTTON, 8, 1.2, border) + draw_text_fitted(label, i32(rec.x)+10, i32(rec.y)+8, 18, int(rec.width)-20, 8, text) +} + +draw_button_soft_accent :: proc(rec: rl.Rectangle, label: string) { + hover := rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) + bg := BTN_SOFT_BG + border := BTN_SOFT_BORDER + text := BTN_SOFT_TEXT + if hover { + bg = BTN_SOFT_BG_HOVER + border = BTN_SOFT_BORDER + } + rl.DrawRectangleRounded(rec, RADIUS_BUTTON, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_BUTTON, 8, 1.2, border) + draw_text_fitted(label, i32(rec.x)+10, i32(rec.y)+8, 18, int(rec.width)-20, 8, text) +} + +draw_button_state :: proc(rec: rl.Rectangle, label: string, enabled: bool) { + if !enabled { + rl.DrawRectangleRounded(rec, RADIUS_BUTTON, 8, BTN_DISABLED_BG) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_BUTTON, 8, 1.2, BTN_DISABLED_BORDER) + draw_text_fitted(label, i32(rec.x)+10, i32(rec.y)+8, 18, int(rec.width)-20, 8, BTN_DISABLED_TEXT) + return + } + draw_button(rec, label) +} + +draw_small_button_state :: proc(rec: rl.Rectangle, label: string, enabled: bool) { + if !enabled { + rl.DrawRectangleRounded(rec, 0.20, 6, BTN_DISABLED_BG) + rl.DrawRectangleRoundedLinesEx(rec, 0.20, 6, 1.0, BTN_DISABLED_BORDER) + draw_text_fitted(label, i32(rec.x)+8, i32(rec.y)+4, 14, int(rec.width)-12, 7, BTN_DISABLED_TEXT) + return + } + hover := rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) + bg := SBTN_BG + border := SBTN_BORDER + if hover { + bg = SBTN_BG_HOVER + border = SBTN_BORDER_HOVER + } + rl.DrawRectangleRounded(rec, 0.20, 6, bg) + rl.DrawRectangleRoundedLinesEx(rec, 0.20, 6, 1.0, border) + draw_text_fitted(label, i32(rec.x)+8, i32(rec.y)+4, 14, int(rec.width)-12, 7, SBTN_TEXT) +} + +draw_small_button :: proc(rec: rl.Rectangle, label: string) { + draw_small_button_state(rec, label, true) +} + +button_readiness_hint :: proc(mouse: rl.Vector2, panels_btn, layout_btn, export_btn: rl.Rectangle, can_generate_panels, can_layout, can_export: bool) -> string { + if rl.CheckCollisionPointRec(mouse, panels_btn) && !can_generate_panels { + return "Panels requires a generated script" + } + if rl.CheckCollisionPointRec(mouse, layout_btn) && !can_layout { + return "Layout requires generated panels" + } + if rl.CheckCollisionPointRec(mouse, export_btn) && !can_export { + return "Export requires panels + layout" + } + return "" +} + +draw_button_recommended :: proc(rec: rl.Rectangle, label: string) { + halo := rl.Rectangle{x = rec.x-2, y = rec.y-2, width = rec.width+4, height = rec.height+4} + rl.DrawRectangleRounded(halo, RADIUS_BUTTON, 8, RECOMMEND_HALO_FILL) + rl.DrawRectangleRoundedLinesEx(halo, RADIUS_BUTTON, 8, 1.4, RECOMMEND_HALO_BORDER) + draw_button(rec, label) +} + +draw_nav_item :: proc(rec: rl.Rectangle, label: string, active: bool) { + bg := NAV_BG + border := NAV_BORDER + text := NAV_TEXT + if active { + bg = NAV_ACTIVE_BG + border = NAV_ACTIVE_BG + text = NAV_ACTIVE_TEXT + } else if rl.CheckCollisionPointRec(rl.GetMousePosition(), rec) { + bg = NAV_BG_HOVER + border = NAV_BORDER_HOVER + } + rl.DrawRectangleRounded(rec, RADIUS_NAV, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_NAV, 8, 1.0, border) + if active { + rl.DrawRectangleRounded(rl.Rectangle{x = rec.x+2, y = rec.y+4, width = 4, height = rec.height-8}, 0.5, 8, NAV_ACTIVE_BAR) + } + label_x := i32(rec.x) + 8 + label_w := int(rec.width) - 16 + if active { + label_x = i32(rec.x) + 14 + label_w = int(rec.width) - 22 + } + draw_text_fitted(label, label_x, i32(rec.y)+6, 18, label_w, 8, text) +} + +draw_input_field :: proc(rec: rl.Rectangle, value: string, selected: bool) { + bg := INPUT_BG + border := INPUT_BORDER + if selected { + halo := rl.Rectangle{x = rec.x - 2, y = rec.y - 2, width = rec.width + 4, height = rec.height + 4} + rl.DrawRectangleRounded(halo, RADIUS_INPUT, 8, INPUT_FOCUS_RING) + rl.DrawRectangleRoundedLinesEx(halo, RADIUS_INPUT, 8, 1.0, INPUT_FOCUS_BORDER) + bg = INPUT_FOCUS_BG + border = INPUT_FOCUS_BORDER + } + rl.DrawRectangleRounded(rec, RADIUS_INPUT, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_INPUT, 8, 1.2, border) + if !selected { + draw_text_fitted(value, i32(rec.x)+8, i32(rec.y)+6, 18, int(rec.width)-16, 8, INPUT_TEXT) + return + } + rl.DrawText(fmt.ctprintf("%s", value), i32(rec.x)+8, i32(rec.y)+6, 18, INPUT_TEXT_FOCUS) +} diff --git a/odin/src/gui/diagnostics.odin b/odin/src/gui/diagnostics.odin new file mode 100644 index 0000000..f35feba --- /dev/null +++ b/odin/src/gui/diagnostics.odin @@ -0,0 +1,159 @@ +package gui + +import "core:fmt" +import "core:os" +import "core:path/filepath" +import rl "vendor:raylib" +import "../ui" + +build_diagnostics_snapshot :: proc(controller: ui.App_Controller, is_dirty, autosave_enabled, project_ok, export_ok: bool, autosave_secs: int, project_path, export_path: string, log_show_lines: i32, log_oldest_first: bool) -> string { + log_order := "newest" + if log_oldest_first { + log_order = "oldest" + } + return fmt.aprintf("screen=%s workflow=%v next=%s dirty=%s autosave=%s(%ds) content=pages:%d,panels:%d,layouts:%d,chars:%d paths=P:%s,E:%s project=%s export=%s log=%d,%s uptime=%.1fs", ui.screen_name(controller.active_screen), controller.state.workflow.current_step, gui_next_hint(controller), yn(is_dirty), yn(autosave_enabled), autosave_secs, len(controller.state.script.pages), len(controller.state.panel_images), len(controller.state.page_layouts), len(controller.state.characters), yn(project_ok), yn(export_ok), project_path, export_path, log_show_lines, log_order, rl.GetTime()) +} + +build_action_log_snapshot :: proc(log: Action_Log) -> string { + if log.count == 0 { + return fmt.aprintf("(action log empty)") + } + now := rl.GetTime() + max_lines := len(log.entries) + if log.count < max_lines { + max_lines = log.count + } + out := "" + for line in 0.. string { + diag := build_diagnostics_snapshot(controller, is_dirty, autosave_enabled, project_ok, export_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + log_text := build_action_log_snapshot(log) + report := fmt.aprintf("# comic-odin gui session report\n\n[meta]\ngenerated_uptime=%.1fs\n\n[diagnostics]\n%s\n\n[action_log]\n%s\n", rl.GetTime(), diag, log_text) + delete(diag) + delete(log_text) + return report +} + +Diagnostics_Action_Context :: struct { + controller: ^ui.App_Controller, + action_log: ^Action_Log, + is_dirty: bool, + autosave_enabled: bool, + project_ok: bool, + export_ok: bool, + autosave_secs: int, + project_path: string, + export_path: string, + log_show_lines: i32, + log_oldest_first: bool, +} + +make_diagnostics_action_context :: proc(controller: ^ui.App_Controller, action_log: ^Action_Log, is_dirty, autosave_enabled, project_ok, export_ok: bool, autosave_secs: int, project_path, export_path: string, log_show_lines: i32, log_oldest_first: bool) -> Diagnostics_Action_Context { + return Diagnostics_Action_Context{ + controller = controller, + action_log = action_log, + is_dirty = is_dirty, + autosave_enabled = autosave_enabled, + project_ok = project_ok, + export_ok = export_ok, + autosave_secs = autosave_secs, + project_path = project_path, + export_path = export_path, + log_show_lines = log_show_lines, + log_oldest_first = log_oldest_first, + } +} + +diagnostics_path_for_project :: proc(project_path: string) -> string { + dir, _ := filepath.split(project_path) + if len(dir) == 0 { + dir = "./" + } + parts := []string{dir, "gui_diagnostics.txt"} + joined, err := filepath.join(parts) + if err != nil { + return "./gui_diagnostics.txt" + } + return joined +} + +session_report_path_for_project :: proc(project_path: string) -> string { + dir, _ := filepath.split(project_path) + if len(dir) == 0 { + dir = "./" + } + parts := []string{dir, "gui_session_report.txt"} + joined, err := filepath.join(parts) + if err != nil { + return "./gui_session_report.txt" + } + return joined +} + +write_diagnostics_file :: proc(project_path, diag: string) -> string { + diag_path := diagnostics_path_for_project(project_path) + defer delete(diag_path) + if err := os.write_entire_file(diag_path, diag); err == nil { + return fmt.aprintf("Wrote diagnostics file: %s", diag_path) + } + return fmt.aprintf("Failed writing diagnostics file") +} + +write_session_report_file :: proc(project_path, report: string) -> string { + report_path := session_report_path_for_project(project_path) + defer delete(report_path) + if err := os.write_entire_file(report_path, report); err == nil { + return fmt.aprintf("Wrote session report: %s", report_path) + } + return fmt.aprintf("Failed writing session report") +} + +write_session_report_with_message :: proc(ctx: Diagnostics_Action_Context) -> string { + report := build_session_report(ctx.controller^, ctx.action_log^, ctx.is_dirty, ctx.autosave_enabled, ctx.project_ok, ctx.export_ok, ctx.autosave_secs, ctx.project_path, ctx.export_path, ctx.log_show_lines, ctx.log_oldest_first) + msg := write_session_report_file(ctx.project_path, report) + delete(report) + return msg +} + +write_diagnostics_with_message :: proc(ctx: Diagnostics_Action_Context) -> string { + diag := build_diagnostics_snapshot(ctx.controller^, ctx.is_dirty, ctx.autosave_enabled, ctx.project_ok, ctx.export_ok, ctx.autosave_secs, ctx.project_path, ctx.export_path, ctx.log_show_lines, ctx.log_oldest_first) + msg := write_diagnostics_file(ctx.project_path, diag) + delete(diag) + return msg +} + +copy_diagnostics_with_message :: proc(ctx: Diagnostics_Action_Context) -> string { + diag := build_diagnostics_snapshot(ctx.controller^, ctx.is_dirty, ctx.autosave_enabled, ctx.project_ok, ctx.export_ok, ctx.autosave_secs, ctx.project_path, ctx.export_path, ctx.log_show_lines, ctx.log_oldest_first) + msg := copy_text_with_status(diag, "Copied diagnostics snapshot") + delete(diag) + return msg +} + +copy_action_log_snapshot_with_message :: proc(ctx: Diagnostics_Action_Context) -> string { + log_text := build_action_log_snapshot(ctx.action_log^) + msg := copy_text_with_status(log_text, "Copied action log snapshot") + delete(log_text) + return msg +} + +copy_text_with_status :: proc(text, status: string) -> string { + rl.SetClipboardText(fmt.ctprintf("%s", text)) + return status +} diff --git a/odin/src/gui/local_helpers.odin b/odin/src/gui/local_helpers.odin new file mode 100644 index 0000000..af66c86 --- /dev/null +++ b/odin/src/gui/local_helpers.odin @@ -0,0 +1,124 @@ +package gui + +import "core:fmt" +import "core:os" +import "../core" +import "../shared" + +collect_script_panels :: proc(script: core.Comic_Script) -> []core.Panel { + out: [dynamic]core.Panel + for p in script.pages { + for pan in p.panels { + append(&out, pan) + } + } + return out[:] +} + +count_script_panels :: proc(script: core.Comic_Script) -> int { + count := 0 + for p in script.pages { + count += len(p.panels) + } + return count +} + +local_panel_id_by_index :: proc(i: int) -> string { + switch i { + case 0: return "panel_local_001" + case 1: return "panel_local_002" + case 2: return "panel_local_003" + case 3: return "panel_local_004" + case 4: return "panel_local_005" + case 5: return "panel_local_006" + } + return "panel_local_overflow" +} + +build_local_script :: proc(story_idea: string, pages: int) -> core.Comic_Script { + out_pages: [dynamic]core.Page + for i in 0.. (map[string]core.Panel_Image, shared.App_Error) { + tmp_dir, terr := os.make_directory_temp("", "comic-gui-local-panels-*", context.temp_allocator) + if terr != nil { + return nil, shared.new_error(.Generation, "failed to create local panel temp dir", true) + } + + images := make(map[string]core.Panel_Image) + for p, idx in panels { + name := fmt.aprintf("panel_%03d_%s.png", idx+1, p.panel_id) + out_path := fmt.aprintf("%s/%s", tmp_dir, name) + delete(name) + if werr := os.write_entire_file(out_path, "LOCAL PANEL IMAGE"); werr != nil { + delete(out_path) + return nil, shared.new_error(.Generation, "failed writing local panel image", true) + } + url := fmt.aprintf("file://%s", out_path) + prompt := fmt.aprintf("local") + images[p.panel_id] = core.Panel_Image{url = url, width = 1024, height = 1024, seed = i64(idx + 1), prompt = prompt} + delete(out_path) + } + return images, shared.ok() +} + +append_char :: proc(dst: ^string, ch: rune) { + dst^ = fmt.aprintf("%s%c", dst^, ch) +} + +pop_char :: proc(dst: ^string) { + if len(dst^) == 0 { + return + } + dst^ = dst^[:len(dst^)-1] +} + +recommended_label_from_hint :: proc(hint: string) -> string { + switch hint { + case "generate script": + return "Generate Script" + case "generate script local": + return "Generate Script Local" + case "generate panels local": + return "Generate Panels Local" + case "layout auto": + return "Layout" + case "export pdf": + return "Export" + } + return "Next" +} + +pending_action_name :: proc(a: Pending_Confirm_Action) -> string { + switch a { + case .Reset_Project: return "reset project" + case .Open_Project: return "open project" + case .None: return "continue" + } + return "continue" +} diff --git a/odin/src/gui/overlays.odin b/odin/src/gui/overlays.odin new file mode 100644 index 0000000..b3d5442 --- /dev/null +++ b/odin/src/gui/overlays.odin @@ -0,0 +1,151 @@ +package gui + +import "core:fmt" +import "core:strings" +import rl "vendor:raylib" + +draw_action_log :: proc(log: Action_Log, x, y, max_visible: i32, oldest_first: bool) { + now := rl.GetTime() + max_lines := len(log.entries) + if log.count < max_lines { + max_lines = log.count + } + if max_visible > 0 && int(max_visible) < max_lines { + max_lines = int(max_visible) + } + for line in 0.. bool { + return strings.contains(msg, "failed") || strings.contains(msg, "blocked") || strings.contains(msg, "No script") +} + +is_warning_message :: proc(msg: string) -> bool { + return strings.contains(msg, "Unsaved") || strings.contains(msg, "Confirm") || strings.contains(msg, "requires") || strings.contains(msg, "before") || strings.contains(msg, "Cancelled") +} + +status_text_color :: proc(msg: string) -> rl.Color { + if is_error_message(msg) { + return ERROR + } + if is_warning_message(msg) { + return WARNING + } + return SUCCESS +} + +toast_bg_color :: proc(msg: string) -> rl.Color { + if is_error_message(msg) { + return TOAST_ERROR + } + if is_warning_message(msg) { + return TOAST_WARNING + } + return TOAST_SUCCESS +} + +draw_toast :: proc(log: Action_Log, x, y, w: i32) { + if log.count == 0 { + return + } + age := rl.GetTime() - log.last_push_at + if age > 2.8 { + return + } + idx := (log.count - 1) % len(log.entries) + if idx < 0 { + idx += len(log.entries) + } + msg := log.entries[idx] + bg := toast_bg_color(msg) + rec := rl.Rectangle{x = f32(x), y = f32(y), width = f32(w), height = 34} + shadow := rl.Rectangle{x = f32(x), y = f32(y + 2), width = f32(w), height = 34} + rl.DrawRectangleRounded(shadow, RADIUS_TOAST, 8, TOAST_SHADOW) + rl.DrawRectangleRounded(rec, RADIUS_TOAST, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_TOAST, 8, 1.0, TOAST_BORDER) + draw_text_fitted(msg, x+10, y+8, 16, int(w-20), 8, TEXT_BRIGHT) +} + +draw_help_line :: proc(x, y: i32, text: string) { + draw_text_fitted(text, x, y, 16, 820, 8, HELP_LINE) +} + +draw_help_overlay :: proc() { + sw := rl.GetScreenWidth() + sh := rl.GetScreenHeight() + rec := rl.Rectangle{x = f32((sw-860)/2), y = f32((sh-642)/2), width = 860, height = 642} + rl.DrawRectangle(0, 0, sw, sh, BG_OVERLAY) + draw_card(rec) + x := i32(rec.x) + 30 + y := i32(rec.y) + 28 + rl.DrawText("Keyboard Shortcuts", x, y, 28, HELP_TITLE) + rl.DrawText("Navigation", x, y+44, 20, HELP_SECTION) + draw_help_line(x, y+72, "1..8 screens | TAB fields | click to focus | F11 pages | F12 project") + rl.DrawText("Core Actions", x, y+106, 20, HELP_SECTION) + draw_help_line(x, y+134, "F5 script F6 panels F7 layout F8 export F9 next F10 auto-all") + draw_help_line(x, y+160, "Ctrl+S save | Ctrl+O open | Ctrl+N new | Ctrl+E export | Ctrl+H/J summary") + rl.DrawText("Clipboard + Logs", x, y+196, 20, HELP_SECTION) + draw_help_line(x, y+224, "Ctrl+L clear log | Ctrl+Shift+L copy log | Ctrl+Shift+T/B log view | Ctrl+Shift+Z reset") + draw_help_line(x, y+248, "Ctrl+Shift+C status") + draw_help_line(x, y+272, "Ctrl+Shift+Y diag copy | Ctrl+Shift+R diag file | Ctrl+Shift+W report") + draw_help_line(x, y+296, "Ctrl+0 reset helpers | Ctrl+V paste | Ctrl+Shift+I copy | Ctrl+Backspace clear") + rl.DrawText("Paths", x, y+332, 20, HELP_SECTION) + draw_help_line(x, y+360, "Ctrl+Shift+X copy export | P preset | D exp-from-project | G proj-from-export") + draw_help_line(x, y+386, "Ctrl+Shift+J fix project | F fix export | K/M quick-fix P/E | U fix all") + rl.DrawText("Autosave", x, y+422, 20, HELP_SECTION) + draw_help_line(x, y+450, "Ctrl+Shift+A toggle | Ctrl+-/= adjust | Ctrl+7/8/9 set 15/30/60") + rl.DrawText("Safety", x, y+486, 20, HELP_SECTION) + draw_help_line(x, y+514, "Dirty guard: Shift-click New/Open | Keyboard confirm: Ctrl+Shift+N / Ctrl+Shift+O") + rl.DrawText("Close help: Esc or /", x, y+542, 18, HELP_CLOSE) +} + +draw_sidebar_shortcut_line :: proc(x, y: i32, text: string, c: rl.Color) { + draw_text_fitted(text, x, y, 14, 220, 7, c) +} + +draw_sidebar_shortcuts :: proc(screen_h: i32) { + base_y := screen_h - 280 + if base_y < 120 { + base_y = 120 + } + draw_card(rl.Rectangle{x = 14, y = f32(base_y), width = 236, height = 210}) + rl.DrawText("Quick Keys", 26, base_y+12, 18, SIDEBAR_TITLE) + draw_sidebar_shortcut_line(26, base_y+36, "F5/F6/F7/F8 generate/layout/export", SIDEBAR_TEXT) + draw_sidebar_shortcut_line(26, base_y+54, "Ctrl+S save Ctrl+O open", SIDEBAR_TEXT) + draw_sidebar_shortcut_line(26, base_y+72, "Ctrl+N new", SIDEBAR_TEXT) + draw_sidebar_shortcut_line(26, base_y+90, "F9 next F10 auto-all", SIDEBAR_TEXT) + draw_sidebar_shortcut_line(26, base_y+108, "/ full shortcut help", SIDEBAR_TEXT) + draw_sidebar_shortcut_line(26, base_y+140, "Press / for all shortcuts", SIDEBAR_FOOTER) +} + +draw_confirm_overlay :: proc(action: Pending_Confirm_Action) { + sw := rl.GetScreenWidth() + sh := rl.GetScreenHeight() + rec := rl.Rectangle{x = f32((sw-520)/2), y = f32((sh-230)/2), width = 520, height = 230} + rl.DrawRectangle(0, 0, sw, sh, BG_OVERLAY) + draw_card(rec) + rl.DrawRectangleRounded(rl.Rectangle{x = rec.x, y = rec.y, width = rec.width, height = 8}, 0.08, 8, CONFIRM_ACCENT) + x := i32(rec.x) + 30 + y := i32(rec.y) + 34 + rl.DrawText("Confirm destructive action", x, y, 26, CONFIRM_TITLE) + draw_text_fitted(fmt.tprintf("You have unsaved changes. Do you want to %s?", pending_action_name(action)), x, y+42, 18, 470, 8, CONFIRM_BODY) + rl.DrawText("Enter/Y confirm • Esc/N cancel", x, y+72, 16, CONFIRM_HINT) +} diff --git a/odin/src/gui/path_helpers.odin b/odin/src/gui/path_helpers.odin new file mode 100644 index 0000000..9f6747b --- /dev/null +++ b/odin/src/gui/path_helpers.odin @@ -0,0 +1,165 @@ +package gui + +import "core:fmt" +import "core:path/filepath" +import "core:strings" +import "../core" + +format_suffix :: proc(f: core.Export_Format) -> string { + switch f { + case .PDF: return ".pdf" + case .PNG: return ".zip" + case .CBZ: return ".cbz" + } + return ".pdf" +} + +trim_known_export_suffix :: proc(path: string) -> string { + if strings.has_suffix(path, ".pdf") { return path[:len(path)-4] } + if strings.has_suffix(path, ".zip") { return path[:len(path)-4] } + if strings.has_suffix(path, ".cbz") { return path[:len(path)-4] } + if strings.has_suffix(path, ".png") { return path[:len(path)-4] } + return path +} + +export_path_for_format :: proc(path: string, f: core.Export_Format) -> string { + base := trim_known_export_suffix(path) + return fmt.aprintf("%s%s", base, format_suffix(f)) +} + +default_export_filename_for_format :: proc(f: core.Export_Format) -> string { + switch f { + case .PDF: return "comic.pdf" + case .PNG: return "comic_png.zip" + case .CBZ: return "comic.cbz" + } + return "comic.pdf" +} + +default_export_path_for_format :: proc(f: core.Export_Format) -> string { + return fmt.aprintf("./%s", default_export_filename_for_format(f)) +} + +export_path_in_project_dir :: proc(project_path: string, f: core.Export_Format) -> string { + dir, _ := filepath.split(project_path) + if len(dir) == 0 { + dir = "./" + } + parts := []string{dir, default_export_filename_for_format(f)} + joined, err := filepath.join(parts) + if err != nil { + return default_export_path_for_format(f) + } + return joined +} + +reset_helper_fields :: proc(export_path, local_script_pages, autosave_interval_text: ^string, f: core.Export_Format) { + export_path^ = default_export_path_for_format(f) + local_script_pages^ = "2" + autosave_interval_text^ = "20" +} + +sync_export_path_to_project_dir :: proc(project_path: string, export_path: ^string, f: core.Export_Format) { + export_path^ = export_path_in_project_dir(project_path, f) +} + +project_path_in_export_dir :: proc(export_path: string) -> string { + dir, _ := filepath.split(export_path) + if len(dir) == 0 { + dir = "./" + } + parts := []string{dir, "gui_project.comic.json"} + joined, err := filepath.join(parts) + if err != nil { + return "./gui_project.comic.json" + } + return joined +} + +normalize_project_path :: proc(path: string) -> string { + trimmed := strings.trim_space(path) + if len(trimmed) == 0 { + return "./gui_project.comic.json" + } + if strings.has_suffix(trimmed, ".comic.json") { + return trimmed + } + if strings.has_suffix(trimmed, ".json") { + return fmt.aprintf("%s.comic.json", trimmed[:len(trimmed)-5]) + } + return fmt.aprintf("%s.comic.json", trimmed) +} + +normalize_project_path_field :: proc(path: ^string) { + path^ = normalize_project_path(path^) +} + +normalize_export_path_field :: proc(path: ^string, f: core.Export_Format) { + trimmed := strings.trim_space(path^) + if len(trimmed) == 0 { + path^ = default_export_path_for_format(f) + return + } + path^ = export_path_for_format(trimmed, f) +} + +fix_all_paths :: proc(project_path, export_path: ^string, f: core.Export_Format) { + normalize_project_path_field(project_path) + normalize_export_path_field(export_path, f) +} + +set_export_preset_with_message :: proc(export_path: ^string, f: core.Export_Format) -> string { + export_path^ = default_export_path_for_format(f) + return fmt.aprintf("Preset export path: %s", export_path^) +} + +set_export_path_from_project_with_message :: proc(export_path: ^string, project_path: string, f: core.Export_Format) -> string { + export_path^ = export_path_in_project_dir(project_path, f) + return fmt.aprintf("Export path from project dir: %s", export_path^) +} + +set_project_path_from_export_with_message :: proc(project_path: ^string, export_path: string) -> string { + project_path^ = project_path_in_export_dir(export_path) + return fmt.aprintf("Project path from export dir: %s", project_path^) +} + +normalize_project_path_with_message :: proc(project_path: ^string) -> string { + normalize_project_path_field(project_path) + return fmt.aprintf("Normalized project path: %s", project_path^) +} + +normalize_export_path_with_message :: proc(export_path: ^string, f: core.Export_Format) -> string { + normalize_export_path_field(export_path, f) + return fmt.aprintf("Normalized export path: %s", export_path^) +} + +fix_all_paths_with_message :: proc(project_path, export_path: ^string, f: core.Export_Format) -> string { + fix_all_paths(project_path, export_path, f) + return fmt.aprintf("Normalized paths: P=%s E=%s", project_path^, export_path^) +} + +project_path_is_normalized :: proc(path: string) -> bool { + trimmed := strings.trim_space(path) + return len(trimmed) > 0 && strings.has_suffix(trimmed, ".comic.json") +} + +export_path_matches_format :: proc(path: string, f: core.Export_Format) -> bool { + trimmed := strings.trim_space(path) + if len(trimmed) == 0 { + return false + } + return strings.has_suffix(trimmed, format_suffix(f)) +} + +path_health_hint :: proc(project_ok, export_ok: bool) -> string { + if project_ok && export_ok { + return "" + } + if !project_ok && !export_ok { + return "Fix paths: P/E/PE buttons or Ctrl+Shift+U" + } + if !project_ok { + return "Fix project path: P button or Ctrl+Shift+K" + } + return "Fix export path: E button or Ctrl+Shift+M" +} diff --git a/odin/src/gui/runtime.odin b/odin/src/gui/runtime.odin new file mode 100644 index 0000000..b0b4fd8 --- /dev/null +++ b/odin/src/gui/runtime.odin @@ -0,0 +1,973 @@ +package gui + +import "core:fmt" +import "core:strings" +import rl "vendor:raylib" +import "../core" +import "../shared" +import "../ui" + +run_gui_app :: proc(state: ^core.Comic_State) -> shared.App_Error { + controller := ui.new_controller(state^) + defer ui.dispose_job_manager(&controller.jobs) + + rl.SetConfigFlags({.WINDOW_RESIZABLE, .WINDOW_UNDECORATED}) + rl.InitWindow(1240, 820, "comic-odin gui") + defer rl.CloseWindow() + monitor := rl.GetCurrentMonitor() + monitor_pos := rl.GetMonitorPosition(monitor) + rl.SetWindowPosition(i32(monitor_pos.x), i32(monitor_pos.y)) + rl.SetWindowSize(rl.GetMonitorWidth(monitor), rl.GetMonitorHeight(monitor)) + rl.SetWindowState({.BORDERLESS_WINDOWED_MODE}) + rl.SetTargetFPS(60) + + selected_field := 0 // 0 idea, 1 genre, 2 audience, 3 export path, 4 local pages, 5 project path, 6 autosave interval + export_path := "./gui_export.pdf" + project_path := "./gui_project.comic.json" + local_script_pages := "2" + autosave_interval_text := "20" + export_format: core.Export_Format = .PDF + use_deepseek_script := false + status_msg := fmt.aprintf("GUI ready") + is_dirty := false + autosave_enabled := true + autosave_interval_s: f64 = 20 + last_autosave_at := rl.GetTime() + last_save_at: f64 = -1 + last_export_at: f64 = -1 + action_log: Action_Log + log_show_lines: i32 = 6 + log_oldest_first := false + summary_opts := Summary_View_Options{} + show_help_overlay := false + show_confirm_overlay := false + pending_confirm_action: Pending_Confirm_Action = .None + push_status(&status_msg, &action_log, status_msg) + defer action_log_dispose(&action_log) + defer delete(status_msg) + + for !rl.WindowShouldClose() { + screen_w_loop := rl.GetScreenWidth() + screen_h_loop := rl.GetScreenHeight() + compact_mode := screen_h_loop < 860 + cfg_loop := shared.load_config() + has_deepseek_key := len(cfg_loop.deepseek_api_key) > 0 + main_w_loop := screen_w_loop - 282 - 20 + if main_w_loop < 960 { + main_w_loop = 960 + } + status_w_loop := (main_w_loop - 2) / 2 + log_x_loop := 282 + status_w_loop + 2 + lower_y_loop := screen_h_loop - 252 + if lower_y_loop < 450 { + lower_y_loop = 450 + } + + idea_rec := rl.Rectangle{x = 420, y = 90, width = f32(main_w_loop-460), height = 36} + genre_rec := rl.Rectangle{x = 420, y = 146, width = f32(main_w_loop-460), height = 36} + audience_rec := rl.Rectangle{x = 420, y = 202, width = f32(main_w_loop-460), height = 36} + export_rec := rl.Rectangle{x = 420, y = 258, width = f32(main_w_loop-460), height = 36} + project_rec := rl.Rectangle{x = 420, y = 314, width = f32(main_w_loop-460), height = 36} + pages_rec := rl.Rectangle{x = f32(screen_w_loop - 120), y = 22, width = 100, height = 28} + + fmt_pdf_btn := rl.Rectangle{x = 420, y = 400, width = 80, height = 30} + fmt_png_btn := rl.Rectangle{x = 510, y = 400, width = 80, height = 30} + fmt_cbz_btn := rl.Rectangle{x = 600, y = 400, width = 80, height = 30} + script_src_local_btn := rl.Rectangle{x = 800, y = 400, width = 92, height = 30} + script_src_deepseek_btn := rl.Rectangle{x = 898, y = 400, width = 120, height = 30} + + // Main Actions Row 1 (y=470) + new_btn := rl.Rectangle{x = 290, y = 470, width = 140, height = 38} + script_btn := rl.Rectangle{x = 440, y = 470, width = 230, height = 38} + panels_btn := rl.Rectangle{x = 680, y = 470, width = 230, height = 38} + layout_btn := rl.Rectangle{x = 920, y = 470, width = 140, height = 38} + export_btn := rl.Rectangle{x = 1070, y = 470, width = 140, height = 38} + + // Secondary Actions Row 2 (y=518) + save_btn := rl.Rectangle{x = 290, y = 518, width = 160, height = 38} + open_btn := rl.Rectangle{x = 460, y = 518, width = 160, height = 38} + next_btn := rl.Rectangle{x = 630, y = 518, width = 160, height = 38} + auto_btn := rl.Rectangle{x = 800, y = 518, width = 160, height = 38} + auto_save_btn := rl.Rectangle{x = 970, y = 518, width = 240, height = 38} + + // Utility Strip Row 3 (y=566) + autosave_btn := rl.Rectangle{x = 290, y = 566, width = 160, height = 34} + autosave_rec := rl.Rectangle{x = 600, y = 568, width = 70, height = 30} + autosave_15_btn := rl.Rectangle{x = 680, y = 568, width = 44, height = 30} + autosave_30_btn := rl.Rectangle{x = 730, y = 568, width = 44, height = 30} + autosave_60_btn := rl.Rectangle{x = 780, y = 568, width = 44, height = 30} + help_btn := rl.Rectangle{x = 850, y = 566, width = 110, height = 34} + clear_field_btn := rl.Rectangle{x = 970, y = 566, width = 110, height = 34} + reset_helpers_btn := rl.Rectangle{x = 1090, y = 566, width = 120, height = 34} + + // Path Fixes (now below project inputs) + export_copy_btn := rl.Rectangle{x = 420, y = 360, width = 110, height = 24} + export_preset_btn := rl.Rectangle{x = 540, y = 360, width = 110, height = 24} + path_fix_btn := rl.Rectangle{x = 660, y = 360, width = 110, height = 24} + project_fix_btn := rl.Rectangle{x = 780, y = 360, width = 110, height = 24} + project_from_export_btn := rl.Rectangle{x = 900, y = 360, width = 110, height = 24} + export_project_btn := rl.Rectangle{x = 1020, y = 360, width = 110, height = 24} + + log_reset_btn := rl.Rectangle{x = f32(log_x_loop + 18), y = f32(lower_y_loop + 2), width = 68, height = 26} + report_file_btn := rl.Rectangle{x = f32(log_x_loop + 92), y = f32(lower_y_loop + 2), width = 68, height = 26} + log_copy_btn := rl.Rectangle{x = f32(log_x_loop + 166), y = f32(lower_y_loop + 2), width = 68, height = 26} + script_copy_page_btn := rl.Rectangle{x = f32(log_x_loop + 18), y = f32(lower_y_loop + 2), width = 96, height = 26} + script_copy_all_btn := rl.Rectangle{x = f32(log_x_loop + 120), y = f32(lower_y_loop + 2), width = 86, height = 26} + diag_file_btn := rl.Rectangle{x = f32(log_x_loop + 240), y = f32(lower_y_loop + 2), width = 68, height = 26} + status_copy_btn := rl.Rectangle{x = f32(log_x_loop + 314), y = f32(lower_y_loop + 2), width = 68, height = 26} + log_clear_btn := rl.Rectangle{x = f32(log_x_loop + 388), y = f32(lower_y_loop + 2), width = 68, height = 26} + diag_copy_btn := rl.Rectangle{x = f32(log_x_loop + 314), y = f32(lower_y_loop + 32), width = 68, height = 26} + confirm_base_x := (screen_w_loop - 520) / 2 + confirm_base_y := (screen_h_loop - 230) / 2 + confirm_yes_btn := rl.Rectangle{x = f32(confirm_base_x + 180), y = f32(confirm_base_y + 154), width = 140, height = 34} + confirm_no_btn := rl.Rectangle{x = f32(confirm_base_x + 330), y = f32(confirm_base_y + 154), width = 140, height = 34} + path_fix_project_status_btn := rl.Rectangle{x = 638, y = 556, width = 32, height = 20} + path_fix_export_status_btn := rl.Rectangle{x = 674, y = 556, width = 32, height = 20} + path_fix_all_status_btn := rl.Rectangle{x = 710, y = 556, width = 34, height = 20} + + summary_show_btn := rl.Rectangle{x = f32(282 + status_w_loop - 178), y = f32(lower_y_loop + 18), width = 78, height = 24} + summary_sort_btn := rl.Rectangle{x = f32(282 + status_w_loop - 94), y = f32(lower_y_loop + 18), width = 78, height = 24} + summary_prev_btn := rl.Rectangle{x = f32(300), y = f32(lower_y_loop + 18), width = 52, height = 24} + summary_next_btn := rl.Rectangle{x = f32(358), y = f32(lower_y_loop + 18), width = 52, height = 24} + + if rl.IsKeyPressed(.SLASH) { + toggle_help_overlay(&show_help_overlay) + } + if rl.IsKeyPressed(.ESCAPE) { + close_help_overlay_if_open(&show_help_overlay) + } + interaction_locked := show_help_overlay || show_confirm_overlay + + nav_story := rl.Rectangle{x = 16, y = 90, width = 228, height = 32} + nav_script := rl.Rectangle{x = 16, y = 126, width = 228, height = 32} + nav_chars := rl.Rectangle{x = 16, y = 162, width = 228, height = 32} + nav_panels := rl.Rectangle{x = 16, y = 198, width = 228, height = 32} + nav_layout := rl.Rectangle{x = 16, y = 234, width = 228, height = 32} + nav_bubbles := rl.Rectangle{x = 16, y = 270, width = 228, height = 32} + nav_export := rl.Rectangle{x = 16, y = 306, width = 228, height = 32} + nav_community := rl.Rectangle{x = 16, y = 342, width = 228, height = 32} + + if !interaction_locked { + if rl.IsKeyPressed(.ONE) { _ = ui.navigate_to_screen(&controller, .Story) } + if rl.IsKeyPressed(.TWO) { _ = ui.navigate_to_screen(&controller, .Script) } + if rl.IsKeyPressed(.THREE) { _ = ui.navigate_to_screen(&controller, .Characters) } + if rl.IsKeyPressed(.FOUR) { _ = ui.navigate_to_screen(&controller, .Panels) } + if rl.IsKeyPressed(.FIVE) { _ = ui.navigate_to_screen(&controller, .Layout) } + if rl.IsKeyPressed(.SIX) { _ = ui.navigate_to_screen(&controller, .Bubbles) } + if rl.IsKeyPressed(.SEVEN) { _ = ui.navigate_to_screen(&controller, .Export) } + if rl.IsKeyPressed(.EIGHT) { _ = ui.navigate_to_screen(&controller, .Community) } + + if button_clicked(nav_story) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Story)) + } + if button_clicked(nav_script) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Script)) + } + if button_clicked(nav_chars) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Characters)) + } + if button_clicked(nav_panels) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Panels)) + } + if button_clicked(nav_layout) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Layout)) + } + if button_clicked(nav_bubbles) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Bubbles)) + } + if button_clicked(nav_export) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Export)) + } + if button_clicked(nav_community) { + push_status(&status_msg, &action_log, navigate_screen_with_status(&controller, .Community)) + } + + if rl.IsKeyPressed(.TAB) { selected_field = (selected_field + 1) % 7 } + if rl.IsKeyPressed(.F1) { selected_field = 0 } + if rl.IsKeyPressed(.F2) { selected_field = 1 } + if rl.IsKeyPressed(.F3) { selected_field = 2 } + if rl.IsKeyPressed(.F4) { selected_field = 3 } + if rl.IsKeyPressed(.F11) { selected_field = 4 } + if rl.IsKeyPressed(.F12) { selected_field = 5 } + if button_clicked(idea_rec) { selected_field = 0 } + if button_clicked(genre_rec) { selected_field = 1 } + if button_clicked(audience_rec) { selected_field = 2 } + if button_clicked(export_rec) { selected_field = 3 } + if button_clicked(pages_rec) { selected_field = 4 } + if button_clicked(project_rec) { selected_field = 5 } + if button_clicked(autosave_rec) { selected_field = 6 } + if button_clicked(autosave_15_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, 15)) + } + if button_clicked(autosave_30_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, 30)) + } + if button_clicked(autosave_60_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, 60)) + } + } + + pages_count := parse_pages_or_default(local_script_pages, 2) + autosave_secs := parse_autosave_interval(autosave_interval_text, 20) + autosave_interval_s = f64(autosave_secs) + if selected_field != 6 && len(strings.trim_space(autosave_interval_text)) == 0 { + autosave_interval_text = fmt.aprintf("%d", autosave_secs) + } + shift_down := rl.IsKeyDown(.LEFT_SHIFT) || rl.IsKeyDown(.RIGHT_SHIFT) + can_generate_panels := len(controller.state.script.pages) > 0 + can_layout := len(controller.state.panel_images) > 0 + can_export := len(controller.state.page_layouts) > 0 && len(controller.state.panel_images) > 0 + project_path_ok := project_path_is_normalized(project_path) + export_path_ok := export_path_matches_format(export_path, export_format) + + if show_confirm_overlay { + confirm_yes := button_clicked(confirm_yes_btn) || rl.IsKeyPressed(.ENTER) || rl.IsKeyPressed(.Y) + confirm_no := button_clicked(confirm_no_btn) || rl.IsKeyPressed(.ESCAPE) || rl.IsKeyPressed(.N) + if confirm_no { + show_confirm_overlay = false + pending_confirm_action = .None + push_status(&status_msg, &action_log, "Cancelled destructive action") + } else if confirm_yes { + action := pending_confirm_action + show_confirm_overlay = false + pending_confirm_action = .None + push_status(&status_msg, &action_log, resolve_confirm_action_with_message(action, &controller, &project_path, &export_path, export_format, &is_dirty, &last_autosave_at)) + } + } + + if !interaction_locked { + if button_clicked(export_copy_btn) { + push_status(&status_msg, &action_log, copy_text_with_status(export_path, "Copied export path to clipboard")) + } + if button_clicked(export_preset_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_export_preset_with_message(&export_path, export_format)) + } + if button_clicked(path_fix_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_export_path_with_message(&export_path, export_format)) + } + if button_clicked(project_fix_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_project_path_with_message(&project_path)) + } + if button_clicked(project_from_export_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_project_path_from_export_with_message(&project_path, export_path)) + } + if button_clicked(export_project_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_export_path_from_project_with_message(&export_path, project_path, export_format)) + } + if button_clicked(path_fix_project_status_btn) && !project_path_ok { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_project_path_with_message(&project_path)) + } + if button_clicked(path_fix_export_status_btn) && !export_path_ok { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_export_path_with_message(&export_path, export_format)) + } + if button_clicked(path_fix_all_status_btn) && (!project_path_ok || !export_path_ok) { + push_dirty_status(&is_dirty, &status_msg, &action_log, fix_all_paths_with_message(&project_path, &export_path, export_format)) + } + if button_clicked(fmt_pdf_btn) { + push_status(&status_msg, &action_log, set_export_format_with_message(&export_format, &export_path, .PDF, &is_dirty)) + } + if button_clicked(fmt_png_btn) { + push_status(&status_msg, &action_log, set_export_format_with_message(&export_format, &export_path, .PNG, &is_dirty)) + } + if button_clicked(fmt_cbz_btn) { + push_status(&status_msg, &action_log, set_export_format_with_message(&export_format, &export_path, .CBZ, &is_dirty)) + } + if button_clicked(script_src_local_btn) { + use_deepseek_script = false + push_status(&status_msg, &action_log, "Script source: Local") + } + if button_clicked(script_src_deepseek_btn) { + if !has_deepseek_key { + push_status(&status_msg, &action_log, "DeepSeek key missing (set DEEPSEEK_API_KEY)") + } else { + use_deepseek_script = true + push_status(&status_msg, &action_log, "Script source: DeepSeek") + } + } + + if button_clicked(summary_show_btn) { + push_status_if_nonempty(&status_msg, &action_log, toggle_summary_show_if_supported(controller.active_screen, &summary_opts)) + } + if button_clicked(summary_sort_btn) { + push_status_if_nonempty(&status_msg, &action_log, toggle_summary_sort_if_supported(controller.active_screen, &summary_opts)) + } + if controller.active_screen == .Script && button_clicked(summary_prev_btn) { + page_count := len(controller.state.script.pages) + if page_count > 0 { + summary_opts.script_page_cursor -= 1 + if summary_opts.script_page_cursor < 0 { + summary_opts.script_page_cursor = page_count - 1 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing script page %d/%d", summary_opts.script_page_cursor+1, page_count)) + } + } + if controller.active_screen == .Script && button_clicked(summary_next_btn) { + page_count := len(controller.state.script.pages) + if page_count > 0 { + summary_opts.script_page_cursor += 1 + if summary_opts.script_page_cursor >= page_count { + summary_opts.script_page_cursor = 0 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing script page %d/%d", summary_opts.script_page_cursor+1, page_count)) + } + } + if controller.active_screen == .Panels && button_clicked(summary_prev_btn) { + panel_count := count_script_panels(controller.state.script) + if panel_count > 0 { + summary_opts.panel_cursor -= 1 + if summary_opts.panel_cursor < 0 { + summary_opts.panel_cursor = panel_count - 1 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing panel %d/%d", summary_opts.panel_cursor+1, panel_count)) + } + } + if controller.active_screen == .Panels && button_clicked(summary_next_btn) { + panel_count := count_script_panels(controller.state.script) + if panel_count > 0 { + summary_opts.panel_cursor += 1 + if summary_opts.panel_cursor >= panel_count { + summary_opts.panel_cursor = 0 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing panel %d/%d", summary_opts.panel_cursor+1, panel_count)) + } + } + + if button_clicked(new_btn) { + if is_dirty && !shift_down { + push_status(&status_msg, &action_log, request_confirmation(&show_confirm_overlay, &show_help_overlay, &pending_confirm_action, .Reset_Project, "Confirm reset?")) + } else { + push_status(&status_msg, &action_log, reset_project_session(&controller, &is_dirty, &last_autosave_at, false)) + } + } + if button_clicked(save_btn) { + push_status(&status_msg, &action_log, save_project_session_with_message(&project_path, controller.state, &is_dirty, &last_autosave_at, &last_save_at, "Saved project")) + } + if button_clicked(open_btn) { + if is_dirty && !shift_down { + push_status(&status_msg, &action_log, request_confirmation(&show_confirm_overlay, &show_help_overlay, &pending_confirm_action, .Open_Project, "Confirm open?")) + } else { + push_status(&status_msg, &action_log, open_project_session(&controller, &project_path, &export_path, export_format, &is_dirty, &last_autosave_at)) + } + } + if button_clicked(auto_save_btn) { + push_status(&status_msg, &action_log, run_auto_all_save_action(&controller, &project_path, &export_path, export_format, pages_count, use_deepseek_script, &is_dirty, &last_export_at, &last_autosave_at, &last_save_at)) + } + if button_clicked(autosave_btn) { + push_status(&status_msg, &action_log, toggle_autosave_with_message(&autosave_enabled)) + } + if button_clicked(help_btn) { + toggle_help_overlay(&show_help_overlay) + } + if button_clicked(clear_field_btn) { + push_status(&status_msg, &action_log, clear_selected_field_with_message(selected_field, &controller.state, &export_path, &local_script_pages, &project_path, &autosave_interval_text, &is_dirty)) + } + if button_clicked(reset_helpers_btn) { + push_dirty_status(&is_dirty, &status_msg, &action_log, reset_helper_fields_with_message(&export_path, &local_script_pages, &autosave_interval_text, export_format)) + } + if controller.active_screen != .Script { + if button_clicked(log_reset_btn) { + push_status(&status_msg, &action_log, reset_log_view_with_message(&log_show_lines, &log_oldest_first)) + } + if button_clicked(report_file_btn) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, write_session_report_with_message(diag_ctx)) + } + if button_clicked(log_copy_btn) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, copy_action_log_snapshot_with_message(diag_ctx)) + } + if button_clicked(diag_file_btn) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, write_diagnostics_with_message(diag_ctx)) + } + if button_clicked(log_clear_btn) { + set_status(&status_msg, clear_action_log_with_message(&action_log)) + } + if button_clicked(status_copy_btn) { + push_status(&status_msg, &action_log, copy_text_with_status(status_msg, "Copied status to clipboard")) + } + if button_clicked(diag_copy_btn) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, copy_diagnostics_with_message(diag_ctx)) + } + } + if controller.active_screen == .Script && button_clicked(script_copy_page_btn) { + page_text := build_script_page_detail_text(controller.state, summary_opts.script_page_cursor) + push_status(&status_msg, &action_log, copy_text_with_status(page_text, "Copied script page detail")) + delete(page_text) + } + if controller.active_screen == .Script && button_clicked(script_copy_all_btn) { + full_text := build_full_script_text(controller.state) + push_status(&status_msg, &action_log, copy_text_with_status(full_text, "Copied full script")) + delete(full_text) + } + if button_clicked(script_btn) { + push_status(&status_msg, &action_log, run_script_action(&controller, pages_count, use_deepseek_script, &is_dirty)) + } + if button_clicked(panels_btn) { + push_status(&status_msg, &action_log, run_panels_action(&controller, can_generate_panels, &is_dirty)) + } + if button_clicked(layout_btn) { + push_status(&status_msg, &action_log, run_layout_action(&controller, can_layout, &is_dirty)) + } + if button_clicked(export_btn) { + push_status(&status_msg, &action_log, run_export_action(&controller, &export_path, export_format, can_export, &is_dirty, &last_export_at)) + } + if button_clicked(next_btn) { + push_status(&status_msg, &action_log, run_next_action(&controller, &export_path, export_format, pages_count, use_deepseek_script, &is_dirty, &last_export_at)) + } + if button_clicked(auto_btn) { + push_status(&status_msg, &action_log, run_auto_all_action(&controller, &export_path, export_format, pages_count, use_deepseek_script, &is_dirty, &last_export_at)) + } + + if rl.IsKeyPressed(.F5) { + push_status(&status_msg, &action_log, run_script_action(&controller, pages_count, use_deepseek_script, &is_dirty)) + } + if rl.IsKeyPressed(.F6) { + push_status(&status_msg, &action_log, run_panels_action(&controller, can_generate_panels, &is_dirty)) + } + if rl.IsKeyPressed(.F7) { + push_status(&status_msg, &action_log, run_layout_action(&controller, can_layout, &is_dirty)) + } + if rl.IsKeyPressed(.F8) { + push_status(&status_msg, &action_log, run_export_action(&controller, &export_path, export_format, can_export, &is_dirty, &last_export_at)) + } + if rl.IsKeyPressed(.F9) { + push_status(&status_msg, &action_log, run_next_action(&controller, &export_path, export_format, pages_count, use_deepseek_script, &is_dirty, &last_export_at)) + } + if rl.IsKeyPressed(.F10) { + push_status(&status_msg, &action_log, run_auto_all_action(&controller, &export_path, export_format, pages_count, use_deepseek_script, &is_dirty, &last_export_at)) + } + + ctrl_down := rl.IsKeyDown(.LEFT_CONTROL) || rl.IsKeyDown(.RIGHT_CONTROL) + if ctrl_down && rl.IsKeyPressed(.S) { + push_status(&status_msg, &action_log, save_project_session_with_message(&project_path, controller.state, &is_dirty, &last_autosave_at, &last_save_at, "Saved project")) + } + if ctrl_down && rl.IsKeyPressed(.N) { + if is_dirty && !shift_down { + push_status(&status_msg, &action_log, request_confirmation(&show_confirm_overlay, &show_help_overlay, &pending_confirm_action, .Reset_Project, "Confirm reset?")) + } else { + push_status(&status_msg, &action_log, reset_project_session(&controller, &is_dirty, &last_autosave_at, true)) + } + } + if ctrl_down && rl.IsKeyPressed(.O) { + if is_dirty && !shift_down { + push_status(&status_msg, &action_log, request_confirmation(&show_confirm_overlay, &show_help_overlay, &pending_confirm_action, .Open_Project, "Confirm open?")) + } else { + push_status(&status_msg, &action_log, open_project_session(&controller, &project_path, &export_path, export_format, &is_dirty, &last_autosave_at)) + } + } + if ctrl_down && rl.IsKeyPressed(.E) { + push_status(&status_msg, &action_log, run_export_action(&controller, &export_path, export_format, can_export, &is_dirty, &last_export_at)) + } + if ctrl_down && rl.IsKeyPressed(.G) { + if use_deepseek_script { + use_deepseek_script = false + push_status(&status_msg, &action_log, "Script source: Local") + } else { + if !has_deepseek_key { + push_status(&status_msg, &action_log, "DeepSeek key missing (set DEEPSEEK_API_KEY)") + } else { + use_deepseek_script = true + push_status(&status_msg, &action_log, "Script source: DeepSeek") + } + } + } + if ctrl_down && rl.IsKeyPressed(.H) { + push_status_if_nonempty(&status_msg, &action_log, toggle_summary_show_if_supported(controller.active_screen, &summary_opts)) + } + if ctrl_down && rl.IsKeyPressed(.J) { + push_status_if_nonempty(&status_msg, &action_log, toggle_summary_sort_if_supported(controller.active_screen, &summary_opts)) + } + if controller.active_screen == .Script && ctrl_down && rl.IsKeyPressed(.LEFT_BRACKET) { + page_count := len(controller.state.script.pages) + if page_count > 0 { + summary_opts.script_page_cursor -= 1 + if summary_opts.script_page_cursor < 0 { + summary_opts.script_page_cursor = page_count - 1 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing script page %d/%d", summary_opts.script_page_cursor+1, page_count)) + } + } + if controller.active_screen == .Script && ctrl_down && rl.IsKeyPressed(.RIGHT_BRACKET) { + page_count := len(controller.state.script.pages) + if page_count > 0 { + summary_opts.script_page_cursor += 1 + if summary_opts.script_page_cursor >= page_count { + summary_opts.script_page_cursor = 0 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing script page %d/%d", summary_opts.script_page_cursor+1, page_count)) + } + } + if controller.active_screen == .Panels && ctrl_down && rl.IsKeyPressed(.LEFT_BRACKET) { + panel_count := count_script_panels(controller.state.script) + if panel_count > 0 { + summary_opts.panel_cursor -= 1 + if summary_opts.panel_cursor < 0 { + summary_opts.panel_cursor = panel_count - 1 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing panel %d/%d", summary_opts.panel_cursor+1, panel_count)) + } + } + if controller.active_screen == .Panels && ctrl_down && rl.IsKeyPressed(.RIGHT_BRACKET) { + panel_count := count_script_panels(controller.state.script) + if panel_count > 0 { + summary_opts.panel_cursor += 1 + if summary_opts.panel_cursor >= panel_count { + summary_opts.panel_cursor = 0 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing panel %d/%d", summary_opts.panel_cursor+1, panel_count)) + } + } + if ctrl_down && rl.IsKeyPressed(.MINUS) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, autosave_secs-5)) + } + if ctrl_down && rl.IsKeyPressed(.EQUAL) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, autosave_secs+5)) + } + if ctrl_down && rl.IsKeyPressed(.SEVEN) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, 15)) + } + if ctrl_down && rl.IsKeyPressed(.EIGHT) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, 30)) + } + if ctrl_down && rl.IsKeyPressed(.NINE) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_autosave_interval_text(&autosave_interval_text, 60)) + } + if ctrl_down && rl.IsKeyPressed(.ZERO) { + push_dirty_status(&is_dirty, &status_msg, &action_log, reset_helper_fields_with_message(&export_path, &local_script_pages, &autosave_interval_text, export_format)) + } + if ctrl_down && !shift_down && rl.IsKeyPressed(.L) { + set_status(&status_msg, clear_action_log_with_message(&action_log)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.L) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, copy_action_log_snapshot_with_message(diag_ctx)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.Z) { + push_status(&status_msg, &action_log, reset_log_view_with_message(&log_show_lines, &log_oldest_first)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.W) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, write_session_report_with_message(diag_ctx)) + } + if ctrl_down && rl.IsKeyPressed(.V) { + push_status_if_nonempty(&status_msg, &action_log, paste_clipboard_into_selected_field_with_message(selected_field, &controller.state, &export_path, &local_script_pages, &project_path, &autosave_interval_text, &is_dirty)) + } + if ctrl_down && rl.IsKeyPressed(.BACKSPACE) { + push_status(&status_msg, &action_log, clear_selected_field_with_message(selected_field, &controller.state, &export_path, &local_script_pages, &project_path, &autosave_interval_text, &is_dirty)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.I) { + field_text := selected_field_value(selected_field, controller.state, export_path, local_script_pages, project_path, autosave_interval_text) + push_status(&status_msg, &action_log, copy_text_with_status(field_text, "Copied selected field to clipboard")) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.C) { + push_status(&status_msg, &action_log, copy_text_with_status(status_msg, "Copied status to clipboard")) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.Y) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, copy_diagnostics_with_message(diag_ctx)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.T) { + push_status(&status_msg, &action_log, toggle_log_lines_with_message(&log_show_lines)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.B) { + push_status(&status_msg, &action_log, toggle_log_order_with_message(&log_oldest_first)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.R) { + diag_ctx := make_diagnostics_action_context(&controller, &action_log, is_dirty, autosave_enabled, project_path_ok, export_path_ok, autosave_secs, project_path, export_path, log_show_lines, log_oldest_first) + push_status(&status_msg, &action_log, write_diagnostics_with_message(diag_ctx)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.X) { + push_status(&status_msg, &action_log, copy_text_with_status(export_path, "Copied export path to clipboard")) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.P) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_export_preset_with_message(&export_path, export_format)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.D) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_export_path_from_project_with_message(&export_path, project_path, export_format)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.G) { + push_dirty_status(&is_dirty, &status_msg, &action_log, set_project_path_from_export_with_message(&project_path, export_path)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.J) { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_project_path_with_message(&project_path)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.K) { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_project_path_with_message(&project_path)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.M) { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_export_path_with_message(&export_path, export_format)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.U) { + push_dirty_status(&is_dirty, &status_msg, &action_log, fix_all_paths_with_message(&project_path, &export_path, export_format)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.F) { + push_dirty_status(&is_dirty, &status_msg, &action_log, normalize_export_path_with_message(&export_path, export_format)) + } + if ctrl_down && shift_down && rl.IsKeyPressed(.A) { + push_status(&status_msg, &action_log, toggle_autosave_with_message(&autosave_enabled)) + } + + if !interaction_locked { + for { + ch := rl.GetCharPressed() + if ch == 0 { break } + if ch < 32 || ch > 126 { continue } + if selected_field == 6 && (ch < '0' || ch > '9') { + continue + } + switch selected_field { + case 0: append_char(&controller.state.story_idea, ch) + case 1: append_char(&controller.state.story_genre, ch) + case 2: append_char(&controller.state.target_audience, ch) + case 3: append_char(&export_path, ch) + case 4: append_char(&local_script_pages, ch) + case 5: append_char(&project_path, ch) + case 6: append_char(&autosave_interval_text, ch) + } + is_dirty = true + } + if rl.IsKeyPressed(.BACKSPACE) { + switch selected_field { + case 0: pop_char(&controller.state.story_idea) + case 1: pop_char(&controller.state.story_genre) + case 2: pop_char(&controller.state.target_audience) + case 3: pop_char(&export_path) + case 4: pop_char(&local_script_pages) + case 5: pop_char(&project_path) + case 6: pop_char(&autosave_interval_text) + } + is_dirty = true + } + } + + } + + push_status_if_nonempty(&status_msg, &action_log, autosave_tick_with_message(&project_path, controller.state, autosave_enabled, &is_dirty, &last_autosave_at, &last_save_at, autosave_interval_s)) + + rl.BeginDrawing() + rl.ClearBackground(BG_BASE) + screen_w := rl.GetScreenWidth() + screen_h := rl.GetScreenHeight() + main_w := screen_w - 282 - 20 + if main_w < 960 { + main_w = 960 + } + + rl.DrawRectangle(0, 0, 260, screen_h, BG_SIDEBAR) + rl.DrawRectangle(260, 0, screen_w-260, 72, BG_TOPBAR) + rl.DrawLine(260, 72, screen_w, 72, BORDER_DIVIDER) + rl.DrawLine(260, 0, 260, screen_h, BORDER_DIVIDER) + + draw_card(rl.Rectangle{x = 14, y = 10, width = 236, height = 64}) + rl.DrawText("comic-odin", 24, 22, 23, BRAND_TITLE) + rl.DrawText("Native GUI", 24, 46, 14, BRAND_SUBTITLE) + draw_section_title(24, 68, "Screens") + draw_card(rl.Rectangle{x = 14, y = 86, width = 236, height = 296}) + draw_nav_item(nav_story, "1 Story", controller.active_screen == .Story) + draw_nav_item(nav_script, "2 Script", controller.active_screen == .Script) + draw_nav_item(nav_chars, "3 Characters", controller.active_screen == .Characters) + draw_nav_item(nav_panels, "4 Panels", controller.active_screen == .Panels) + draw_nav_item(nav_layout, "5 Layout", controller.active_screen == .Layout) + draw_nav_item(nav_bubbles, "6 Bubbles", controller.active_screen == .Bubbles) + draw_nav_item(nav_export, "7 Export", controller.active_screen == .Export) + draw_nav_item(nav_community, "8 Community", controller.active_screen == .Community) + draw_sidebar_shortcuts(screen_h_loop) + + // --- Pipeline Stepper in Topbar --- + draw_card(rl.Rectangle{x = 282, y = 12, width = f32(main_w), height = 48}) + rl.DrawText(fmt.ctprintf("%s", ui.screen_name(controller.active_screen)), 300, 26, 20, BRAND_TITLE) + + script_ok := len(controller.state.script.pages) > 0 + panels_ok := len(controller.state.panel_images) > 0 + layout_ok := len(controller.state.page_layouts) > 0 + export_ok := panels_ok && layout_ok + + step_x := i32(460) + step_y := i32(36) + step_spacing := i32(140) + + // Draw connecting lines first + for i in 0..<3 { + x1 := step_x + i32(i)*step_spacing + 24 + x2 := step_x + i32(i+1)*step_spacing - 24 + c := STEP_LINE_TODO + if (i == 0 && panels_ok) || (i == 1 && layout_ok) || (i == 2 && export_ok) { + c = STEP_LINE_DONE + } + rl.DrawLineEx(rl.Vector2{f32(x1), f32(step_y)}, rl.Vector2{f32(x2), f32(step_y)}, 2.0, c) + } + + // Helper to draw a single pipeline step + draw_step := proc(x, y: i32, label: string, done: bool) { + fill := STEP_TODO_FILL + border := STEP_TODO_BORDER + text_col := STEP_LABEL_TODO + if done { + fill = STEP_DONE_FILL + border = STEP_DONE_BORDER + text_col = STEP_LABEL_DONE + } + rl.DrawCircle(x, y, 10, fill) + rl.DrawCircleLines(x, y, 10, border) + // Draw checkmark if done + if done { + rl.DrawLineEx(rl.Vector2{f32(x-3), f32(y+1)}, rl.Vector2{f32(x-1), f32(y+4)}, 2.0, BG_BASE) + rl.DrawLineEx(rl.Vector2{f32(x-1), f32(y+4)}, rl.Vector2{f32(x+4), f32(y-3)}, 2.0, BG_BASE) + } + draw_text_fitted(label, x - 24, y + 16, 14, 48, 7, text_col) + } + + draw_step(step_x, step_y, "Script", script_ok) + draw_step(step_x + step_spacing, step_y, "Panels", panels_ok) + draw_step(step_x + step_spacing*2, step_y, "Layout", layout_ok) + draw_step(step_x + step_spacing*3, step_y, "Export", export_ok) + + // Pages input on far right of topbar + rl.DrawText("Local script pages", screen_w_loop - 250, 26, 16, TEXT_SECONDARY) + draw_input_field(pages_rec, local_script_pages, selected_field == 4) + + draw_card(rl.Rectangle{x = 282, y = 82, width = f32(main_w), height = 356}) + draw_card(rl.Rectangle{x = 282, y = 460, width = f32(main_w), height = 110}) + draw_section_title(300, 92, "Project Setup") + draw_section_title(300, 470, "Actions") + + rl.DrawText("Story Idea", 290, 96, 16, TEXT_SECONDARY) + draw_input_field(idea_rec, controller.state.story_idea, selected_field == 0) + + rl.DrawText("Genre", 290, 152, 16, TEXT_SECONDARY) + draw_input_field(genre_rec, controller.state.story_genre, selected_field == 1) + + rl.DrawText("Audience", 290, 208, 16, TEXT_SECONDARY) + draw_input_field(audience_rec, controller.state.target_audience, selected_field == 2) + + rl.DrawText("Export Path", 290, 264, 16, TEXT_SECONDARY) + draw_input_field(export_rec, export_path, selected_field == 3) + + rl.DrawText("Project Path", 290, 320, 16, TEXT_SECONDARY) + draw_input_field(project_rec, project_path, selected_field == 5) + + // Compact utility row below inputs + draw_small_button(export_copy_btn, "Copy Export") + draw_small_button(export_preset_btn, "Preset Ext") + draw_small_button(path_fix_btn, "Fix Exp Ext") + draw_small_button(project_fix_btn, "Fix Proj Ext") + draw_small_button(project_from_export_btn, "Proj From Exp") + draw_small_button(export_project_btn, "Exp From Proj") + + rl.DrawText("Format", 290, 404, 16, TEXT_SECONDARY) + draw_nav_item(fmt_pdf_btn, "PDF", export_format == .PDF) + draw_nav_item(fmt_png_btn, "PNG", export_format == .PNG) + draw_nav_item(fmt_cbz_btn, "CBZ", export_format == .CBZ) + + rl.DrawText("Script Source", 700, 404, 16, TEXT_SECONDARY) + draw_nav_item(script_src_local_btn, "Local", !use_deepseek_script) + draw_nav_item(script_src_deepseek_btn, "DeepSeek", use_deepseek_script) + if !has_deepseek_key { + draw_summary_subline(1024, 408, "set DEEPSEEK_API_KEY", KEY_MISSING_COLOR) + } + + next_hint := gui_next_hint_with_source(controller, use_deepseek_script) + recommended_label := recommended_label_from_hint(next_hint) + script_btn_label := "Generate Script Local" + if use_deepseek_script { + script_btn_label = "Generate Script" + } + + draw_button_warning(new_btn, "New Project") + if recommended_label == "Generate Script" || recommended_label == "Generate Script Local" { + draw_button_recommended(script_btn, script_btn_label) + } else { + draw_button(script_btn, script_btn_label) + } + if recommended_label == "Generate Panels Local" { + draw_button_recommended(panels_btn, "Generate Panels Local") + } else { + draw_button_state(panels_btn, "Generate Panels Local", can_generate_panels) + } + if recommended_label == "Layout" { + draw_button_recommended(layout_btn, "Layout Pages") + } else { + draw_button_state(layout_btn, "Layout Pages", can_layout) + } + if recommended_label == "Export" { + draw_button_recommended(export_btn, "Export") + } else { + draw_button_state(export_btn, "Export", can_export) + } + + draw_button_soft_accent(save_btn, "Save") + draw_button_soft_accent(open_btn, "Open") + draw_button_primary(next_btn, "Next Step") + draw_button_primary(auto_btn, "Auto-All") + draw_button_primary(auto_save_btn, "Auto-All + Save") + + draw_button_soft_accent(autosave_btn, autosave_enabled ? "Autosave: yes" : "Autosave: no") + rl.DrawText("Interval(s)", 500, 574, 16, TEXT_SECONDARY) + draw_input_field(autosave_rec, autosave_interval_text, selected_field == 6) + draw_small_button(autosave_15_btn, "15") + draw_small_button(autosave_30_btn, "30") + draw_small_button(autosave_60_btn, "60") + draw_button_soft_accent(help_btn, "Help (/)") + draw_button(clear_field_btn, "Clear Field") + draw_button_soft_accent(reset_helpers_btn, "Reset Helpers") + + label := "idea" + if selected_field == 1 { label = "genre" } + if selected_field == 2 { label = "audience" } + if selected_field == 3 { label = "export path" } + if selected_field == 4 { label = "local pages" } + if selected_field == 5 { label = "project path" } + if selected_field == 6 { label = "autosave interval" } + if !compact_mode { + hint_msg := button_readiness_hint(rl.GetMousePosition(), panels_btn, layout_btn, export_btn, can_generate_panels, can_layout, can_export) + if len(hint_msg) > 0 { + draw_hint_pill(rl.Rectangle{x = 1000, y = 580, width = 210, height = 22}, fmt.tprintf("%s", hint_msg), true) + } + } + + draw_card(rl.Rectangle{x = 282, y = f32(lower_y_loop-140), width = f32(status_w_loop), height = 160}) + now_draw := rl.GetTime() + status_y := lower_y_loop - 126 + rl.DrawText("Status", 300, status_y, 19, BRAND_TITLE) + rl.DrawLine(370, status_y+10, i32(282+status_w_loop)-14, status_y+10, BORDER_DIVIDER) + draw_text_fitted(status_msg, 300, status_y+26, 18, int(status_w_loop-36), 8, status_text_color(status_msg)) + draw_readiness_row(controller, 300, status_y+50) + ready_count, total_count := ready_stage_count(controller) + progress := f32(0) + if total_count > 0 { + progress = f32(ready_count) / f32(total_count) + } + draw_progress_bar(300, status_y+84, status_w_loop-26, progress) + draw_text_fitted(fmt.tprintf("Pipeline: %d/%d", ready_count, total_count), 300, status_y+102, 14, 122, 7, TEXT_TERTIARY) + draw_text_fitted(fmt.tprintf("Next: %s", gui_next_hint_with_source(controller, use_deepseek_script)), 430, status_y+102, 14, int(status_w_loop-166), 7, TEXT_SECONDARY) + draw_status_badge(rl.Rectangle{x = 300, y = f32(status_y+120), width = 118, height = 22}, fmt.tprintf("Dirty: %s", yn(is_dirty)), !is_dirty) + draw_status_badge(rl.Rectangle{x = 430, y = f32(status_y+120), width = 188, height = 22}, fmt.tprintf("Autosave: %s (%ds)", yn(autosave_enabled), autosave_secs), autosave_enabled) + save_meta := "save: never" + if last_save_at >= 0 { + save_meta = fmt.tprintf("save: %.0fs", now_draw-last_save_at) + } + export_meta := "export: never" + if last_export_at >= 0 { + export_meta = fmt.tprintf("export: %.0fs", now_draw-last_export_at) + } + draw_text_fitted(fmt.tprintf("%s | %s", save_meta, export_meta), 630, status_y+124, 13, int(status_w_loop-26), 7, TEXT_TERTIARY) + path_fix_project_status_btn.y = f32(status_y + 114) + path_fix_export_status_btn.y = f32(status_y + 114) + path_fix_all_status_btn.y = f32(status_y + 114) + draw_small_button_state(path_fix_project_status_btn, "P", !project_path_ok) + draw_small_button_state(path_fix_export_status_btn, "E", !export_path_ok) + draw_small_button_state(path_fix_all_status_btn, "PE", !project_path_ok || !export_path_ok) + + draw_screen_summary(controller, export_path, 300, lower_y_loop+12, status_w_loop-8, summary_opts) + if controller.active_screen == .Script || controller.active_screen == .Layout || controller.active_screen == .Panels { + if controller.active_screen == .Script || controller.active_screen == .Layout { + show_txt := "Top" + sort_txt := "Asc" + if controller.active_screen == .Script { + if summary_opts.script_show_all { show_txt = "All" } + if summary_opts.script_desc { sort_txt = "Desc" } + } else { + if summary_opts.layout_show_all { show_txt = "All" } + if summary_opts.layout_desc { sort_txt = "Desc" } + } + show_btn_label := "Show:Top" + if show_txt == "All" { + show_btn_label = "Show:All" + } + sort_btn_label := "Sort:Asc" + if sort_txt == "Desc" { + sort_btn_label = "Sort:Desc" + } + draw_small_button(summary_show_btn, show_btn_label) + draw_small_button(summary_sort_btn, sort_btn_label) + } + if controller.active_screen == .Script { + draw_small_button(summary_prev_btn, "< Pg") + draw_small_button(summary_next_btn, "Pg >") + } else if controller.active_screen == .Panels { + draw_small_button(summary_prev_btn, "< Pn") + draw_small_button(summary_next_btn, "Pn >") + } + if !compact_mode { + hint_label := "Ctrl+[ / Ctrl+]" + if controller.active_screen == .Script || controller.active_screen == .Layout { + hint_label = "Ctrl+H / Ctrl+J" + } + draw_hint_pill(rl.Rectangle{x = f32(282 + status_w_loop - 186), y = f32(lower_y_loop + 46), width = 172, height = 20}, hint_label, false) + } + } + if !compact_mode { + draw_hint_pill(rl.Rectangle{x = 300, y = f32(lower_y_loop + 206), width = f32(status_w_loop-18), height = 24}, "Tip: New/Open show confirm modal when dirty (Shift still quick-confirms)", true) + } + + if controller.active_screen == .Script { + draw_script_detail_panel(controller, log_x_loop, lower_y_loop, main_w_loop-status_w_loop-2, 200, summary_opts.script_page_cursor) + draw_small_button(script_copy_page_btn, "Copy Page") + draw_small_button(script_copy_all_btn, "Copy All") + draw_text_fitted("Ctrl+[ / Ctrl+] page nav", log_x_loop+216, lower_y_loop+8, 13, int(main_w_loop-status_w_loop-228), 7, TEXT_TERTIARY) + } else if controller.active_screen == .Panels { + retry, new_cursor := draw_panels_detail_panel(controller, log_x_loop, lower_y_loop, main_w_loop-status_w_loop-2, 200, summary_opts.panel_cursor) + panel_count := count_script_panels(controller.state.script) + if summary_opts.panel_cursor != new_cursor { + summary_opts.panel_cursor = new_cursor + push_status(&status_msg, &action_log, fmt.tprintf("Viewing panel %d/%d", summary_opts.panel_cursor+1, panel_count)) + } + if retry { + panel, _, ok := panel_by_flat_index(controller.state.script, summary_opts.panel_cursor) + if ok { + msg := action_regenerate_panel(&controller, panel.panel_id) + push_status(&status_msg, &action_log, msg) + } + } + + wheel := rl.GetMouseWheelMove() + if wheel != 0 && panel_count > 0 { + summary_opts.panel_cursor -= int(wheel) + if summary_opts.panel_cursor < 0 { + summary_opts.panel_cursor = 0 + } + if summary_opts.panel_cursor >= panel_count { + summary_opts.panel_cursor = panel_count - 1 + } + push_status(&status_msg, &action_log, fmt.tprintf("Viewing panel %d/%d", summary_opts.panel_cursor+1, panel_count)) + } + + draw_text_fitted("Ctrl+[ / Ctrl+] panel nav", log_x_loop+18, lower_y_loop+8, 13, int(main_w_loop-status_w_loop-34), 7, TEXT_TERTIARY) + } else { + draw_card(rl.Rectangle{x = f32(log_x_loop), y = f32(lower_y_loop), width = f32(main_w_loop-status_w_loop-2), height = 200}) + draw_section_title(log_x_loop+18, lower_y_loop+6, "Action Log") + draw_subtle_strip(rl.Rectangle{x = f32(log_x_loop+12), y = f32(lower_y_loop), width = f32(main_w_loop-status_w_loop-26), height = 40}) + draw_small_button(log_reset_btn, "Default") + draw_small_button(report_file_btn, "Report") + draw_small_button(log_copy_btn, "LogCopy") + draw_small_button(diag_file_btn, "DiagFile") + draw_small_button(status_copy_btn, "Copy") + draw_small_button(log_clear_btn, "Clear") + draw_small_button(diag_copy_btn, "Diag") + order_label := "newest" + if log_oldest_first { + order_label = "oldest" + } + draw_text_fitted(fmt.tprintf("View: %d lines, %s first", log_show_lines, order_label), log_x_loop+18, lower_y_loop+36, 13, 216, 7, TEXT_TERTIARY) + draw_action_log(action_log, log_x_loop+18, lower_y_loop+52, log_show_lines, log_oldest_first) + } + draw_toast(action_log, log_x_loop+8, 70, main_w_loop-status_w_loop-18) + if show_help_overlay { + draw_help_overlay() + } + if show_confirm_overlay { + draw_confirm_overlay(pending_confirm_action) + draw_button_danger(confirm_yes_btn, "Confirm") + draw_button_soft_accent(confirm_no_btn, "Cancel") + } + + rl.EndDrawing() + } + + core.dispose_state(state) + state^ = controller.state + controller.state = core.Comic_State{} + return shared.ok() +} diff --git a/odin/src/gui/session_helpers.odin b/odin/src/gui/session_helpers.odin new file mode 100644 index 0000000..379538c --- /dev/null +++ b/odin/src/gui/session_helpers.odin @@ -0,0 +1,212 @@ +package gui + +import "core:fmt" +import rl "vendor:raylib" +import "../core" +import "../shared" +import "../ui" + +set_status :: proc(status: ^string, msg: string) { + delete(status^) + status^ = fmt.aprintf("%s", msg) +} + +push_status :: proc(status: ^string, log: ^Action_Log, msg: string) { + set_status(status, msg) + action_log_push(log, status^) +} + +push_status_if_nonempty :: proc(status: ^string, log: ^Action_Log, msg: string) { + if len(msg) > 0 { + push_status(status, log, msg) + } +} + +push_dirty_status :: proc(is_dirty: ^bool, status: ^string, log: ^Action_Log, msg: string) { + is_dirty^ = true + push_status(status, log, msg) +} + +screen_status_label :: proc(screen: ui.App_Screen) -> string { + switch screen { + case .Story: return "Story" + case .Script: return "Script" + case .Characters: return "Characters" + case .Panels: return "Panels" + case .Layout: return "Layout" + case .Bubbles: return "Bubbles" + case .Export: return "Export" + case .Community: return "Community" + } + return "Unknown" +} + +navigate_screen_with_status :: proc(controller: ^ui.App_Controller, screen: ui.App_Screen) -> string { + err := ui.navigate_to_screen(controller, screen) + if !shared.is_ok(err) { + return err.message + } + return fmt.aprintf("Screen: %s", screen_status_label(screen)) +} + +request_confirmation :: proc(show_confirm_overlay, show_help_overlay: ^bool, pending_confirm_action: ^Pending_Confirm_Action, action: Pending_Confirm_Action, prompt: string) -> string { + show_confirm_overlay^ = true + show_help_overlay^ = false + pending_confirm_action^ = action + return prompt +} + +toggle_autosave_with_message :: proc(autosave_enabled: ^bool) -> string { + autosave_enabled^ = !autosave_enabled^ + return fmt.aprintf("Autosave: %s", yn(autosave_enabled^)) +} + +reset_helper_fields_with_message :: proc(export_path, local_script_pages, autosave_interval_text: ^string, f: core.Export_Format) -> string { + reset_helper_fields(export_path, local_script_pages, autosave_interval_text, f) + return "Reset helper fields to defaults" +} + +toggle_help_overlay :: proc(show_help_overlay: ^bool) { + show_help_overlay^ = !show_help_overlay^ +} + +close_help_overlay_if_open :: proc(show_help_overlay: ^bool) { + if show_help_overlay^ { + show_help_overlay^ = false + } +} + +clear_action_log_with_message :: proc(log: ^Action_Log) -> string { + action_log_dispose(log) + return "Action log cleared" +} + +reset_log_view :: proc(log_show_lines: ^i32, log_oldest_first: ^bool) { + log_show_lines^ = 6 + log_oldest_first^ = false +} + +reset_log_view_with_message :: proc(log_show_lines: ^i32, log_oldest_first: ^bool) -> string { + reset_log_view(log_show_lines, log_oldest_first) + return "Reset log view" +} + +toggle_log_lines_with_message :: proc(log_show_lines: ^i32) -> string { + if log_show_lines^ == 6 { + log_show_lines^ = 4 + } else { + log_show_lines^ = 6 + } + return fmt.aprintf("Log lines: %d", log_show_lines^) +} + +toggle_log_order_with_message :: proc(log_oldest_first: ^bool) -> string { + log_oldest_first^ = !log_oldest_first^ + order := "newest" + if log_oldest_first^ { + order = "oldest" + } + return fmt.aprintf("Log order: %s first", order) +} + +selected_field_value :: proc(selected_field: int, state: core.Comic_State, export_path, local_script_pages, project_path, autosave_interval_text: string) -> string { + switch selected_field { + case 0: return state.story_idea + case 1: return state.story_genre + case 2: return state.target_audience + case 3: return export_path + case 4: return local_script_pages + case 5: return project_path + case 6: return autosave_interval_text + } + return "" +} + +clear_selected_field :: proc(selected_field: int, state: ^core.Comic_State, export_path, local_script_pages, project_path, autosave_interval_text: ^string) -> bool { + switch selected_field { + case 0: + if len(state.story_idea) == 0 { return false } + state.story_idea = "" + case 1: + if len(state.story_genre) == 0 { return false } + state.story_genre = "" + case 2: + if len(state.target_audience) == 0 { return false } + state.target_audience = "" + case 3: + if len(export_path^) == 0 { return false } + export_path^ = "" + case 4: + if len(local_script_pages^) == 0 { return false } + local_script_pages^ = "" + case 5: + if len(project_path^) == 0 { return false } + project_path^ = "" + case 6: + if len(autosave_interval_text^) == 0 { return false } + autosave_interval_text^ = "" + case: + return false + } + return true +} + +clear_selected_field_with_message :: proc(selected_field: int, state: ^core.Comic_State, export_path, local_script_pages, project_path, autosave_interval_text: ^string, is_dirty: ^bool) -> string { + if clear_selected_field(selected_field, state, export_path, local_script_pages, project_path, autosave_interval_text) { + is_dirty^ = true + return "Cleared selected field" + } + return "Selected field already empty" +} + +paste_clipboard_into_selected_field_with_message :: proc(selected_field: int, state: ^core.Comic_State, export_path, local_script_pages, project_path, autosave_interval_text: ^string, is_dirty: ^bool) -> string { + clip_raw := rl.GetClipboardText() + if clip_raw == nil { + return "" + } + clip_text := fmt.aprintf("%s", clip_raw) + switch selected_field { + case 0: state.story_idea = clip_text + case 1: state.story_genre = clip_text + case 2: state.target_audience = clip_text + case 3: export_path^ = clip_text + case 4: local_script_pages^ = clip_text + case 5: project_path^ = clip_text + case 6: autosave_interval_text^ = clip_text + } + is_dirty^ = true + return "Pasted clipboard into selected field" +} + +Action_Log :: struct { + entries: [8]string, + owned: [8]bool, + entry_times: [8]f64, + count: int, + last_push_at: f64, +} + +action_log_push :: proc(log: ^Action_Log, msg: string) { + now := rl.GetTime() + idx := log.count % len(log.entries) + if log.owned[idx] { + delete(log.entries[idx]) + } + log.entries[idx] = fmt.aprintf("%s", msg) + log.owned[idx] = true + log.entry_times[idx] = now + log.count += 1 + log.last_push_at = now +} + +action_log_dispose :: proc(log: ^Action_Log) { + for i in 0.. (ready: int, total: int) { + script_ok := len(controller.state.script.pages) > 0 + panels_ok := len(controller.state.panel_images) > 0 + layout_ok := len(controller.state.page_layouts) > 0 + export_ok := panels_ok && layout_ok + ready = 0 + if script_ok { ready += 1 } + if panels_ok { ready += 1 } + if layout_ok { ready += 1 } + if export_ok { ready += 1 } + return ready, 4 +} + +draw_progress_bar :: proc(x, y, w: i32, progress: f32) { + track := rl.Rectangle{x = f32(x), y = f32(y), width = f32(w), height = 12} + rl.DrawRectangleRounded(track, RADIUS_BAR, 8, PROGRESS_TRACK) + fill_w := i32(f32(w) * progress) + if fill_w > 0 { + fill := rl.Rectangle{x = f32(x), y = f32(y), width = f32(fill_w), height = 12} + rl.DrawRectangleRounded(fill, RADIUS_BAR, 8, PROGRESS_FILL) + } +} + +draw_readiness_row :: proc(controller: ui.App_Controller, x, y: i32) { + script_ok := len(controller.state.script.pages) > 0 + panels_ok := len(controller.state.panel_images) > 0 + layout_ok := len(controller.state.page_layouts) > 0 + export_ok := panels_ok && layout_ok + draw_readiness_chip(x, y, 120, "Script", script_ok) + draw_readiness_chip(x+126, y, 120, "Panels", panels_ok) + draw_readiness_chip(x+252, y, 120, "Layout", layout_ok) + draw_readiness_chip(x+378, y, 120, "Export", export_ok) +} + +export_block_reason :: proc(state: core.Comic_State) -> string { + if len(state.panel_images) == 0 && len(state.page_layouts) == 0 { + return "need panels + layout" + } + if len(state.panel_images) == 0 { + return "need panels" + } + if len(state.page_layouts) == 0 { + return "need layout" + } + return "" +} + +draw_screen_summary :: proc(controller: ui.App_Controller, export_path: string, x, y, w: i32, opts: Summary_View_Options) { + draw_card(rl.Rectangle{x = f32(x-18), y = f32(y-12), width = f32(w), height = 200}) + rl.DrawText("Screen Summary", x, y, 22, SUMMARY_TITLE) + chip_base := x + w - 258 + if chip_base < x+210 { + chip_base = x + 210 + } + draw_stat_chip(chip_base, y-4, "Pages", len(controller.state.script.pages)) + draw_stat_chip(chip_base+86, y-4, "Panels", len(controller.state.panel_images)) + draw_stat_chip(chip_base+172, y-4, "Layout", len(controller.state.page_layouts)) + + switch controller.active_screen { + case .Story: + draw_summary_line(x, y+30, fmt.tprintf("Idea length: %d chars", len(controller.state.story_idea)), rl.DARKGRAY) + draw_summary_line(x, y+54, fmt.tprintf("Genre: %s", controller.state.story_genre), rl.DARKGRAY) + draw_summary_line(x, y+78, fmt.tprintf("Audience: %s", controller.state.target_audience), rl.DARKGRAY) + rl.DrawText("Use Generate Script Local to begin", x, y+112, 18, SUMMARY_HINT) + case .Script: + draw_summary_line(x, y+30, fmt.tprintf("Title: %s", controller.state.script.title), rl.DARKGRAY) + page_count := len(controller.state.script.pages) + draw_summary_line(x, y+54, fmt.tprintf("Pages: %d | Characters: %d", page_count, len(controller.state.script.characters)), rl.DARKGRAY) + if page_count == 0 { + rl.DrawText("No script pages yet. Generate Script Local to continue.", x, y+86, 18, SUMMARY_HINT) + } else { + cursor := opts.script_page_cursor + if cursor < 0 { + cursor = 0 + } + if cursor >= page_count { + cursor = page_count - 1 + } + page := controller.state.script.pages[cursor] + draw_summary_line(x, y+78, fmt.tprintf("Viewing page %d/%d (script page #%d)", cursor+1, page_count, page.page_number), SUMMARY_ACCENT) + draw_summary_line(x, y+100, fmt.tprintf("Panels on page: %d", len(page.panels)), rl.DARKGRAY) + line_y := y + 124 + show_panels := len(page.panels) + if show_panels > 2 { + show_panels = 2 + } + for i in 0.. 0 { + draw_summary_subline(x+12, line_y+i32(i*28)+14, fit_text_for_width(fmt.tprintf("\"%s\"", pn.dialogue[0].text), int(w-54), 7), SUMMARY_DIM) + } + } + if len(page.panels) > show_panels { + draw_summary_subline(x+w-158, y+166, fmt.tprintf("+%d more panels", len(page.panels)-show_panels), SUMMARY_ACCENT) + } + } + case .Characters: + draw_summary_line(x, y+30, fmt.tprintf("Character count: %d", len(controller.state.characters)), rl.DARKGRAY) + rl.DrawText("Character editor is scaffolded", x, y+54, 18, rl.DARKGRAY) + rl.DrawText("Use script generation to populate", x, y+78, 18, rl.DARKGRAY) + case .Panels: + script_panel_count := count_script_panels(controller.state.script) + draw_summary_line(x, y+30, fmt.tprintf("Panel images: %d", len(controller.state.panel_images)), rl.DARKGRAY) + draw_summary_line(x, y+54, fmt.tprintf("Script panels: %d", script_panel_count), rl.DARKGRAY) + draw_summary_line(x, y+78, fmt.tprintf("Script pages: %d", len(controller.state.script.pages)), rl.DARKGRAY) + if script_panel_count == 0 { + rl.DrawText("No script panels yet. Generate Script first.", x, y+112, 18, SUMMARY_HINT) + } else { + pidx := clamp_panel_cursor(script_panel_count, opts.panel_cursor) + panel, page_num, _ := panel_by_flat_index(controller.state.script, pidx) + status := "missing" + if _, has_img := controller.state.panel_images[panel.panel_id]; has_img { + status = "ready" + } + draw_summary_line(x, y+102, fmt.tprintf("Viewing panel %d/%d • page %d # %d", pidx+1, script_panel_count, page_num, panel.panel_number), SUMMARY_ACCENT) + draw_summary_subline(x, y+124, fmt.tprintf("%s • %s", panel.panel_id, status), SUMMARY_SUBLINE) + } + case .Layout: + draw_summary_line(x, y+30, fmt.tprintf("Layout pages: %d", len(controller.state.page_layouts)), rl.DARKGRAY) + draw_summary_line(x, y+54, fmt.tprintf("Page size: %v", controller.state.page_size), rl.DARKGRAY) + layout_show := len(controller.state.page_layouts) + if !opts.layout_show_all && layout_show > 3 { layout_show = 3 } + if layout_show == 0 { + rl.DrawText("No layouts yet. Use Layout Auto after panels are ready.", x, y+86, 18, SUMMARY_HINT) + } else { + if opts.layout_desc { + for i in 0.. 0 { + last := controller.state.page_layouts[len(controller.state.page_layouts)-1] + draw_summary_subline(x, y+102, fmt.tprintf("Last layout pattern: %s", last.pattern_id), SUMMARY_DIM) + } + reason := export_block_reason(controller.state) + if len(reason) > 0 { + draw_summary_line(x, y+124, fmt.tprintf("Export blocked: %s", reason), ERROR) + } else { + rl.DrawText("Use Export button or Ctrl+E", x, y+124, 18, SUMMARY_HINT) + } + case .Community: + rl.DrawText("Community features coming soon", x, y+30, 18, rl.DARKGRAY) + rl.DrawText("Current focus: local GUI workflows", x, y+54, 18, rl.DARKGRAY) + } +} + +clamp_script_cursor :: proc(page_count, cursor: int) -> int { + if page_count <= 0 { + return 0 + } + if cursor < 0 { + return 0 + } + if cursor >= page_count { + return page_count - 1 + } + return cursor +} + +clamp_panel_cursor :: proc(panel_count, cursor: int) -> int { + if panel_count <= 0 { + return 0 + } + if cursor < 0 { + return 0 + } + if cursor >= panel_count { + return panel_count - 1 + } + return cursor +} + +panel_by_flat_index :: proc(script: core.Comic_Script, panel_idx: int) -> (core.Panel, int, bool) { + if panel_idx < 0 { + return core.Panel{}, 0, false + } + flat := 0 + for page in script.pages { + for panel in page.panels { + if flat == panel_idx { + return panel, page.page_number, true + } + flat += 1 + } + } + return core.Panel{}, 0, false +} + +build_script_page_detail_text :: proc(state: core.Comic_State, cursor: int) -> string { + page_count := len(state.script.pages) + if page_count == 0 { + return fmt.aprintf("No script pages available.") + } + idx := clamp_script_cursor(page_count, cursor) + page := state.script.pages[idx] + out := fmt.aprintf("Title: %s\nPage %d/%d (script page #%d)\nPanels: %d", state.script.title, idx+1, page_count, page.page_number, len(page.panels)) + for pn in page.panels { + desc := pn.description + if len(desc) == 0 { + desc = "(no description)" + } + next := fmt.aprintf("%s\n\nPanel %d [%v]\n%s", out, pn.panel_number, pn.shot_type, desc) + delete(out) + out = next + for d in pn.dialogue { + line := fmt.aprintf("%s\n- %s: %s", out, d.speaker_id, d.text) + delete(out) + out = line + } + if len(pn.caption) > 0 { + line := fmt.aprintf("%s\n caption: %s", out, pn.caption) + delete(out) + out = line + } + } + return out +} + +build_full_script_text :: proc(state: core.Comic_State) -> string { + page_count := len(state.script.pages) + if page_count == 0 { + return fmt.aprintf("No script pages available.") + } + out := fmt.aprintf("Title: %s\nSynopsis: %s\nCharacters: %d\nPages: %d", state.script.title, state.script.synopsis, len(state.script.characters), page_count) + for page in state.script.pages { + head := fmt.aprintf("%s\n\n=== Page %d (%d panels) ===", out, page.page_number, len(page.panels)) + delete(out) + out = head + for pn in page.panels { + desc := pn.description + if len(desc) == 0 { + desc = "(no description)" + } + row := fmt.aprintf("%s\nPanel %d: %s", out, pn.panel_number, desc) + delete(out) + out = row + } + } + return out +} + + +draw_script_detail_panel :: proc(controller: ui.App_Controller, x, y, w, h: i32, cursor: int) { + draw_card(rl.Rectangle{x = f32(x), y = f32(y), width = f32(w), height = f32(h)}) + draw_section_title(x+18, y+6, "Script Detail") + draw_subtle_strip(rl.Rectangle{x = f32(x+12), y = f32(y), width = f32(w-24), height = 34}) + page_count := len(controller.state.script.pages) + if page_count == 0 { + draw_summary_line(x+18, y+46, "No script pages yet. Run Generate Script Local.", SUMMARY_HINT) + return + } + idx := clamp_script_cursor(page_count, cursor) + page := controller.state.script.pages[idx] + draw_summary_line(x+18, y+46, fmt.tprintf("Page %d/%d (#%d) • panels %d", idx+1, page_count, page.page_number, len(page.panels)), SUMMARY_ACCENT) + line_y := y + 70 + line_step: i32 = 20 + line_max: i32 = (h - 84) / line_step + lines_used: i32 = 0 + for pn in page.panels { + if lines_used >= line_max { + break + } + desc := pn.description + if len(desc) == 0 { + desc = "(no description)" + } + draw_summary_subline(x+18, line_y+lines_used*line_step, fit_text_for_width(fmt.tprintf("• P%d: %s", pn.panel_number, desc), int(w-40), 7), SUMMARY_SUBLINE) + lines_used += 1 + if len(pn.dialogue) > 0 && lines_used < line_max { + draw_summary_subline(x+30, line_y+lines_used*line_step, fit_text_for_width(fmt.tprintf("\"%s\"", pn.dialogue[0].text), int(w-52), 7), SUMMARY_DIM) + lines_used += 1 + } + } + if len(page.panels) > 0 && lines_used >= line_max { + draw_summary_subline(x+w-140, y+h-18, "…more", SUMMARY_ACCENT) + } +} + + +draw_panels_detail_panel :: proc(controller: ui.App_Controller, x, y, w, h: i32, cursor: int) -> (retry_clicked: bool, new_cursor: int) { + new_cursor = cursor + retry_clicked = false + + draw_card(rl.Rectangle{x = f32(x), y = f32(y), width = f32(w), height = f32(h)}) + draw_section_title(x+18, y+6, "Panel Results") + draw_subtle_strip(rl.Rectangle{x = f32(x+12), y = f32(y), width = f32(w-24), height = 34}) + panel_count := count_script_panels(controller.state.script) + if panel_count == 0 { + draw_summary_line(x+18, y+46, "No script panels yet. Generate Script first.", SUMMARY_HINT) + return + } + idx := clamp_panel_cursor(panel_count, cursor) + panel, page_num, ok := panel_by_flat_index(controller.state.script, idx) + if !ok { + draw_summary_line(x+18, y+46, "Panel index out of range.", ERROR) + return + } + img, has_img := controller.state.panel_images[panel.panel_id] + err_msg, has_err := controller.state.panel_errors[panel.panel_id] + status := "missing" + status_color := WARNING + if has_err { + status = "error" + status_color = ERROR + } + if has_img { + status = "ready" + status_color = SUCCESS + } + draw_summary_line(x+18, y+46, fmt.tprintf("Panel %d/%d • page %d # %d • %s", idx+1, panel_count, page_num, panel.panel_number, status), status_color) + + btn_label := "Regenerate" + if status != "ready" { + btn_label = "Generate" + } + btn_rec := rl.Rectangle{x = f32(x + w - 100), y = f32(y+42), width = 80, height = 24} + draw_small_button_state(btn_rec, btn_label, true) + if button_clicked(btn_rec) { + retry_clicked = true + } + + draw_summary_subline(x+18, y+66, fit_text_for_width(fmt.tprintf("id: %s", panel.panel_id), int(w-120), 7), SUMMARY_SUBLINE) + if has_err { + draw_summary_subline(x+18, y+84, fit_text_for_width(fmt.tprintf("err: %s", err_msg), int(w-36), 7), ERROR) + } else if has_img { + draw_summary_subline(x+18, y+84, fit_text_for_width(fmt.tprintf("img: %dx%d seed:%d", img.width, img.height, img.seed), int(w-36), 7), SUMMARY_DIM) + } else { + draw_summary_subline(x+18, y+84, "img: not generated", SUMMARY_DIM) + } + desc := panel.description + if len(desc) == 0 { + desc = "(no description)" + } + draw_summary_subline(x+18, y+104, fit_text_for_width(fmt.tprintf("desc: %s", desc), int(w-36), 7), SUMMARY_SUBLINE) + if has_img { + draw_summary_subline(x+18, y+124, fit_text_for_width(fmt.tprintf("src: %s", img.url), int(w-36), 7), SUMMARY_DIM) + } + + list_y := y + 146 + row_h: i32 = 18 + rows: i32 = (h - 154) / row_h + if rows < 1 { + rows = 1 + } + start := idx - int(rows/2) + if start < 0 { + start = 0 + } + end := start + int(rows) + if end > panel_count { + end = panel_count + start = end - int(rows) + if start < 0 { + start = 0 + } + } + line: i32 = 0 + for i in start.. string { + if px_per_char <= 0 { + return text + } + max_chars := width_px / px_per_char + if max_chars < 4 { + max_chars = 4 + } + if len(text) <= max_chars { + return text + } + return fmt.tprintf("%s…", text[:max_chars-1]) +} + +draw_text_fitted :: proc(text: string, x, y, font_size: i32, width_px, px_per_char: int, color: rl.Color) { + display := fit_text_for_width(text, width_px, px_per_char) + rl.DrawText(fmt.ctprintf("%s", display), x, y, font_size, color) +} diff --git a/odin/src/gui/theme.odin b/odin/src/gui/theme.odin new file mode 100644 index 0000000..7ccb0f9 --- /dev/null +++ b/odin/src/gui/theme.odin @@ -0,0 +1,210 @@ +package gui + +import rl "vendor:raylib" + +// ── Backgrounds ────────────────────────────────────────────────────────── +BG_BASE :: rl.Color{13, 13, 18, 255} +BG_SIDEBAR :: rl.Color{18, 18, 24, 255} +BG_TOPBAR :: rl.Color{18, 18, 24, 255} +BG_CARD :: rl.Color{24, 24, 32, 255} +BG_CARD_ALT :: rl.Color{28, 28, 38, 255} // slightly elevated card +BG_STRIP :: rl.Color{22, 22, 30, 255} // subtle strip background +BG_OVERLAY :: rl.Color{8, 8, 12, 180} // modal backdrop + +// ── Borders ────────────────────────────────────────────────────────────── +BORDER_CARD :: rl.Color{40, 40, 52, 255} +BORDER_SUBTLE :: rl.Color{36, 36, 48, 255} +BORDER_DIVIDER :: rl.Color{36, 36, 48, 255} + +// ── Accent (Indigo-Violet) ─────────────────────────────────────────────── +ACCENT :: rl.Color{99, 102, 241, 255} +ACCENT_HOVER :: rl.Color{120, 122, 248, 255} +ACCENT_MUTED :: rl.Color{68, 70, 180, 255} +ACCENT_SURFACE :: rl.Color{30, 30, 56, 255} +ACCENT_GLOW :: rl.Color{99, 102, 241, 80} + +// ── Text ───────────────────────────────────────────────────────────────── +TEXT_PRIMARY :: rl.Color{228, 228, 240, 255} +TEXT_SECONDARY :: rl.Color{148, 148, 168, 255} +TEXT_TERTIARY :: rl.Color{98, 98, 118, 255} +TEXT_DISABLED :: rl.Color{68, 68, 88, 255} +TEXT_BRIGHT :: rl.Color{245, 245, 255, 255} + +// ── Semantic: Success ──────────────────────────────────────────────────── +SUCCESS :: rl.Color{52, 211, 153, 255} +SUCCESS_BG :: rl.Color{16, 42, 32, 255} +SUCCESS_BORDER :: rl.Color{40, 100, 74, 255} +SUCCESS_TEXT :: rl.Color{110, 231, 183, 255} + +// ── Semantic: Warning ──────────────────────────────────────────────────── +WARNING :: rl.Color{251, 191, 36, 255} +WARNING_BG :: rl.Color{50, 38, 14, 255} +WARNING_BORDER :: rl.Color{120, 90, 30, 255} +WARNING_TEXT :: rl.Color{253, 224, 120, 255} + +// ── Semantic: Error ────────────────────────────────────────────────────── +ERROR :: rl.Color{248, 113, 113, 255} +ERROR_BG :: rl.Color{50, 18, 18, 255} +ERROR_BORDER :: rl.Color{120, 50, 50, 255} +ERROR_TEXT :: rl.Color{254, 178, 178, 255} + +// ── Semantic: Danger (destructive buttons) ─────────────────────────────── +DANGER_BG :: rl.Color{153, 50, 58, 255} +DANGER_BG_HOVER :: rl.Color{172, 60, 68, 255} +DANGER_BORDER :: rl.Color{130, 42, 48, 255} + +// ── Semantic: Warning-style buttons ────────────────────────────────────── +WARN_BTN_BG :: rl.Color{80, 64, 30, 255} +WARN_BTN_BG_HOVER :: rl.Color{95, 76, 36, 255} +WARN_BTN_BORDER :: rl.Color{110, 88, 40, 255} +WARN_BTN_TEXT :: rl.Color{253, 224, 120, 255} + +// ── Buttons ────────────────────────────────────────────────────────────── +BTN_BG :: rl.Color{32, 32, 44, 255} +BTN_BG_HOVER :: rl.Color{40, 40, 54, 255} +BTN_BORDER :: rl.Color{52, 52, 68, 255} +BTN_BORDER_HOVER :: rl.Color{80, 82, 140, 255} +BTN_TEXT :: TEXT_PRIMARY + +BTN_SOFT_BG :: rl.Color{28, 30, 48, 255} +BTN_SOFT_BG_HOVER :: rl.Color{36, 38, 58, 255} +BTN_SOFT_BORDER :: rl.Color{60, 62, 100, 255} +BTN_SOFT_TEXT :: rl.Color{160, 162, 220, 255} + +BTN_DISABLED_BG :: rl.Color{24, 24, 32, 255} +BTN_DISABLED_BORDER :: rl.Color{36, 36, 48, 255} +BTN_DISABLED_TEXT :: rl.Color{68, 68, 88, 255} + +// ── Small Buttons ──────────────────────────────────────────────────────── +SBTN_BG :: rl.Color{30, 30, 42, 255} +SBTN_BG_HOVER :: rl.Color{40, 40, 54, 255} +SBTN_BORDER :: rl.Color{50, 50, 66, 255} +SBTN_BORDER_HOVER :: rl.Color{80, 82, 140, 255} +SBTN_TEXT :: rl.Color{188, 188, 210, 255} + +// ── Navigation ─────────────────────────────────────────────────────────── +NAV_BG :: rl.Color{24, 24, 32, 255} +NAV_BG_HOVER :: rl.Color{32, 32, 44, 255} +NAV_BORDER :: rl.Color{40, 40, 52, 255} +NAV_BORDER_HOVER :: rl.Color{70, 72, 120, 255} +NAV_TEXT :: rl.Color{168, 168, 188, 255} +NAV_ACTIVE_BG :: ACCENT +NAV_ACTIVE_TEXT :: TEXT_BRIGHT +NAV_ACTIVE_BAR :: rl.Color{180, 182, 255, 255} + +// ── Input Fields ───────────────────────────────────────────────────────── +INPUT_BG :: rl.Color{16, 16, 24, 255} +INPUT_BORDER :: rl.Color{40, 40, 54, 255} +INPUT_FOCUS_BG :: rl.Color{20, 20, 30, 255} +INPUT_FOCUS_BORDER :: ACCENT +INPUT_FOCUS_RING :: ACCENT_GLOW +INPUT_TEXT :: TEXT_PRIMARY +INPUT_TEXT_FOCUS :: TEXT_BRIGHT + +// ── Chips & Pills ──────────────────────────────────────────────────────── +PILL_BG :: rl.Color{28, 28, 38, 255} +PILL_BORDER :: rl.Color{44, 44, 58, 255} +PILL_TEXT :: TEXT_SECONDARY + +PILL_ACCENT_BG :: ACCENT_SURFACE +PILL_ACCENT_BORDER :: ACCENT_MUTED +PILL_ACCENT_TEXT :: rl.Color{180, 182, 255, 255} + +CHIP_BG :: rl.Color{28, 28, 38, 255} +CHIP_BORDER :: rl.Color{44, 44, 58, 255} +CHIP_TEXT :: TEXT_SECONDARY + +CHIP_ACCENT_BG :: ACCENT_SURFACE +CHIP_ACCENT_BORDER :: ACCENT_MUTED +CHIP_ACCENT_TEXT :: PILL_ACCENT_TEXT + +// ── Status Badges ──────────────────────────────────────────────────────── +BADGE_OK_BG :: SUCCESS_BG +BADGE_OK_BORDER :: SUCCESS_BORDER +BADGE_OK_TEXT :: SUCCESS_TEXT +BADGE_BAD_BG :: ERROR_BG +BADGE_BAD_BORDER :: ERROR_BORDER +BADGE_BAD_TEXT :: ERROR_TEXT + +// ── Readiness Chips ────────────────────────────────────────────────────── +READY_BG :: SUCCESS_BG +READY_BORDER :: SUCCESS_BORDER +READY_TEXT :: SUCCESS_TEXT +UNREADY_BG :: rl.Color{28, 28, 38, 255} +UNREADY_BORDER :: rl.Color{44, 44, 58, 255} +UNREADY_TEXT :: TEXT_TERTIARY + +// ── Progress Bar ───────────────────────────────────────────────────────── +PROGRESS_TRACK :: rl.Color{28, 28, 40, 255} +PROGRESS_FILL :: ACCENT + +// ── Toast ──────────────────────────────────────────────────────────────── +TOAST_SUCCESS :: rl.Color{28, 120, 80, 235} +TOAST_WARNING :: rl.Color{140, 100, 30, 235} +TOAST_ERROR :: rl.Color{150, 50, 50, 235} +TOAST_BORDER :: rl.Color{255, 255, 255, 40} +TOAST_SHADOW :: rl.Color{0, 0, 0, 60} + +// ── Action Log ─────────────────────────────────────────────────────────── +LOG_ROW_ALT :: rl.Color{22, 22, 30, 255} +LOG_TEXT :: rl.Color{158, 158, 178, 255} + +// ── Section Titles ─────────────────────────────────────────────────────── +SECTION_TITLE_COLOR :: rl.Color{148, 150, 210, 255} +SECTION_UNDERLINE :: rl.Color{44, 44, 60, 255} + +// ── Screen Summary ─────────────────────────────────────────────────────── +SUMMARY_TITLE :: rl.Color{170, 172, 230, 255} +SUMMARY_ACCENT :: rl.Color{99, 140, 220, 255} +SUMMARY_HINT :: rl.Color{120, 90, 200, 255} +SUMMARY_SUBLINE :: rl.Color{128, 128, 148, 255} +SUMMARY_DIM :: rl.Color{98, 98, 118, 255} + +// ── Pipeline Stepper ───────────────────────────────────────────────────── +STEP_DONE_FILL :: SUCCESS +STEP_DONE_BORDER :: SUCCESS_BORDER +STEP_TODO_FILL :: rl.Color{36, 36, 48, 255} +STEP_TODO_BORDER :: rl.Color{52, 52, 68, 255} +STEP_LINE_DONE :: rl.Color{40, 100, 74, 255} +STEP_LINE_TODO :: rl.Color{40, 40, 52, 255} +STEP_LABEL_DONE :: SUCCESS_TEXT +STEP_LABEL_TODO :: TEXT_TERTIARY + +// ── Help Overlay ───────────────────────────────────────────────────────── +HELP_TITLE :: TEXT_BRIGHT +HELP_SECTION :: rl.Color{130, 132, 210, 255} +HELP_LINE :: TEXT_SECONDARY +HELP_CLOSE :: rl.Color{170, 148, 240, 255} + +// ── Confirm Overlay ────────────────────────────────────────────────────── +CONFIRM_ACCENT :: ACCENT +CONFIRM_TITLE :: TEXT_BRIGHT +CONFIRM_BODY :: TEXT_SECONDARY +CONFIRM_HINT :: rl.Color{170, 148, 240, 255} + +// ── Sidebar Shortcuts ──────────────────────────────────────────────────── +SIDEBAR_TITLE :: rl.Color{130, 132, 200, 255} +SIDEBAR_TEXT :: TEXT_TERTIARY +SIDEBAR_FOOTER :: rl.Color{80, 80, 100, 255} + +// ── Brand ──────────────────────────────────────────────────────────────── +BRAND_TITLE :: TEXT_BRIGHT +BRAND_SUBTITLE :: TEXT_TERTIARY + +// ── Roundness Constants ────────────────────────────────────────────────── +RADIUS_CARD :: f32(0.14) +RADIUS_BUTTON :: f32(0.32) +RADIUS_PILL :: f32(0.50) +RADIUS_INPUT :: f32(0.24) +RADIUS_NAV :: f32(0.28) +RADIUS_CHIP :: f32(0.42) +RADIUS_BADGE :: f32(0.42) +RADIUS_TOAST :: f32(0.40) +RADIUS_BAR :: f32(0.60) + +// ── Recommended Halo ───────────────────────────────────────────────────── +RECOMMEND_HALO_FILL :: rl.Color{50, 50, 100, 255} +RECOMMEND_HALO_BORDER :: rl.Color{120, 122, 248, 255} + +// ── DeepSeek key missing ───────────────────────────────────────────────── +KEY_MISSING_COLOR :: ERROR diff --git a/odin/src/gui/types.odin b/odin/src/gui/types.odin new file mode 100644 index 0000000..5d64405 --- /dev/null +++ b/odin/src/gui/types.odin @@ -0,0 +1,17 @@ +package gui + +Summary_View_Options :: struct { + script_show_all: bool, + script_desc: bool, + script_page_cursor: int, + panel_cursor: int, + layout_show_all: bool, + layout_desc: bool, + layout_page_cursor: int, +} + +Pending_Confirm_Action :: enum { + None, + Reset_Project, + Open_Project, +} diff --git a/odin/src/gui/widgets.odin b/odin/src/gui/widgets.odin new file mode 100644 index 0000000..c2eb67c --- /dev/null +++ b/odin/src/gui/widgets.odin @@ -0,0 +1,76 @@ +package gui + +import rl "vendor:raylib" + +draw_card :: proc(rec: rl.Rectangle) { + rl.DrawRectangleRounded(rec, RADIUS_CARD, 8, BG_CARD) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_CARD, 8, 1.0, BORDER_CARD) +} + +draw_subtle_strip :: proc(rec: rl.Rectangle) { + rl.DrawRectangleRounded(rec, 0.20, 8, BG_STRIP) + rl.DrawRectangleRoundedLinesEx(rec, 0.20, 8, 1.0, BORDER_SUBTLE) +} + +draw_hint_pill :: proc(rec: rl.Rectangle, label: string, accent: bool) { + bg := PILL_BG + border := PILL_BORDER + fg := PILL_TEXT + if accent { + bg = PILL_ACCENT_BG + border = PILL_ACCENT_BORDER + fg = PILL_ACCENT_TEXT + } + rl.DrawRectangleRounded(rec, RADIUS_PILL, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_PILL, 8, 1.0, border) + draw_text_fitted(label, i32(rec.x)+8, i32(rec.y)+4, 13, int(rec.width)-16, 7, fg) +} + +draw_topbar_chip :: proc(rec: rl.Rectangle, label: string, accent: bool) { + bg := CHIP_BG + border := CHIP_BORDER + fg := CHIP_TEXT + if accent { + bg = CHIP_ACCENT_BG + border = CHIP_ACCENT_BORDER + fg = CHIP_ACCENT_TEXT + } + rl.DrawRectangleRounded(rec, RADIUS_CHIP, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_CHIP, 8, 1.0, border) + draw_text_fitted(label, i32(rec.x)+8, i32(rec.y)+4, 14, int(rec.width)-16, 8, fg) +} + +draw_status_badge :: proc(rec: rl.Rectangle, label: string, ok: bool) { + bg := BADGE_BAD_BG + border := BADGE_BAD_BORDER + fg := BADGE_BAD_TEXT + if ok { + bg = BADGE_OK_BG + border = BADGE_OK_BORDER + fg = BADGE_OK_TEXT + } + rl.DrawRectangleRounded(rec, RADIUS_BADGE, 8, bg) + rl.DrawRectangleRoundedLinesEx(rec, RADIUS_BADGE, 8, 1.0, border) + draw_text_fitted(label, i32(rec.x)+8, i32(rec.y)+4, 13, int(rec.width)-16, 7, fg) +} + +draw_section_title :: proc(x, y: i32, label: string) { + draw_text_fitted(label, x, y, 17, 180, 8, SECTION_TITLE_COLOR) + rl.DrawLine(x, y+20, x+180, y+20, SECTION_UNDERLINE) +} + +draw_summary_line :: proc(x, y: i32, text: string, c: rl.Color) { + fg := c + if int(c.r)+int(c.g)+int(c.b) < 260 { + fg = TEXT_PRIMARY + } + draw_text_fitted(text, x, y, 18, 438, 8, fg) +} + +draw_summary_subline :: proc(x, y: i32, text: string, c: rl.Color) { + fg := c + if int(c.r)+int(c.g)+int(c.b) < 260 { + fg = TEXT_SECONDARY + } + draw_text_fitted(text, x, y, 16, 438, 7, fg) +} diff --git a/odin/src/shared/config.odin b/odin/src/shared/config.odin new file mode 100644 index 0000000..67f6e67 --- /dev/null +++ b/odin/src/shared/config.odin @@ -0,0 +1,29 @@ +package shared + +import "core:os" + +Config :: struct { + deepseek_api_key: string, + deepseek_base_url: string, + fal_api_key: string, + project_root: string, +} + +load_config :: proc() -> Config { + cfg := Config{ + deepseek_api_key = os.get_env("DEEPSEEK_API_KEY", context.temp_allocator), + deepseek_base_url = os.get_env("DEEPSEEK_BASE_URL", context.temp_allocator), + fal_api_key = os.get_env("FAL_API_KEY", context.temp_allocator), + project_root = ".", + } + + if len(cfg.deepseek_base_url) == 0 { + cfg.deepseek_base_url = "https://api.deepseek.com" + } + + return cfg +} + +load_config_stub :: proc() -> Config { + return load_config() +} diff --git a/odin/src/shared/errors.odin b/odin/src/shared/errors.odin new file mode 100644 index 0000000..059f9ee --- /dev/null +++ b/odin/src/shared/errors.odin @@ -0,0 +1,60 @@ +package shared + +App_Error_Code :: enum { + None, + Config, + Network, + Rate_Limit, + Validation, + Generation, + Export, + Storage, +} + +App_Error :: struct { + code: App_Error_Code, + message: string, + recoverable: bool, +} + +ok :: proc() -> App_Error { + return App_Error{code = .None, message = "", recoverable = false} +} + +is_ok :: proc(err: App_Error) -> bool { + return err.code == .None +} + +new_error :: proc(code: App_Error_Code, message: string, recoverable: bool) -> App_Error { + return App_Error{code = code, message = message, recoverable = recoverable} +} + +config_error :: proc(message: string) -> App_Error { + return new_error(.Config, message, false) +} + +network_error :: proc(message: string) -> App_Error { + return new_error(.Network, message, true) +} + +rate_limit_error :: proc(message: string) -> App_Error { + return new_error(.Rate_Limit, message, true) +} + +validation_error :: proc(message: string) -> App_Error { + return new_error(.Validation, message, false) +} + +generation_error :: proc(message: string) -> App_Error { + return new_error(.Generation, message, true) +} + +should_retry :: proc(err: App_Error) -> bool { + if err.code == .None { + return false + } + if err.code == .Rate_Limit || err.code == .Network { + return true + } + return err.recoverable +} diff --git a/odin/src/ui/controller.odin b/odin/src/ui/controller.odin new file mode 100644 index 0000000..dc2f9f0 --- /dev/null +++ b/odin/src/ui/controller.odin @@ -0,0 +1,76 @@ +package ui + +import "../core" +import "../shared" + +App_Controller :: struct { + state: core.Comic_State, + active_screen: App_Screen, + jobs: Job_Manager, +} + +new_controller :: proc(state: core.Comic_State) -> App_Controller { + screen := screen_from_workflow(state.workflow.current_step) + return App_Controller{ + state = state, + active_screen = screen, + jobs = new_job_manager(), + } +} + +navigate_to_screen :: proc(c: ^App_Controller, target: App_Screen) -> shared.App_Error { + if !can_open_screen(c.state, target) { + return shared.new_error(.Validation, "screen blocked by workflow guards", false) + } + c.active_screen = target + return shared.ok() +} + +set_workflow_step :: proc(c: ^App_Controller, next: core.Workflow_Step) -> shared.App_Error { + curr := c.state.workflow.current_step + if !core.can_transition(curr, next) && curr != next { + return shared.new_error(.Validation, "invalid workflow transition", false) + } + core.set_workflow_step(&c.state, next) + c.active_screen = screen_from_workflow(next) + return shared.ok() +} + +start_background_job :: proc(c: ^App_Controller, t: Job_Type, message: string) -> int { + id := submit_job(&c.jobs, t, message) + c.state.workflow.is_generating = true + c.state.workflow.generation_progress = 0 + c.state.workflow.error_message = "" + return id +} + +set_generation_progress :: proc(c: ^App_Controller, progress: f32) { + c.state.workflow.generation_progress = progress +} + +finish_background_job :: proc(c: ^App_Controller, id: int, failed_message: string) -> shared.App_Error { + if len(failed_message) > 0 { + _ = mark_job_failed(&c.jobs, id, failed_message) + c.state.workflow.error_message = failed_message + c.state.workflow.is_generating = false + return shared.new_error(.Generation, failed_message, true) + } + + _ = mark_job_completed(&c.jobs, id) + if active_jobs_count(c.jobs) == 0 { + c.state.workflow.is_generating = false + c.state.workflow.generation_progress = 100 + } + return shared.ok() +} + +cancel_background_job :: proc(c: ^App_Controller, id: int) -> shared.App_Error { + err := request_job_cancel(&c.jobs, id) + if !shared.is_ok(err) { + return err + } + if active_jobs_count(c.jobs) == 0 { + c.state.workflow.is_generating = false + } + return shared.ok() +} diff --git a/odin/src/ui/dispose.odin b/odin/src/ui/dispose.odin new file mode 100644 index 0000000..0a759b0 --- /dev/null +++ b/odin/src/ui/dispose.odin @@ -0,0 +1,19 @@ +package ui + +import "../core" + +dispose_job_manager :: proc(m: ^Job_Manager) { + delete(m.jobs) + m.jobs = nil + m.next_id = 1 +} + +dispose_controller :: proc(c: ^App_Controller) { + dispose_job_manager(&c.jobs) + core.dispose_state(&c.state) +} + +dispose_controller_owned :: proc(c: ^App_Controller) { + dispose_job_manager(&c.jobs) + core.dispose_state_owned(&c.state) +} diff --git a/odin/src/ui/jobs.odin b/odin/src/ui/jobs.odin new file mode 100644 index 0000000..8a491a3 --- /dev/null +++ b/odin/src/ui/jobs.odin @@ -0,0 +1,105 @@ +package ui + +import "../shared" + +Job_Type :: enum { + Generate_Script, + Generate_Character, + Generate_Panel, + Export, +} + +Job_Status :: enum { + Queued, + Running, + Completed, + Failed, + Cancelled, +} + +Background_Job :: struct { + id: int, + type: Job_Type, + status: Job_Status, + message: string, + cancel_requested: bool, +} + +Job_Manager :: struct { + next_id: int, + jobs: [dynamic]Background_Job, +} + +new_job_manager :: proc() -> Job_Manager { + return Job_Manager{next_id = 1} +} + +submit_job :: proc(m: ^Job_Manager, t: Job_Type, message: string) -> int { + id := m.next_id + m.next_id += 1 + append(&m.jobs, Background_Job{id = id, type = t, status = .Queued, message = message}) + return id +} + +job_index_by_id :: proc(m: ^Job_Manager, id: int) -> int { + for j, i in m.jobs { + if j.id == id { + return i + } + } + return -1 +} + +mark_job_running :: proc(m: ^Job_Manager, id: int) -> shared.App_Error { + idx := job_index_by_id(m, id) + if idx < 0 { + return shared.new_error(.Generation, "job not found", true) + } + m.jobs[idx].status = .Running + return shared.ok() +} + +mark_job_completed :: proc(m: ^Job_Manager, id: int) -> shared.App_Error { + idx := job_index_by_id(m, id) + if idx < 0 { + return shared.new_error(.Generation, "job not found", true) + } + if m.jobs[idx].cancel_requested { + m.jobs[idx].status = .Cancelled + } else { + m.jobs[idx].status = .Completed + } + return shared.ok() +} + +mark_job_failed :: proc(m: ^Job_Manager, id: int, message: string) -> shared.App_Error { + idx := job_index_by_id(m, id) + if idx < 0 { + return shared.new_error(.Generation, "job not found", true) + } + m.jobs[idx].status = .Failed + m.jobs[idx].message = message + return shared.ok() +} + +request_job_cancel :: proc(m: ^Job_Manager, id: int) -> shared.App_Error { + idx := job_index_by_id(m, id) + if idx < 0 { + return shared.new_error(.Generation, "job not found", true) + } + m.jobs[idx].cancel_requested = true + if m.jobs[idx].status != .Completed && m.jobs[idx].status != .Failed { + m.jobs[idx].status = .Cancelled + } + return shared.ok() +} + +active_jobs_count :: proc(m: Job_Manager) -> int { + count := 0 + for j in m.jobs { + if j.status == .Queued || j.status == .Running { + count += 1 + } + } + return count +} diff --git a/odin/src/ui/navigation.odin b/odin/src/ui/navigation.odin new file mode 100644 index 0000000..f5164a7 --- /dev/null +++ b/odin/src/ui/navigation.odin @@ -0,0 +1,39 @@ +package ui + +import "../core" + +can_open_screen :: proc(state: core.Comic_State, target: App_Screen) -> bool { + switch target { + case .Story: + return true + case .Script: + return len(state.script.pages) > 0 + case .Characters: + return len(state.script.characters) > 0 + case .Panels: + return len(state.script.pages) > 0 && len(state.characters) > 0 + case .Layout: + return len(state.panel_images) > 0 + case .Bubbles: + return len(state.page_layouts) > 0 + case .Export: + return len(state.page_layouts) > 0 + case .Community: + return true + } + return false +} + +next_step_for_screen :: proc(screen: App_Screen) -> core.Workflow_Step { + switch screen { + case .Story: return .Story_Input + case .Script: return .Script_Review + case .Characters: return .Character_Setup + case .Panels: return .Generating_Panels + case .Layout: return .Layout + case .Bubbles: return .Speech_Bubbles + case .Export: return .Complete + case .Community: return .Complete + } + return .Story_Input +} diff --git a/odin/src/ui/runtime.odin b/odin/src/ui/runtime.odin new file mode 100644 index 0000000..4ffe4ac --- /dev/null +++ b/odin/src/ui/runtime.odin @@ -0,0 +1,60 @@ +package ui + +import "../core" +import "../shared" + +UI_Command_Kind :: enum { + Navigate, + Set_Workflow, + Start_Generate, + Set_Progress, + Complete_Job, + Fail_Job, + Cancel_Job, +} + +UI_Command :: struct { + kind: UI_Command_Kind, + screen: App_Screen, + workflow_step: core.Workflow_Step, + job_type: Job_Type, + job_id: int, + progress: f32, + message: string, +} + +UI_Runtime_Result :: struct { + job_id: int, + err: shared.App_Error, +} + +apply_command :: proc(c: ^App_Controller, cmd: UI_Command) -> UI_Runtime_Result { + res := UI_Runtime_Result{job_id = 0, err = shared.ok()} + switch cmd.kind { + case .Navigate: + res.err = navigate_to_screen(c, cmd.screen) + case .Set_Workflow: + res.err = set_workflow_step(c, cmd.workflow_step) + case .Start_Generate: + res.job_id = start_background_job(c, cmd.job_type, cmd.message) + case .Set_Progress: + set_generation_progress(c, cmd.progress) + case .Complete_Job: + res.err = finish_background_job(c, cmd.job_id, "") + case .Fail_Job: + res.err = finish_background_job(c, cmd.job_id, cmd.message) + case .Cancel_Job: + res.err = cancel_background_job(c, cmd.job_id) + } + return res +} + +apply_commands :: proc(c: ^App_Controller, cmds: []UI_Command) -> shared.App_Error { + for cmd in cmds { + res := apply_command(c, cmd) + if !shared.is_ok(res.err) { + return res.err + } + } + return shared.ok() +} diff --git a/odin/src/ui/screens.odin b/odin/src/ui/screens.odin new file mode 100644 index 0000000..30d6855 --- /dev/null +++ b/odin/src/ui/screens.odin @@ -0,0 +1,48 @@ +package ui + +import "../core" + +App_Screen :: enum { + Story, + Script, + Characters, + Panels, + Layout, + Bubbles, + Export, + Community, +} + +screen_from_workflow :: proc(step: core.Workflow_Step) -> App_Screen { + switch step { + case .Story_Input, .Generating_Script: + return .Story + case .Script_Review: + return .Script + case .Character_Setup: + return .Characters + case .Generating_Panels: + return .Panels + case .Layout: + return .Layout + case .Speech_Bubbles: + return .Bubbles + case .Complete: + return .Export + } + return .Story +} + +screen_name :: proc(s: App_Screen) -> string { + switch s { + case .Story: return "Story" + case .Script: return "Script" + case .Characters: return "Characters" + case .Panels: return "Panels" + case .Layout: return "Layout" + case .Bubbles: return "Speech" + case .Export: return "Export" + case .Community: return "Community" + } + return "Unknown" +} diff --git a/odin/src/ui/views.odin b/odin/src/ui/views.odin new file mode 100644 index 0000000..384d5cb --- /dev/null +++ b/odin/src/ui/views.odin @@ -0,0 +1,91 @@ +package ui + +import "core:fmt" +import "core:strings" +import "../core" + +render_header :: proc(c: App_Controller) -> string { + mode := "Casual" + if c.state.user_mode == .Professional { + mode = "Professional" + } + return fmt.aprintf("[comic-odin] screen=%s step=%v mode=%s", screen_name(c.active_screen), c.state.workflow.current_step, mode) +} + +render_progress :: proc(state: core.Comic_State) -> string { + if !state.workflow.is_generating { + return "idle" + } + return fmt.aprintf("generating %.0f%%", state.workflow.generation_progress) +} + +render_story_view :: proc(state: core.Comic_State) -> string { + idea := state.story_idea + if len(idea) == 0 { + idea = "(no story idea yet)" + } + return fmt.aprintf("Story\n- idea: %s\n- genre: %s\n- audience: %s", idea, state.story_genre, state.target_audience) +} + +render_script_view :: proc(state: core.Comic_State) -> string { + return fmt.aprintf("Script\n- title: %s\n- pages: %d\n- characters: %d", state.script.title, len(state.script.pages), len(state.script.characters)) +} + +render_characters_view :: proc(state: core.Comic_State) -> string { + return fmt.aprintf("Characters\n- count: %d", len(state.characters)) +} + +render_panels_view :: proc(state: core.Comic_State) -> string { + return fmt.aprintf("Panels\n- generated images: %d", len(state.panel_images)) +} + +render_layout_view :: proc(state: core.Comic_State) -> string { + return fmt.aprintf("Layout\n- pages: %d", len(state.page_layouts)) +} + +render_bubbles_view :: proc(state: core.Comic_State) -> string { + return fmt.aprintf("Speech\n- panels with bubbles: %d", len(state.speech_bubbles)) +} + +render_export_view :: proc(state: core.Comic_State) -> string { + return fmt.aprintf("Export\n- page layouts: %d\n- format: %v", len(state.page_layouts), state.export_format) +} + +render_screen_body :: proc(c: App_Controller) -> string { + switch c.active_screen { + case .Story: + return render_story_view(c.state) + case .Script: + return render_script_view(c.state) + case .Characters: + return render_characters_view(c.state) + case .Panels: + return render_panels_view(c.state) + case .Layout: + return render_layout_view(c.state) + case .Bubbles: + return render_bubbles_view(c.state) + case .Export: + return render_export_view(c.state) + case .Community: + return "Community\n- coming soon" + } + return "Unknown screen" +} + +render_status_bar :: proc(c: App_Controller) -> string { + status := render_progress(c.state) + if len(c.state.workflow.error_message) > 0 { + status = fmt.aprintf("error: %s", c.state.workflow.error_message) + } + return fmt.aprintf("jobs=%d | %s", active_jobs_count(c.jobs), status) +} + +render_app_to_string :: proc(c: App_Controller) -> string { + parts := [3]string{render_header(c), render_screen_body(c), render_status_bar(c)} + out := strings.join(parts[:], "\n\n", context.allocator) + for p in parts { + delete(p) + } + return out +} diff --git a/odin/tests/adapters_phase2.odin b/odin/tests/adapters_phase2.odin new file mode 100644 index 0000000..3372fab --- /dev/null +++ b/odin/tests/adapters_phase2.odin @@ -0,0 +1,103 @@ +package tests + +import "core:testing" +import "../src/adapters" +import "../src/core" +import "../src/shared" + +deepseek_calls: int + +phase2_deepseek_transport :: proc(cfg: shared.Config, request_json: string) -> (string, int, shared.App_Error) { + _ = cfg + _ = request_json + deepseek_calls += 1 + if deepseek_calls == 1 { + return "", 429, shared.ok() + } + return "{\"choices\":[{\"message\":{\"content\":\"{\\\"title\\\":\\\"Test\\\",\\\"synopsis\\\":\\\"A hero rises\\\",\\\"characters\\\":[{\\\"id\\\":\\\"char_001\\\",\\\"name\\\":\\\"Hero\\\",\\\"role\\\":\\\"protagonist\\\",\\\"description\\\":\\\"Determined\\\",\\\"firstAppearancePanel\\\":\\\"panel_001_001\\\"}],\\\"pages\\\":[{\\\"pageNumber\\\":1,\\\"layoutType\\\":\\\"grid\\\",\\\"panels\\\":[{\\\"panelId\\\":\\\"panel_001_001\\\",\\\"panelNumber\\\":1,\\\"shotType\\\":\\\"medium\\\",\\\"description\\\":\\\"Hero stands\\\",\\\"charactersPresent\\\":[\\\"char_001\\\"],\\\"dialogue\\\":[{\\\"speakerId\\\":\\\"char_001\\\",\\\"text\\\":\\\"Let's go!\\\",\\\"bubbleType\\\":\\\"normal\\\",\\\"emotion\\\":\\\"determined\\\"}],\\\"caption\\\":\\\"\\\",\\\"soundEffects\\\":[],\\\"transitionFromPrevious\\\":\\\"none\\\"}]}]}\"}}]}", 200, shared.ok() +} + +fal_calls: int + +phase2_fal_transport :: proc(cfg: shared.Config, endpoint, prompt: string, seed: i64) -> (string, int, shared.App_Error) { + _ = cfg + _ = endpoint + _ = prompt + _ = seed + fal_calls += 1 + if fal_calls == 1 { + return "", 0, shared.network_error("temporary network issue") + } + return "https://example.com/image.png", 200, shared.ok() +} + +@test +deepseek_retries_then_succeeds :: proc(t: ^testing.T) { + deepseek_calls = 0 + + cfg := shared.Config{ + deepseek_api_key = "test-key", + deepseek_base_url = "https://api.deepseek.com", + } + client := adapters.new_deepseek_client() + client.transport = phase2_deepseek_transport + client.max_retries = 3 + + opts := adapters.Generate_Script_Options{ + story_idea = "A hero rises", + genre = "action", + art_style = "manga", + num_pages = 4, + audience = "general", + } + + script, err := adapters.generate_comic_script(client, cfg, opts) + defer core.dispose_script_owned(&script) + testing.expect(t, shared.is_ok(err), "deepseek request should eventually succeed") + testing.expect(t, deepseek_calls == 2, "expected one retry before success") + testing.expect(t, len(script.pages) > 0, "generated script should contain pages") +} + +@test +fal_queue_enforces_cap :: proc(t: ^testing.T) { + q := adapters.new_fal_queue(1) + + first := adapters.try_acquire_slot(&q) + second := adapters.try_acquire_slot(&q) + adapters.release_slot(&q) + third := adapters.try_acquire_slot(&q) + + testing.expect(t, first, "first slot acquisition should succeed") + testing.expect(t, !second, "second slot acquisition should fail when saturated") + testing.expect(t, third, "slot acquisition should succeed after release") +} + +@test +fal_panel_generation_retries_network_error :: proc(t: ^testing.T) { + fal_calls = 0 + + cfg := shared.Config{fal_api_key = "test-key"} + q := adapters.new_fal_queue(2) + client := adapters.new_fal_client(&q) + client.transport = phase2_fal_transport + client.max_retries = 3 + + panel := core.Panel{panel_id = "panel_1", panel_number = 1, description = "Hero jumps over a gap"} + img, err := adapters.generate_panel_image(client, cfg, panel, nil, "manga", "proj_1") + defer delete(img.prompt) + + testing.expect(t, shared.is_ok(err), "fal panel generation should eventually succeed") + testing.expect(t, fal_calls == 2, "expected one retry for network error") + testing.expect(t, len(img.url) > 0, "image url should be set") +} + +@test +fal_typed_response_parsing :: proc(t: ^testing.T) { + body := "{\"images\":[{\"url\":\"https://example.com/a.png\",\"width\":1024,\"height\":1024}]}" + resp, err := adapters.fal_parse_response_body(body) + defer adapters.dispose_fal_response(&resp) + + testing.expect(t, shared.is_ok(err), "typed parse should succeed") + testing.expect(t, len(resp.images) == 1, "expected one image") + testing.expect(t, resp.images[0].url == "https://example.com/a.png", "expected parsed URL") +} diff --git a/odin/tests/app_cli_phase6.odin b/odin/tests/app_cli_phase6.odin new file mode 100644 index 0000000..7082421 --- /dev/null +++ b/odin/tests/app_cli_phase6.odin @@ -0,0 +1,526 @@ +package tests + +import "core:fmt" +import "core:os" +import "core:strings" +import "core:testing" +import app "../src/app" +import "../src/core" +import "../src/shared" +import "../src/ui" + +@test +cli_parse_commands :: proc(t: ^testing.T) { + c1 := app.parse_cli_command(nil) + testing.expect(t, c1.kind == .Demo, "no args should map to demo") + + a2 := [1]string{"status"} + c2 := app.parse_cli_command(a2[:]) + testing.expect(t, c2.kind == .Status, "status should parse") + + a3 := [2]string{"save", "x.json"} + c3 := app.parse_cli_command(a3[:]) + testing.expect(t, c3.kind == .Save, "save should parse") + testing.expect(t, c3.path == "x.json", "save path should parse") + + a4 := [1]string{"tui"} + c4 := app.parse_cli_command(a4[:]) + testing.expect(t, c4.kind == .Tui, "tui should parse") + + a5 := [1]string{"gui"} + c5 := app.parse_cli_command(a5[:]) + testing.expect(t, c5.kind == .Gui, "gui should parse") + + testing.expect(t, app.normalize_tui_command("q") == "quit", "q alias should expand") + testing.expect(t, app.normalize_tui_command("1") == "goto story", "1 alias should map to story") + testing.expect(t, app.normalize_tui_command("?") == "doctor", "? alias should map to doctor") + testing.expect(t, app.normalize_tui_command("r") == "ready", "r alias should map to ready") + testing.expect(t, app.normalize_tui_command("n") == "next", "n alias should map to next") + testing.expect(t, app.normalize_tui_command("p") == "plan", "p alias should map to plan") + testing.expect(t, app.normalize_tui_command("x") == "auto", "x alias should map to auto") + + pages, matched, perr := app.parse_generate_script_pages("generate script 6") + testing.expect(t, shared.is_ok(perr), "generate script pages parse should succeed") + testing.expect(t, matched, "generate script pages should match") + testing.expect(t, pages == 6, "generate script pages should parse value") + + local_pages, lmatched, lerr := app.parse_generate_script_local_pages("generate script local 3") + testing.expect(t, shared.is_ok(lerr), "generate script local parse should succeed") + testing.expect(t, lmatched, "generate script local should match") + testing.expect(t, local_pages == 3, "generate script local should parse value") + + page, pmatch, pperr := app.parse_generate_panels_page("generate panels page 2") + testing.expect(t, shared.is_ok(pperr), "generate panels page parse should succeed") + testing.expect(t, pmatch, "generate panels page should match") + testing.expect(t, page == 2, "generate panels page should parse value") + + lpage, lpmatch, lperr := app.parse_generate_panels_local_page("generate panels local page 2") + testing.expect(t, shared.is_ok(lperr), "generate panels local page parse should succeed") + testing.expect(t, lpmatch, "generate panels local page should match") + testing.expect(t, lpage == 2, "generate panels local page should parse value") + + fmt_kind, export_path, ematch, eerr := app.parse_export_command("export cbz ./out.cbz") + testing.expect(t, shared.is_ok(eerr), "export parse should succeed") + testing.expect(t, ematch, "export parse should match") + testing.expect(t, fmt_kind == .CBZ, "export format should parse") + testing.expect(t, export_path == "./out.cbz", "export path should parse") + + qfmt, qpath, qpages, qmatch, qerr := app.parse_quick_local_command("quick local pdf ./quick.pdf 3") + testing.expect(t, shared.is_ok(qerr), "quick local parse should succeed") + testing.expect(t, qmatch, "quick local parse should match") + testing.expect(t, qfmt == .PDF, "quick local format should parse") + testing.expect(t, qpath == "./quick.pdf", "quick local path should parse") + testing.expect(t, qpages == 3, "quick local pages should parse") + + proj, qafmt, qaout, qapages, qamatch, qaerr := app.parse_quick_local_all_command("quick local all ./p.comic.json cbz ./q.cbz 4") + testing.expect(t, shared.is_ok(qaerr), "quick local all parse should succeed") + testing.expect(t, qamatch, "quick local all parse should match") + testing.expect(t, proj == "./p.comic.json", "quick local all project path should parse") + testing.expect(t, qafmt == .CBZ, "quick local all format should parse") + testing.expect(t, qaout == "./q.cbz", "quick local all export path should parse") + testing.expect(t, qapages == 4, "quick local all pages should parse") + + aafmt, aapath, aamatch, aaerr := app.parse_auto_all_command("auto all pdf ./auto.pdf") + testing.expect(t, shared.is_ok(aaerr), "auto all parse should succeed") + testing.expect(t, aamatch, "auto all parse should match") + testing.expect(t, aafmt == .PDF, "auto all format should parse") + testing.expect(t, aapath == "./auto.pdf", "auto all path should parse") + + aalfmt, aalpath, aalpages, aalmatch, aalerr := app.parse_auto_all_local_command("auto all local cbz ./auto.cbz 3") + testing.expect(t, shared.is_ok(aalerr), "auto all local parse should succeed") + testing.expect(t, aalmatch, "auto all local parse should match") + testing.expect(t, aalfmt == .CBZ, "auto all local format should parse") + testing.expect(t, aalpath == "./auto.cbz", "auto all local path should parse") + testing.expect(t, aalpages == 3, "auto all local pages should parse") +} + +@test +cli_save_and_load_roundtrip :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-cli-*", context.temp_allocator) + if terr != nil { + testing.expect(t, false, "failed to create temp dir") + return + } + defer os.remove_all(tmp_dir) + + path := fmt.aprintf("%s/project.comic.json", tmp_dir) + defer delete(path) + + state := core.new_initial_state() + state.story_idea = "cli story" + + save_out, save_err := app.run_cli_command(app.Parsed_CLI_Command{kind = .Save, path = path}, &state) + testing.expect(t, shared.is_ok(save_err), "save command should succeed") + testing.expect(t, strings.contains(save_out, "Saved project"), "save output should mention save") + delete(save_out) + + state.story_idea = "changed" + load_out, load_err := app.run_cli_command(app.Parsed_CLI_Command{kind = .Load, path = path}, &state) + testing.expect(t, shared.is_ok(load_err), "load command should succeed") + testing.expect(t, strings.contains(load_out, "Loaded project"), "load output should mention load") + testing.expect(t, state.story_idea == "cli story", "load should restore story") + delete(load_out) + + core.dispose_state_owned(&state) +} + +@test +cli_tui_generate_script_requires_key :: proc(t: ^testing.T) { + prev := os.get_env("DEEPSEEK_API_KEY", context.temp_allocator) + defer { + if len(prev) > 0 { + _ = os.set_env("DEEPSEEK_API_KEY", prev) + } else { + _ = os.unset_env("DEEPSEEK_API_KEY") + } + } + _ = os.unset_env("DEEPSEEK_API_KEY") + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + last_job := 0 + _, out, err := app.run_tui_command(&controller, "generate script 6", &last_job) + testing.expect(t, !shared.is_ok(err), "generate script should fail without configured key") + testing.expect(t, len(out) == 0, "error path should not return output") +} + +@test +cli_tui_generate_panels_page_requires_script :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + last_job := 0 + _, out, err := app.run_tui_command(&controller, "generate panels page 2", &last_job) + testing.expect(t, !shared.is_ok(err), "generate panels page should fail with empty script") + testing.expect(t, len(out) == 0, "error path should not return output") +} + +@test +cli_tui_generate_script_local_succeeds_without_key :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + last_job := 0 + _, out, err := app.run_tui_command(&controller, "generate script local 2", &last_job) + testing.expect(t, shared.is_ok(err), "generate script local should succeed without key") + testing.expect(t, strings.contains(out, "local script generated"), "local generation should return success message") + delete(out) + testing.expect(t, len(controller.state.script.pages) == 2, "local script should create requested pages") +} + +@test +cli_tui_layout_and_export_require_data :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + last_job := 0 + _, out1, err1 := app.run_tui_command(&controller, "layout auto", &last_job) + testing.expect(t, !shared.is_ok(err1), "layout auto should fail without script") + testing.expect(t, len(out1) == 0, "layout error path should not return output") + + _, out2, err2 := app.run_tui_command(&controller, "export pdf ./tmp.pdf", &last_job) + testing.expect(t, !shared.is_ok(err2), "export should fail without layouts") + testing.expect(t, len(out2) == 0, "export error path should not return output") +} + +@test +cli_tui_local_panels_and_export_pdf :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-cli-local-*", context.temp_allocator) + if terr != nil { + testing.expect(t, false, "failed to create temp dir") + return + } + defer os.remove_all(tmp_dir) + + out_pdf := fmt.aprintf("%s/local.pdf", tmp_dir) + defer delete(out_pdf) + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer { + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = nil + ui.dispose_controller(&controller) + } + + last_job := 0 + _, out1, err1 := app.run_tui_command(&controller, "generate script local 2", &last_job) + testing.expect(t, shared.is_ok(err1), "local script should succeed") + delete(out1) + + _, out2, err2 := app.run_tui_command(&controller, "generate panels local", &last_job) + testing.expect(t, shared.is_ok(err2), "local panels should succeed") + delete(out2) + + _, out3, err3 := app.run_tui_command(&controller, "layout auto", &last_job) + testing.expect(t, shared.is_ok(err3), "layout auto should succeed") + delete(out3) + + export_cmd := fmt.aprintf("export pdf %s", out_pdf) + defer delete(export_cmd) + _, out4, err4 := app.run_tui_command(&controller, export_cmd, &last_job) + testing.expect(t, shared.is_ok(err4), "export should succeed") + delete(out4) + testing.expect(t, os.exists(out_pdf), "exported pdf should exist") +} + +@test +cli_tui_quick_local_export_pdf :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-cli-quick-*", context.temp_allocator) + if terr != nil { + testing.expect(t, false, "failed to create temp dir") + return + } + defer os.remove_all(tmp_dir) + + out_pdf := fmt.aprintf("%s/quick.pdf", tmp_dir) + defer delete(out_pdf) + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer { + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = nil + ui.dispose_controller(&controller) + } + + cmd := fmt.aprintf("quick local pdf %s 3", out_pdf) + defer delete(cmd) + last_job := 0 + _, out, err := app.run_tui_command(&controller, cmd, &last_job) + testing.expect(t, shared.is_ok(err), "quick local should succeed") + testing.expect(t, strings.contains(out, "quick local exported"), "quick local should return success output") + delete(out) + testing.expect(t, len(controller.state.script.pages) == 3, "quick local should build requested page count") + testing.expect(t, os.exists(out_pdf), "quick-local exported pdf should exist") +} + +@test +cli_tui_quick_local_all_saves_and_exports :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-cli-quick-all-*", context.temp_allocator) + if terr != nil { + testing.expect(t, false, "failed to create temp dir") + return + } + defer os.remove_all(tmp_dir) + + project_path := fmt.aprintf("%s/project.comic.json", tmp_dir) + export_path := fmt.aprintf("%s/quick.cbz", tmp_dir) + defer delete(project_path) + defer delete(export_path) + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer { + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = nil + ui.dispose_controller(&controller) + } + + cmd := fmt.aprintf("quick local all %s cbz %s 2", project_path, export_path) + defer delete(cmd) + last_job := 0 + _, out, err := app.run_tui_command(&controller, cmd, &last_job) + testing.expect(t, shared.is_ok(err), "quick local all should succeed") + testing.expect(t, strings.contains(out, "quick local all saved"), "quick local all should return success output") + delete(out) + testing.expect(t, os.exists(project_path), "quick local all should save project") + testing.expect(t, os.exists(export_path), "quick local all should export artifact") +} + +@test +cli_tui_doctor_reports_status :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + last_job := 0 + _, out, err := app.run_tui_command(&controller, "doctor", &last_job) + testing.expect(t, shared.is_ok(err), "doctor should succeed") + testing.expect(t, strings.contains(out, "Doctor"), "doctor output should include header") + testing.expect(t, strings.contains(out, "deepseek key:"), "doctor output should include deepseek key status") + testing.expect(t, strings.contains(out, "curl:"), "doctor output should include curl status") + delete(out) +} + +@test +cli_tui_ready_reports_status :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + last_job := 0 + _, out, err := app.run_tui_command(&controller, "ready", &last_job) + testing.expect(t, shared.is_ok(err), "ready should succeed") + testing.expect(t, strings.contains(out, "Ready"), "ready output should include header") + testing.expect(t, strings.contains(out, "script generated:"), "ready output should include script status") + testing.expect(t, strings.contains(out, "export ready:"), "ready output should include export status") + delete(out) +} + +@test +cli_tui_next_recommends_action :: proc(t: ^testing.T) { + prev_deep := os.get_env("DEEPSEEK_API_KEY", context.temp_allocator) + prev_fal := os.get_env("FAL_API_KEY", context.temp_allocator) + defer { + if len(prev_deep) > 0 { _ = os.set_env("DEEPSEEK_API_KEY", prev_deep) } else { _ = os.unset_env("DEEPSEEK_API_KEY") } + if len(prev_fal) > 0 { _ = os.set_env("FAL_API_KEY", prev_fal) } else { _ = os.unset_env("FAL_API_KEY") } + } + _ = os.unset_env("DEEPSEEK_API_KEY") + _ = os.unset_env("FAL_API_KEY") + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + last_job := 0 + + _, out1, err1 := app.run_tui_command(&controller, "next", &last_job) + testing.expect(t, shared.is_ok(err1), "next should succeed") + testing.expect(t, strings.contains(out1, "generate script local"), "next should recommend local script generation") + delete(out1) + + _, out2, err2 := app.run_tui_command(&controller, "generate script local 1", &last_job) + testing.expect(t, shared.is_ok(err2), "generate script local should succeed") + delete(out2) + + _, out3, err3 := app.run_tui_command(&controller, "next", &last_job) + testing.expect(t, shared.is_ok(err3), "next should succeed after script") + testing.expect(t, strings.contains(out3, "generate panels local"), "next should recommend local panel generation") + delete(out3) +} + +@test +cli_tui_plan_reports_progress :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + last_job := 0 + + _, out1, err1 := app.run_tui_command(&controller, "plan", &last_job) + testing.expect(t, shared.is_ok(err1), "plan should succeed") + testing.expect(t, strings.contains(out1, "Plan"), "plan output should include header") + testing.expect(t, strings.contains(out1, "1) Script"), "plan output should include script step") + delete(out1) + + _, out2, err2 := app.run_tui_command(&controller, "generate script local 1", &last_job) + testing.expect(t, shared.is_ok(err2), "local script should succeed") + delete(out2) + + _, out3, err3 := app.run_tui_command(&controller, "plan", &last_job) + testing.expect(t, shared.is_ok(err3), "plan should succeed after script") + testing.expect(t, strings.contains(out3, "next:"), "plan output should include next hint") + delete(out3) +} + +@test +cli_tui_auto_runs_next_step :: proc(t: ^testing.T) { + prev_deep := os.get_env("DEEPSEEK_API_KEY", context.temp_allocator) + prev_fal := os.get_env("FAL_API_KEY", context.temp_allocator) + defer { + if len(prev_deep) > 0 { _ = os.set_env("DEEPSEEK_API_KEY", prev_deep) } else { _ = os.unset_env("DEEPSEEK_API_KEY") } + if len(prev_fal) > 0 { _ = os.set_env("FAL_API_KEY", prev_fal) } else { _ = os.unset_env("FAL_API_KEY") } + } + _ = os.unset_env("DEEPSEEK_API_KEY") + _ = os.unset_env("FAL_API_KEY") + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + last_job := 0 + + _, out, err := app.run_tui_command(&controller, "auto", &last_job) + testing.expect(t, shared.is_ok(err), "auto should succeed") + testing.expect(t, strings.contains(out, "auto ran:"), "auto output should include executed command") + delete(out) + testing.expect(t, len(controller.state.script.pages) > 0, "auto should progress by generating script") +} + +@test +cli_tui_auto_all_runs_to_export :: proc(t: ^testing.T) { + prev_deep := os.get_env("DEEPSEEK_API_KEY", context.temp_allocator) + prev_fal := os.get_env("FAL_API_KEY", context.temp_allocator) + defer { + if len(prev_deep) > 0 { _ = os.set_env("DEEPSEEK_API_KEY", prev_deep) } else { _ = os.unset_env("DEEPSEEK_API_KEY") } + if len(prev_fal) > 0 { _ = os.set_env("FAL_API_KEY", prev_fal) } else { _ = os.unset_env("FAL_API_KEY") } + } + _ = os.unset_env("DEEPSEEK_API_KEY") + _ = os.unset_env("FAL_API_KEY") + + tmp_dir, terr := os.make_directory_temp("", "comic-cli-auto-all-*", context.temp_allocator) + if terr != nil { + testing.expect(t, false, "failed to create temp dir") + return + } + defer os.remove_all(tmp_dir) + out_pdf := fmt.aprintf("%s/auto_all.pdf", tmp_dir) + defer delete(out_pdf) + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer { + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = nil + ui.dispose_controller(&controller) + } + last_job := 0 + + cmd := fmt.aprintf("auto all pdf %s", out_pdf) + defer delete(cmd) + _, out, err := app.run_tui_command(&controller, cmd, &last_job) + testing.expect(t, shared.is_ok(err), "auto all should succeed") + testing.expect(t, strings.contains(out, "auto all exported"), "auto all output should include success") + delete(out) + testing.expect(t, os.exists(out_pdf), "auto all should produce export file") +} + +@test +cli_tui_auto_all_local_runs_to_export :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-cli-auto-all-local-*", context.temp_allocator) + if terr != nil { + testing.expect(t, false, "failed to create temp dir") + return + } + defer os.remove_all(tmp_dir) + out_cbz := fmt.aprintf("%s/auto_all_local.cbz", tmp_dir) + defer delete(out_cbz) + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer { + for _, img in controller.state.panel_images { + delete(img.url) + delete(img.prompt) + } + delete(controller.state.panel_images) + controller.state.panel_images = nil + ui.dispose_controller(&controller) + } + last_job := 0 + + cmd := fmt.aprintf("auto all local cbz %s 2", out_cbz) + defer delete(cmd) + _, out, err := app.run_tui_command(&controller, cmd, &last_job) + testing.expect(t, shared.is_ok(err), "auto all local should succeed") + testing.expect(t, strings.contains(out, "auto all local exported"), "auto all local output should include success") + delete(out) + testing.expect(t, os.exists(out_cbz), "auto all local should produce export file") +} + +@test +cli_tui_open_and_saveas_aliases :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-cli-alias-*", context.temp_allocator) + if terr != nil { + testing.expect(t, false, "failed to create temp dir") + return + } + defer os.remove_all(tmp_dir) + + path := fmt.aprintf("%s/alias.comic.json", tmp_dir) + defer delete(path) + + state := core.new_initial_state() + controller := ui.new_controller(state) + + controller.state.story_idea = "alias story" + last_job := 0 + save_cmd := fmt.aprintf("saveas %s", path) + defer delete(save_cmd) + _, out1, err1 := app.run_tui_command(&controller, save_cmd, &last_job) + testing.expect(t, shared.is_ok(err1), "saveas should succeed") + delete(out1) + + controller.state.story_idea = "changed" + open_cmd := fmt.aprintf("open %s", path) + defer delete(open_cmd) + _, out2, err2 := app.run_tui_command(&controller, open_cmd, &last_job) + testing.expect(t, shared.is_ok(err2), "open should succeed") + delete(out2) + testing.expect(t, controller.state.story_idea == "alias story", "open should restore saved state") + + if shared.is_ok(err2) { + ui.dispose_controller_owned(&controller) + } else { + ui.dispose_controller(&controller) + } +} diff --git a/odin/tests/core_phase1.odin b/odin/tests/core_phase1.odin new file mode 100644 index 0000000..3ac139e --- /dev/null +++ b/odin/tests/core_phase1.odin @@ -0,0 +1,84 @@ +package tests + +import "core:testing" +import "../src/core" + +@test +seed_is_deterministic :: proc(t: ^testing.T) { + a := core.generate_panel_seed("proj_a", 1, 2, "panel_001") + b := core.generate_panel_seed("proj_a", 1, 2, "panel_001") + c := core.generate_panel_seed("proj_a", 1, 3, "panel_001") + + testing.expect(t, a == b, "seed should be stable for same input") + testing.expect(t, a != c, "seed should change for different panel number") +} + +@test +layout_packs_panels_into_pages :: proc(t: ^testing.T) { + panels_arr := [5]core.Panel{ + {panel_id = "p1", panel_number = 1}, + {panel_id = "p2", panel_number = 2}, + {panel_id = "p3", panel_number = 3}, + {panel_id = "p4", panel_number = 4}, + {panel_id = "p5", panel_number = 5}, + } + layouts := core.auto_layout_pages(panels_arr[:], .A4, "action", "grid-2x2") + defer { + for l in layouts { + delete(l.panels) + } + delete(layouts) + } + + testing.expect(t, len(layouts) == 1, "5 panels should fit action-dynamic in a single page") + testing.expect(t, layouts[0].pattern_id == "action-dynamic", "expected smallest suitable action pattern") + testing.expect(t, len(layouts[0].panels) == 5, "single page should contain all panels") +} + +@test +bubble_autoplacement_creates_entries :: proc(t: ^testing.T) { + dialogue_arr := [1]core.Dialogue{ + {speaker_id = "char_1", text = "Hello there", bubble_type = .Normal, emotion = "neutral"}, + } + chars_arr := [1]string{"char_1"} + panel := core.Panel{ + panel_id = "panel_1", + dialogue = dialogue_arr[:], + characters_present = chars_arr[:], + caption = "Narration line", + } + + bubbles := core.auto_place_panel_bubbles(panel, 800, 600) + defer { + for b in bubbles { + delete(b.id) + } + delete(bubbles) + } + testing.expect(t, len(bubbles) == 2, "dialogue + caption should produce 2 bubbles") +} + +@test +script_normalization_fills_ids :: proc(t: ^testing.T) { + panels_arr := [1]core.Panel{{description = "A scene"}} + pages_arr := [1]core.Page{{panels = panels_arr[:]}} + chars_arr := [1]core.Character{{name = "Hero"}} + + raw := core.Comic_Script{ + title = "", + synopsis = "", + characters = chars_arr[:], + pages = pages_arr[:], + } + + norm := core.normalize_script(raw) + defer { + delete(norm.title) + delete(norm.synopsis) + delete(norm.characters[0].id) + delete(norm.pages[0].panels[0].panel_id) + } + testing.expect(t, len(norm.title) > 0, "title should be filled") + testing.expect(t, len(norm.characters[0].id) > 0, "character id should be filled") + testing.expect(t, len(norm.pages[0].panels[0].panel_id) > 0, "panel id should be filled") +} diff --git a/odin/tests/core_smoke.odin b/odin/tests/core_smoke.odin new file mode 100644 index 0000000..f0aa2da --- /dev/null +++ b/odin/tests/core_smoke.odin @@ -0,0 +1,10 @@ +package tests + +import "core:testing" +import "../src/core" + +@test +state_initial_step :: proc(t: ^testing.T) { + state := core.new_initial_state() + testing.expect(t, state.workflow.current_step == .Story_Input, "expected Story_Input initial step") +} diff --git a/odin/tests/export_phase3.odin b/odin/tests/export_phase3.odin new file mode 100644 index 0000000..cff95d0 --- /dev/null +++ b/odin/tests/export_phase3.odin @@ -0,0 +1,96 @@ +package tests + +import "core:fmt" +import "core:os" +import "core:strings" +import "core:testing" +import "../src/adapters" +import "../src/core" +import "../src/shared" + +join2 :: proc(a, b: string) -> string { + return fmt.aprintf("%s/%s", a, b) +} + +dispose_export_fixture :: proc(layouts: ^[]core.Page_Layout, panel_images: ^map[string]core.Panel_Image) { + for _, img in panel_images^ { + delete(img.url) + } + delete(panel_images^) + for l in layouts^ { + delete(l.panels) + } + delete(layouts^) +} + +setup_export_fixture :: proc(t: ^testing.T) -> (tmp_dir: string, layouts: []core.Page_Layout, panel_images: map[string]core.Panel_Image) { + err: os.Error + tmp_dir, err = os.make_directory_temp("", "comic-export-test-*", context.temp_allocator) + if err != nil { + testing.expect(t, false, "failed to create temp dir") + return "", nil, nil + } + + src_img := join2(tmp_dir, "src_panel.png") + img_bytes := []byte{137, 80, 78, 71, 13, 10, 26, 10} + werr := os.write_entire_file(src_img, img_bytes) + testing.expect(t, werr == nil, "failed to write source image") + + panel_id := "panel_1" + layout_panel := core.Page_Layout_Panel{panel_id = panel_id, panel_number = 1, layout_cell = core.Layout_Cell{x = 0, y = 0, w = 1, h = 1}} + layout_panels_dyn: [dynamic]core.Page_Layout_Panel + append(&layout_panels_dyn, layout_panel) + + layout := core.Page_Layout{page_number = 1, pattern_id = "grid-2x2", panels = layout_panels_dyn[:], width = 1000, height = 1400} + layouts_dyn: [dynamic]core.Page_Layout + append(&layouts_dyn, layout) + + panel_images = make(map[string]core.Panel_Image) + panel_images[panel_id] = core.Panel_Image{url = fmt.aprintf("file://%s", src_img), width = 100, height = 100, seed = 1, prompt = ""} + delete(src_img) + + return tmp_dir, layouts_dyn[:], panel_images +} + +@test +export_png_and_cbz_create_files :: proc(t: ^testing.T) { + tmp_dir, layouts, panel_images := setup_export_fixture(t) + defer os.remove_all(tmp_dir) + defer dispose_export_fixture(&layouts, &panel_images) + + png_out := join2(tmp_dir, "out_png.zip") + defer delete(png_out) + cbz_out := join2(tmp_dir, "out_cbz.cbz") + defer delete(cbz_out) + + png_err := adapters.export_comic(png_out, layouts, panel_images, adapters.Export_Options{format = .PNG, page_size = .A4, dpi = 300, quality = 90}) + testing.expect(t, shared.is_ok(png_err), "png export failed") + testing.expect(t, os.exists(png_out), "png archive output should exist") + png_data, prerr := os.read_entire_file(png_out, context.temp_allocator) + testing.expect(t, prerr == nil, "failed reading png zip") + testing.expect(t, len(png_data) >= 2 && string(png_data[:2]) == "PK", "png export should be a zip archive") + + cbz_err := adapters.export_comic(cbz_out, layouts, panel_images, adapters.Export_Options{format = .CBZ, page_size = .A4, dpi = 300, quality = 90}) + testing.expect(t, shared.is_ok(cbz_err), "cbz export failed") + testing.expect(t, os.exists(cbz_out), "cbz output should exist") + cbz_data, crerr := os.read_entire_file(cbz_out, context.temp_allocator) + testing.expect(t, crerr == nil, "failed reading cbz") + testing.expect(t, len(cbz_data) >= 2 && string(cbz_data[:2]) == "PK", "cbz should be a zip archive") +} + +@test +export_pdf_creates_pdf_file :: proc(t: ^testing.T) { + tmp_dir, layouts, panel_images := setup_export_fixture(t) + defer os.remove_all(tmp_dir) + defer dispose_export_fixture(&layouts, &panel_images) + + pdf_out := join2(tmp_dir, "out.pdf") + defer delete(pdf_out) + pdf_err := adapters.export_comic(pdf_out, layouts, panel_images, adapters.Export_Options{format = .PDF, page_size = .A4, dpi = 300, quality = 90}) + testing.expect(t, shared.is_ok(pdf_err), "pdf export failed") + testing.expect(t, os.exists(pdf_out), "pdf output should exist") + + data, rerr := os.read_entire_file(pdf_out, context.temp_allocator) + testing.expect(t, rerr == nil, "failed to read pdf output") + testing.expect(t, strings.has_prefix(string(data), "%PDF-"), "pdf output should start with %PDF-") +} diff --git a/odin/tests/gui_helpers_phase28.odin b/odin/tests/gui_helpers_phase28.odin new file mode 100644 index 0000000..ffec41e --- /dev/null +++ b/odin/tests/gui_helpers_phase28.odin @@ -0,0 +1,695 @@ +package tests + +import "core:fmt" +import "core:os" +import "core:strings" +import "core:testing" +import "../src/adapters" +import "../src/core" +import "../src/gui" +import "../src/shared" +import "../src/ui" + +@test +gui_parse_autosave_interval_bounds :: proc(t: ^testing.T) { + testing.expect(t, gui.parse_autosave_interval("42", 20) == 42, "valid interval should parse") + testing.expect(t, gui.parse_autosave_interval("", 20) == 20, "empty interval should fallback to default") + testing.expect(t, gui.parse_autosave_interval("1", 20) == 5, "interval should clamp to min") + testing.expect(t, gui.parse_autosave_interval("999", 20) == 300, "interval should clamp to max") +} + +@test +gui_fit_text_for_width_truncates_with_ellipsis :: proc(t: ^testing.T) { + truncated := gui.fit_text_for_width("ABCDE", 1, 10) + testing.expect(t, truncated == "ABC…", "fit_text_for_width should enforce 4-char minimum width rule and truncate with ellipsis") +} + +@test +gui_fit_text_for_width_passthrough_cases :: proc(t: ^testing.T) { + testing.expect(t, gui.fit_text_for_width("ABCD", 1, 10) == "ABCD", "text at min width should pass through") + testing.expect(t, gui.fit_text_for_width("ABCDE", 80, 0) == "ABCDE", "non-positive px_per_char should bypass truncation") +} + +@test +gui_set_autosave_interval_text_clamps_and_formats :: proc(t: ^testing.T) { + interval_text := "" + msg := gui.set_autosave_interval_text(&interval_text, 3) + defer delete(interval_text) + defer delete(msg) + testing.expect(t, interval_text == "5", "text should clamp to minimum interval") + testing.expect(t, strings.contains(msg, "5s"), "message should include clamped seconds") +} + +@test +gui_log_view_toggle_helpers :: proc(t: ^testing.T) { + lines: i32 = 6 + msg1 := gui.toggle_log_lines_with_message(&lines) + defer delete(msg1) + testing.expect(t, lines == 4, "log lines should toggle from 6 to 4") + testing.expect(t, msg1 == "Log lines: 4", "log lines message should match") + + msg2 := gui.toggle_log_lines_with_message(&lines) + defer delete(msg2) + testing.expect(t, lines == 6, "log lines should toggle back to 6") + testing.expect(t, msg2 == "Log lines: 6", "log lines message should match") + + oldest_first := false + msg3 := gui.toggle_log_order_with_message(&oldest_first) + defer delete(msg3) + testing.expect(t, oldest_first, "log order should toggle to oldest-first") + testing.expect(t, strings.contains(msg3, "oldest"), "log order message should mention oldest") + + msg4 := gui.toggle_log_order_with_message(&oldest_first) + defer delete(msg4) + testing.expect(t, !oldest_first, "log order should toggle back to newest-first") + testing.expect(t, strings.contains(msg4, "newest"), "log order message should mention newest") +} + +@test +gui_export_format_helper_updates_path_and_dirty :: proc(t: ^testing.T) { + export_format: core.Export_Format = .PDF + export_path := "./comic.pdf" + is_dirty := false + + msg := gui.set_export_format_with_message(&export_format, &export_path, .CBZ, &is_dirty) + defer delete(export_path) + defer delete(msg) + testing.expect(t, export_format == .CBZ, "format should update to CBZ") + testing.expect(t, is_dirty, "format switch should mark state dirty") + testing.expect(t, strings.has_suffix(export_path, ".cbz"), "export path should match selected format") + testing.expect(t, strings.has_prefix(msg, "Export format: CBZ"), "status should include format label") +} + +@test +gui_diagnostics_context_builder_maps_fields :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + action_log: gui.Action_Log + ctx := gui.make_diagnostics_action_context(&controller, &action_log, true, false, true, false, 30, "./p.comic.json", "./e.cbz", 4, true) + + testing.expect(t, ctx.controller == &controller, "context should hold controller pointer") + testing.expect(t, ctx.action_log == &action_log, "context should hold action-log pointer") + testing.expect(t, ctx.is_dirty, "context should map dirty flag") + testing.expect(t, !ctx.autosave_enabled, "context should map autosave flag") + testing.expect(t, ctx.project_ok && !ctx.export_ok, "context should map path health flags") + testing.expect(t, ctx.autosave_secs == 30, "context should map autosave seconds") + testing.expect(t, ctx.project_path == "./p.comic.json" && ctx.export_path == "./e.cbz", "context should map paths") + testing.expect(t, ctx.log_show_lines == 4 && ctx.log_oldest_first, "context should map log settings") +} + +@test +gui_project_path_normalization_variants :: proc(t: ^testing.T) { + p1 := gui.normalize_project_path("") + testing.expect(t, p1 == "./gui_project.comic.json", "empty path should use default project path") + + p2 := gui.normalize_project_path("my_story") + defer delete(p2) + testing.expect(t, p2 == "my_story.comic.json", "bare name should append .comic.json") + + p3 := gui.normalize_project_path("my_story.json") + defer delete(p3) + testing.expect(t, p3 == "my_story.comic.json", "json path should be converted to .comic.json") + + p4 := gui.normalize_project_path("already.comic.json") + testing.expect(t, p4 == "already.comic.json", "already-normalized path should remain unchanged") +} + +@test +gui_fix_all_paths_normalizes_project_and_export :: proc(t: ^testing.T) { + project_path := "project" + export_path := "./out" + defer delete(project_path) + defer delete(export_path) + + gui.fix_all_paths(&project_path, &export_path, .PNG) + testing.expect(t, strings.has_suffix(project_path, ".comic.json"), "fix_all_paths should normalize project suffix") + testing.expect(t, strings.has_suffix(export_path, ".zip"), "PNG export should normalize to .zip suffix") +} + +@test +gui_summary_toggle_supported_screen_guard :: proc(t: ^testing.T) { + opts := gui.Summary_View_Options{} + + msg1 := gui.toggle_summary_show_if_supported(.Story, &opts) + testing.expect(t, len(msg1) == 0, "show toggle should no-op on unsupported screen") + + msg2 := gui.toggle_summary_sort_if_supported(.Story, &opts) + testing.expect(t, len(msg2) == 0, "sort toggle should no-op on unsupported screen") + + msg3 := gui.toggle_summary_show_if_supported(.Script, &opts) + defer delete(msg3) + testing.expect(t, strings.has_prefix(msg3, "Script summary show-all"), "show toggle should produce script status message") +} + +@test +gui_push_dirty_status_sets_dirty_and_logs :: proc(t: ^testing.T) { + is_dirty := false + status_msg := fmt.aprintf("") + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + defer delete(status_msg) + + gui.push_dirty_status(&is_dirty, &status_msg, &action_log, "Changed value") + testing.expect(t, is_dirty, "push_dirty_status should set dirty flag") + testing.expect(t, status_msg == "Changed value", "push_dirty_status should set status message") + testing.expect(t, action_log.count == 1, "push_dirty_status should append one action-log entry") +} + +@test +gui_push_status_if_nonempty_only_pushes_for_content :: proc(t: ^testing.T) { + status_msg := fmt.aprintf("initial") + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + defer delete(status_msg) + + gui.push_status_if_nonempty(&status_msg, &action_log, "") + testing.expect(t, status_msg == "initial", "empty optional status should not overwrite status message") + testing.expect(t, action_log.count == 0, "empty optional status should not push to action log") + + gui.push_status_if_nonempty(&status_msg, &action_log, "non-empty") + testing.expect(t, status_msg == "non-empty", "non-empty optional status should update status message") + testing.expect(t, action_log.count == 1, "non-empty optional status should append one action-log entry") +} + +@test +gui_confirmation_request_sets_overlay_state :: proc(t: ^testing.T) { + show_confirm_overlay := false + show_help_overlay := true + pending_action: gui.Pending_Confirm_Action = .None + + msg := gui.request_confirmation(&show_confirm_overlay, &show_help_overlay, &pending_action, .Open_Project, "Confirm open?") + testing.expect(t, msg == "Confirm open?", "request_confirmation should return prompt message") + testing.expect(t, show_confirm_overlay, "request_confirmation should enable confirm overlay") + testing.expect(t, !show_help_overlay, "request_confirmation should close help overlay") + testing.expect(t, pending_action == .Open_Project, "request_confirmation should set pending action") +} + +@test +gui_autosave_tick_noop_when_disabled_or_clean :: proc(t: ^testing.T) { + state := core.new_initial_state() + project_path := "./tmp-test.comic.json" + is_dirty := true + last_autosave_at: f64 = 0 + last_save_at: f64 = -1 + + msg1 := gui.autosave_tick_with_message(&project_path, state, false, &is_dirty, &last_autosave_at, &last_save_at, 1) + testing.expect(t, len(msg1) == 0, "autosave tick should no-op when autosave is disabled") + testing.expect(t, is_dirty, "autosave disabled should not mutate dirty flag") + + is_dirty = false + msg2 := gui.autosave_tick_with_message(&project_path, state, true, &is_dirty, &last_autosave_at, &last_save_at, 1) + testing.expect(t, len(msg2) == 0, "autosave tick should no-op when state is clean") +} + +@test +gui_log_clear_and_reset_helpers :: proc(t: ^testing.T) { + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + status_msg := fmt.aprintf("") + defer delete(status_msg) + + gui.push_status(&status_msg, &action_log, "first") + gui.push_status(&status_msg, &action_log, "second") + testing.expect(t, action_log.count == 2, "setup should add log entries") + + clear_msg := gui.clear_action_log_with_message(&action_log) + testing.expect(t, clear_msg == "Action log cleared", "clear helper should return expected message") + testing.expect(t, action_log.count == 0, "clear helper should reset action log count") + + lines: i32 = 4 + oldest_first := true + reset_msg := gui.reset_log_view_with_message(&lines, &oldest_first) + testing.expect(t, reset_msg == "Reset log view", "reset helper should return expected message") + testing.expect(t, lines == 6, "reset helper should restore default line count") + testing.expect(t, !oldest_first, "reset helper should restore newest-first ordering") +} + +@test +gui_confirm_resolve_none_returns_message :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + project_path := "./p.comic.json" + export_path := "./e.pdf" + is_dirty := false + last_autosave_at: f64 = 0 + + msg := gui.resolve_confirm_action_with_message(.None, &controller, &project_path, &export_path, .PDF, &is_dirty, &last_autosave_at) + testing.expect(t, msg == "No pending destructive action", "resolve helper should report none-pending message") +} + +@test +gui_help_overlay_toggle_and_close_helpers :: proc(t: ^testing.T) { + show_help_overlay := false + gui.toggle_help_overlay(&show_help_overlay) + testing.expect(t, show_help_overlay, "toggle helper should enable help overlay") + + gui.close_help_overlay_if_open(&show_help_overlay) + testing.expect(t, !show_help_overlay, "close helper should disable help overlay when open") + + gui.close_help_overlay_if_open(&show_help_overlay) + testing.expect(t, !show_help_overlay, "close helper should be a no-op when already closed") +} + +@test +gui_export_path_preset_and_derivation_helpers :: proc(t: ^testing.T) { + export_path := "" + msg1 := gui.set_export_preset_with_message(&export_path, .PNG) + defer delete(msg1) + testing.expect(t, strings.has_suffix(export_path, ".zip"), "preset helper should set PNG-compatible export path") + testing.expect(t, strings.has_prefix(msg1, "Preset export path:"), "preset helper should return status message") + + delete(export_path) + project_path := "./work/my.comic.json" + msg2 := gui.set_export_path_from_project_with_message(&export_path, project_path, .CBZ) + defer delete(export_path) + defer delete(msg2) + testing.expect(t, strings.has_suffix(export_path, ".cbz"), "project-derivation helper should set CBZ-compatible export path") + testing.expect(t, strings.contains(msg2, "Export path from project dir:"), "project-derivation helper should return status message") + + msg3 := gui.set_project_path_from_export_with_message(&project_path, export_path) + defer delete(project_path) + defer delete(msg3) + testing.expect(t, strings.has_suffix(project_path, "gui_project.comic.json"), "export-derivation helper should set project filename") + testing.expect(t, strings.contains(msg3, "Project path from export dir:"), "export-derivation helper should return status message") +} + +@test +gui_reset_project_session_resets_dirty_and_screen :: proc(t: ^testing.T) { + state := core.new_initial_state() + state.story_idea = "changed" + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + controller.active_screen = .Export + is_dirty := true + last_autosave_at: f64 = 123 + + msg := gui.reset_project_session(&controller, &is_dirty, &last_autosave_at, false) + testing.expect(t, msg == "Reset project", "reset helper should return expected status") + testing.expect(t, !is_dirty, "reset helper should clear dirty flag") + testing.expect(t, controller.active_screen == .Story, "reset helper should sync active screen to initial workflow") + testing.expect(t, last_autosave_at == 123, "reset helper should not touch autosave timestamp when touch_time is false") +} + +@test +gui_toggle_autosave_with_message_flips_state :: proc(t: ^testing.T) { + autosave_enabled := true + msg1 := gui.toggle_autosave_with_message(&autosave_enabled) + defer delete(msg1) + testing.expect(t, !autosave_enabled, "autosave toggle should flip from enabled to disabled") + testing.expect(t, strings.contains(msg1, "no"), "autosave toggle message should report disabled state") + + msg2 := gui.toggle_autosave_with_message(&autosave_enabled) + defer delete(msg2) + testing.expect(t, autosave_enabled, "autosave toggle should flip back to enabled") + testing.expect(t, strings.contains(msg2, "yes"), "autosave toggle message should report enabled state") +} + +@test +gui_reset_helper_fields_with_message_sets_defaults :: proc(t: ^testing.T) { + export_path := "./custom.cbz" + local_script_pages := "9" + autosave_interval_text := "90" + defer delete(export_path) + + msg := gui.reset_helper_fields_with_message(&export_path, &local_script_pages, &autosave_interval_text, .PDF) + testing.expect(t, msg == "Reset helper fields to defaults", "reset helpers should return expected status") + testing.expect(t, export_path == "./comic.pdf", "reset helpers should restore format-based export default") + testing.expect(t, local_script_pages == "2", "reset helpers should restore default local script pages") + testing.expect(t, autosave_interval_text == "20", "reset helpers should restore default autosave interval text") +} + +@test +gui_clear_selected_field_with_message_behaviors :: proc(t: ^testing.T) { + state := core.new_initial_state() + state.story_idea = "idea" + export_path := "./comic.pdf" + local_script_pages := "3" + project_path := "./p.comic.json" + autosave_interval_text := "30" + is_dirty := false + + msg1 := gui.clear_selected_field_with_message(0, &state, &export_path, &local_script_pages, &project_path, &autosave_interval_text, &is_dirty) + testing.expect(t, msg1 == "Cleared selected field", "clear helper should report clear when field had content") + testing.expect(t, len(state.story_idea) == 0, "clear helper should clear selected text field") + testing.expect(t, is_dirty, "clear helper should mark dirty when a field was cleared") + + is_dirty = false + msg2 := gui.clear_selected_field_with_message(0, &state, &export_path, &local_script_pages, &project_path, &autosave_interval_text, &is_dirty) + testing.expect(t, msg2 == "Selected field already empty", "clear helper should report already-empty state") + testing.expect(t, !is_dirty, "clear helper should not mark dirty when nothing changed") +} + +@test +gui_path_health_hint_variants :: proc(t: ^testing.T) { + testing.expect(t, gui.path_health_hint(true, true) == "", "path-health hint should be empty when both paths are healthy") + testing.expect(t, strings.contains(gui.path_health_hint(false, false), "Fix paths"), "path-health hint should mention fixing both paths") + testing.expect(t, strings.contains(gui.path_health_hint(false, true), "Fix project path"), "path-health hint should mention project path fix") + testing.expect(t, strings.contains(gui.path_health_hint(true, false), "Fix export path"), "path-health hint should mention export path fix") +} + +@test +gui_path_health_predicates :: proc(t: ^testing.T) { + testing.expect(t, gui.project_path_is_normalized("./x.comic.json"), "project path predicate should accept normalized path") + testing.expect(t, !gui.project_path_is_normalized("./x.json"), "project path predicate should reject non-comic suffix") + + testing.expect(t, gui.export_path_matches_format("./x.pdf", .PDF), "export path predicate should accept PDF suffix") + testing.expect(t, !gui.export_path_matches_format("./x.cbz", .PDF), "export path predicate should reject wrong format suffix") +} + +@test +gui_screen_label_and_navigation_status :: proc(t: ^testing.T) { + testing.expect(t, gui.screen_status_label(.Panels) == "Panels", "screen label helper should map enum to name") + + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + msg := gui.navigate_screen_with_status(&controller, .Story) + defer delete(msg) + testing.expect(t, msg == "Screen: Story", "navigate helper should return status message for successful navigation") +} + +@test +gui_action_log_ring_buffer_retains_recent_entries :: proc(t: ^testing.T) { + status_msg := fmt.aprintf("") + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + defer delete(status_msg) + + for i in 0..<10 { + msg := "" + switch i { + case 0: msg = "entry_00" + case 1: msg = "entry_01" + case 2: msg = "entry_02" + case 3: msg = "entry_03" + case 4: msg = "entry_04" + case 5: msg = "entry_05" + case 6: msg = "entry_06" + case 7: msg = "entry_07" + case 8: msg = "entry_08" + case 9: msg = "entry_09" + } + gui.push_status(&status_msg, &action_log, msg) + } + + testing.expect(t, action_log.count == 10, "action log should track total pushes") + snapshot := gui.build_action_log_snapshot(action_log) + defer delete(snapshot) + testing.expect(t, strings.contains(snapshot, "entry_09"), "snapshot should include newest entry") + testing.expect(t, !strings.contains(snapshot, "entry_00"), "snapshot should drop entries outside ring capacity") +} + +@test +gui_action_log_clear_resets_count_and_snapshot :: proc(t: ^testing.T) { + status_msg := fmt.aprintf("") + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + defer delete(status_msg) + + gui.push_status(&status_msg, &action_log, "a") + gui.push_status(&status_msg, &action_log, "b") + testing.expect(t, action_log.count == 2, "setup should create action-log entries") + action_log.last_push_at = 42 + + _ = gui.clear_action_log_with_message(&action_log) + testing.expect(t, action_log.count == 0, "clear helper should reset count") + testing.expect(t, action_log.last_push_at == 0, "clear helper should reset last-push timestamp") + snapshot := gui.build_action_log_snapshot(action_log) + defer delete(snapshot) + testing.expect(t, snapshot == "(action log empty)", "snapshot should report empty log after clear") +} + +@test +gui_set_status_replaces_owned_string :: proc(t: ^testing.T) { + status_msg := fmt.aprintf("start") + defer delete(status_msg) + + gui.set_status(&status_msg, "updated") + testing.expect(t, status_msg == "updated", "set_status should replace existing status text") +} + +@test +gui_open_project_session_missing_file_returns_error_and_keeps_state :: proc(t: ^testing.T) { + state := core.new_initial_state() + state.story_idea = "original" + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + project_path := "./definitely_missing_project" + export_path := "./comic.pdf" + is_dirty := true + last_autosave_at: f64 = 777 + + msg := gui.open_project_session(&controller, &project_path, &export_path, .PDF, &is_dirty, &last_autosave_at) + defer delete(project_path) + testing.expect(t, strings.contains(msg, "project file does not exist"), "open helper should surface missing-file error") + testing.expect(t, strings.has_suffix(project_path, ".comic.json"), "open helper should normalize missing-file project path") + testing.expect(t, controller.state.story_idea == "original", "failed open should keep existing controller state") + testing.expect(t, is_dirty, "failed open should preserve dirty flag") + testing.expect(t, last_autosave_at == 777, "failed open should preserve autosave timestamp") +} + +@test +gui_resolve_confirm_action_reset_branch :: proc(t: ^testing.T) { + state := core.new_initial_state() + state.story_idea = "before" + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + project_path := "./unused.comic.json" + export_path := "./unused.pdf" + is_dirty := true + last_autosave_at: f64 = 42 + + msg := gui.resolve_confirm_action_with_message(.Reset_Project, &controller, &project_path, &export_path, .PDF, &is_dirty, &last_autosave_at) + testing.expect(t, msg == "Reset project", "resolve helper should dispatch reset action") + testing.expect(t, !is_dirty, "reset dispatch should clear dirty flag") + testing.expect(t, controller.active_screen == .Story, "reset dispatch should sync active screen") + testing.expect(t, last_autosave_at >= 0, "reset dispatch should set a non-negative autosave timestamp") + testing.expect(t, last_autosave_at != 42, "reset dispatch should refresh autosave timestamp") +} + +@test +gui_open_project_session_success_updates_state_and_paths :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-gui-open-*", context.temp_allocator) + testing.expect(t, terr == nil, "temp dir should be created") + if terr != nil { + return + } + defer os.remove_all(tmp_dir) + + project_path := fmt.aprintf("%s/session.comic.json", tmp_dir) + defer delete(project_path) + + saved := core.new_initial_state() + saved.story_idea = "loaded-story" + err := adapters.save_project(project_path, saved) + testing.expect(t, shared.is_ok(err), "save_project should succeed for open-session test") + if !shared.is_ok(err) { + return + } + + controller := ui.new_controller(core.new_initial_state()) + defer ui.dispose_controller_owned(&controller) + controller.state.story_idea = "original-story" + + export_path := "./placeholder.pdf" + is_dirty := true + last_autosave_at: f64 = 17 + + msg := gui.open_project_session(&controller, &project_path, &export_path, .CBZ, &is_dirty, &last_autosave_at) + defer delete(msg) + defer delete(export_path) + + testing.expect(t, strings.has_prefix(msg, "Opened project:"), "open helper should return opened-project status") + testing.expect(t, controller.state.story_idea == "loaded-story", "open helper should replace controller state from loaded project") + testing.expect(t, !is_dirty, "open helper should clear dirty flag on success") + testing.expect(t, strings.has_suffix(export_path, ".cbz"), "open helper should sync export path suffix to selected format") + testing.expect(t, strings.contains(export_path, tmp_dir), "open helper should sync export path into the project directory") + testing.expect(t, last_autosave_at != 17, "open helper should refresh autosave timestamp on success") +} + +@test +gui_resolve_confirm_action_open_branch_success :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-gui-confirm-open-*", context.temp_allocator) + testing.expect(t, terr == nil, "temp dir should be created") + if terr != nil { + return + } + defer os.remove_all(tmp_dir) + + project_path := fmt.aprintf("%s/session.comic.json", tmp_dir) + defer delete(project_path) + + saved := core.new_initial_state() + saved.story_idea = "confirm-open-loaded" + err := adapters.save_project(project_path, saved) + testing.expect(t, shared.is_ok(err), "save_project should succeed for resolve-open test") + if !shared.is_ok(err) { + return + } + + controller := ui.new_controller(core.new_initial_state()) + defer ui.dispose_controller_owned(&controller) + controller.state.story_idea = "before-open" + + export_path := "./placeholder.pdf" + is_dirty := true + last_autosave_at: f64 = 99 + + msg := gui.resolve_confirm_action_with_message(.Open_Project, &controller, &project_path, &export_path, .PDF, &is_dirty, &last_autosave_at) + defer delete(msg) + defer delete(export_path) + + testing.expect(t, strings.has_prefix(msg, "Opened project:"), "resolve helper should dispatch open action") + testing.expect(t, controller.state.story_idea == "confirm-open-loaded", "resolve open dispatch should load target state") + testing.expect(t, !is_dirty, "resolve open dispatch should clear dirty flag") + testing.expect(t, strings.has_suffix(export_path, ".pdf"), "resolve open dispatch should sync export path to PDF suffix") + testing.expect(t, strings.contains(export_path, tmp_dir), "resolve open dispatch should sync export path into project directory") + testing.expect(t, last_autosave_at != 99, "resolve open dispatch should refresh autosave timestamp") +} + +@test +gui_resolve_confirm_action_open_branch_missing_file_preserves_state :: proc(t: ^testing.T) { + state := core.new_initial_state() + state.story_idea = "still-here" + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + project_path := "./missing-confirm-open" + export_path := "./out.pdf" + is_dirty := true + last_autosave_at: f64 = 55 + + msg := gui.resolve_confirm_action_with_message(.Open_Project, &controller, &project_path, &export_path, .PDF, &is_dirty, &last_autosave_at) + defer delete(project_path) + testing.expect(t, strings.contains(msg, "project file does not exist"), "resolve open branch should surface missing-file error") + testing.expect(t, controller.state.story_idea == "still-here", "resolve open failure should preserve existing state") + testing.expect(t, is_dirty, "resolve open failure should preserve dirty flag") + testing.expect(t, last_autosave_at == 55, "resolve open failure should preserve autosave timestamp") +} + +@test +gui_autosave_tick_success_writes_project_and_clears_dirty :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-gui-autosave-*", context.temp_allocator) + testing.expect(t, terr == nil, "temp dir should be created") + if terr != nil { + return + } + defer os.remove_all(tmp_dir) + + project_path := fmt.aprintf("%s/autosave_target.comic.json", tmp_dir) + defer delete(project_path) + state := core.new_initial_state() + is_dirty := true + last_autosave_at: f64 = -1 + last_save_at: f64 = -1 + + msg := gui.autosave_tick_with_message(&project_path, state, true, &is_dirty, &last_autosave_at, &last_save_at, 0) + defer delete(msg) + testing.expect(t, strings.has_prefix(msg, "Autosaved:"), "autosave tick should report success when project write works") + testing.expect(t, strings.has_suffix(project_path, ".comic.json"), "autosave tick should normalize project path suffix") + testing.expect(t, os.exists(project_path), "autosave tick should write project file") + testing.expect(t, !is_dirty, "autosave tick should clear dirty flag after successful save") + testing.expect(t, last_save_at >= 0, "autosave tick should set last-save timestamp on success") +} + + +@test +gui_write_diagnostics_with_message_creates_file :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-gui-diag-*", context.temp_allocator) + testing.expect(t, terr == nil, "temp dir should be created") + if terr != nil { + return + } + defer os.remove_all(tmp_dir) + + project_path := fmt.aprintf("%s/project.comic.json", tmp_dir) + defer delete(project_path) + export_path := fmt.aprintf("%s/out.pdf", tmp_dir) + defer delete(export_path) + + controller := ui.new_controller(core.new_initial_state()) + defer ui.dispose_controller(&controller) + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + ctx := gui.make_diagnostics_action_context(&controller, &action_log, false, true, true, true, 20, project_path, export_path, 6, false) + + msg := gui.write_diagnostics_with_message(ctx) + defer delete(msg) + testing.expect(t, strings.has_prefix(msg, "Wrote diagnostics file:"), "diagnostics write helper should report written file") + + diag_path := fmt.aprintf("%s/gui_diagnostics.txt", tmp_dir) + defer delete(diag_path) + testing.expect(t, os.exists(diag_path), "diagnostics write helper should create diagnostics file") +} + +@test +gui_write_session_report_with_message_creates_file :: proc(t: ^testing.T) { + tmp_dir, terr := os.make_directory_temp("", "comic-gui-report-*", context.temp_allocator) + testing.expect(t, terr == nil, "temp dir should be created") + if terr != nil { + return + } + defer os.remove_all(tmp_dir) + + project_path := fmt.aprintf("%s/project.comic.json", tmp_dir) + defer delete(project_path) + export_path := fmt.aprintf("%s/out.cbz", tmp_dir) + defer delete(export_path) + + controller := ui.new_controller(core.new_initial_state()) + defer ui.dispose_controller(&controller) + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + status_msg := fmt.aprintf("") + defer delete(status_msg) + gui.push_status(&status_msg, &action_log, "seed log entry") + + ctx := gui.make_diagnostics_action_context(&controller, &action_log, true, true, true, true, 30, project_path, export_path, 4, true) + msg := gui.write_session_report_with_message(ctx) + defer delete(msg) + testing.expect(t, strings.has_prefix(msg, "Wrote session report:"), "session report write helper should report written file") + + report_path := fmt.aprintf("%s/gui_session_report.txt", tmp_dir) + defer delete(report_path) + testing.expect(t, os.exists(report_path), "session report helper should create report file") +} + +@test +gui_write_diagnostics_with_message_failure_for_missing_dir :: proc(t: ^testing.T) { + controller := ui.new_controller(core.new_initial_state()) + defer ui.dispose_controller(&controller) + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + + project_path := "./missing-dir/sub/project.comic.json" + export_path := "./out.pdf" + ctx := gui.make_diagnostics_action_context(&controller, &action_log, false, true, true, true, 20, project_path, export_path, 6, false) + + msg := gui.write_diagnostics_with_message(ctx) + defer delete(msg) + testing.expect(t, msg == "Failed writing diagnostics file", "diagnostics write helper should report failure for missing directory") +} + +@test +gui_write_session_report_with_message_failure_for_missing_dir :: proc(t: ^testing.T) { + controller := ui.new_controller(core.new_initial_state()) + defer ui.dispose_controller(&controller) + action_log: gui.Action_Log + defer gui.action_log_dispose(&action_log) + + project_path := "./missing-dir/sub/project.comic.json" + export_path := "./out.pdf" + ctx := gui.make_diagnostics_action_context(&controller, &action_log, false, true, true, true, 20, project_path, export_path, 6, false) + + msg := gui.write_session_report_with_message(ctx) + defer delete(msg) + testing.expect(t, msg == "Failed writing session report", "session report write helper should report failure for missing directory") +} diff --git a/odin/tests/hardening_phase5.odin b/odin/tests/hardening_phase5.odin new file mode 100644 index 0000000..5430591 --- /dev/null +++ b/odin/tests/hardening_phase5.odin @@ -0,0 +1,58 @@ +package tests + +import "core:testing" +import "../src/core" +import "../src/ui" + +@test +core_dispose_state_clears_collections :: proc(t: ^testing.T) { + state := core.new_initial_state() + + sheet_urls_dyn: [dynamic]string + append(&sheet_urls_dyn, "x") + + chars_dyn: [dynamic]core.Character + append(&chars_dyn, core.Character{name = "A", character_sheet_urls = sheet_urls_dyn[:]}) + state.characters = chars_dyn[:] + + state.panel_images = make(map[string]core.Panel_Image) + state.panel_images["p1"] = core.Panel_Image{url = "u"} + + layout_panels_dyn: [dynamic]core.Page_Layout_Panel + append(&layout_panels_dyn, core.Page_Layout_Panel{panel_id = "p1"}) + layouts_dyn: [dynamic]core.Page_Layout + append(&layouts_dyn, core.Page_Layout{panels = layout_panels_dyn[:]}) + state.page_layouts = layouts_dyn[:] + + state.speech_bubbles = make(map[string][]core.Speech_Bubble) + bubbles_dyn: [dynamic]core.Speech_Bubble + append(&bubbles_dyn, core.Speech_Bubble{id = "b1"}) + state.speech_bubbles["p1"] = bubbles_dyn[:] + + steps_dyn: [dynamic]core.Workflow_Step + append(&steps_dyn, core.Workflow_Step.Story_Input) + state.workflow.completed_steps = steps_dyn[:] + + core.dispose_state(&state) + + testing.expect(t, len(state.characters) == 0, "characters should be cleared") + testing.expect(t, len(state.panel_images) == 0, "panel_images should be cleared") + testing.expect(t, len(state.page_layouts) == 0, "page_layouts should be cleared") + testing.expect(t, len(state.speech_bubbles) == 0, "speech_bubbles should be cleared") + testing.expect(t, len(state.workflow.completed_steps) == 0, "completed_steps should be cleared") +} + +@test +ui_dispose_controller_clears_jobs_and_state :: proc(t: ^testing.T) { + state := core.new_initial_state() + state.panel_images = make(map[string]core.Panel_Image) + state.panel_images["p1"] = core.Panel_Image{url = "u"} + + controller := ui.new_controller(state) + _ = ui.submit_job(&controller.jobs, .Generate_Script, "job") + + ui.dispose_controller(&controller) + + testing.expect(t, len(controller.jobs.jobs) == 0, "jobs should be cleared") + testing.expect(t, len(controller.state.panel_images) == 0, "state maps should be cleared") +} diff --git a/odin/tests/storage_phase3.odin b/odin/tests/storage_phase3.odin new file mode 100644 index 0000000..211f7c7 --- /dev/null +++ b/odin/tests/storage_phase3.odin @@ -0,0 +1,56 @@ +package tests + +import "core:fmt" +import "core:os" +import "core:testing" +import "../src/adapters" +import "../src/core" +import "../src/shared" + +make_temp_project_path :: proc(t: ^testing.T) -> (string, string) { + tmp_dir, err := os.make_directory_temp("", "comic-odin-*", context.temp_allocator) + if err != nil { + testing.expect(t, false, "failed to create temp directory") + return "", "" + } + project_path := fmt.aprintf("%s/project.comic.json", tmp_dir) + return tmp_dir, project_path +} + +@test +storage_save_load_roundtrip :: proc(t: ^testing.T) { + tmp_dir, project_path := make_temp_project_path(t) + defer os.remove_all(tmp_dir) + defer delete(project_path) + + state := core.new_initial_state() + state.story_idea = "An inventor discovers a portal" + state.story_genre = "scifi" + state.user_mode = .Professional + + err := adapters.save_project(project_path, state) + testing.expect(t, shared.is_ok(err), "save_project should succeed") + + loaded, lerr := adapters.load_project(project_path) + defer core.dispose_state_owned(&loaded) + testing.expect(t, shared.is_ok(lerr), "load_project should succeed") + testing.expect(t, loaded.story_idea == state.story_idea, "story_idea should round-trip") + testing.expect(t, loaded.story_genre == state.story_genre, "story_genre should round-trip") + testing.expect(t, loaded.user_mode == state.user_mode, "user_mode should round-trip") +} + +@test +storage_creates_asset_cache_dir :: proc(t: ^testing.T) { + tmp_dir, project_path := make_temp_project_path(t) + defer os.remove_all(tmp_dir) + defer delete(project_path) + + state := core.new_initial_state() + err := adapters.save_project(project_path, state) + testing.expect(t, shared.is_ok(err), "save_project should succeed") + + asset_dir, derr := adapters.derive_asset_cache_dir(project_path) + testing.expect(t, shared.is_ok(derr), "derive_asset_cache_dir should succeed") + testing.expect(t, os.exists(asset_dir), "asset cache directory should exist") + testing.expect(t, os.is_dir(asset_dir), "asset cache directory should be a directory") +} diff --git a/odin/tests/ui_phase4.odin b/odin/tests/ui_phase4.odin new file mode 100644 index 0000000..5529d19 --- /dev/null +++ b/odin/tests/ui_phase4.odin @@ -0,0 +1,61 @@ +package tests + +import "core:testing" +import "../src/core" +import "../src/shared" +import "../src/ui" + +@test +ui_navigation_guard_blocks_locked_screen :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + err := ui.navigate_to_screen(&controller, .Layout) + testing.expect(t, !shared.is_ok(err), "layout should be blocked before panels exist") +} + +@test +ui_navigation_guard_allows_after_prereqs :: proc(t: ^testing.T) { + state := core.new_initial_state() + state.panel_images = make(map[string]core.Panel_Image) + state.panel_images["p1"] = core.Panel_Image{url = "https://example.com/p1.png", width = 1, height = 1} + + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + err := ui.navigate_to_screen(&controller, .Layout) + testing.expect(t, shared.is_ok(err), "layout should be allowed once panel images exist") +} + +@test +ui_background_job_lifecycle_and_cancel :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + job1 := ui.start_background_job(&controller, .Generate_Script, "job1") + testing.expect(t, controller.state.workflow.is_generating, "generation should be on after starting a job") + + job2 := ui.start_background_job(&controller, .Generate_Panel, "job2") + _ = ui.mark_job_running(&controller.jobs, job1) + _ = ui.mark_job_running(&controller.jobs, job2) + + cerr := ui.cancel_background_job(&controller, job2) + testing.expect(t, shared.is_ok(cerr), "cancel should succeed") + + _ = ui.finish_background_job(&controller, job1, "") + testing.expect(t, !controller.state.workflow.is_generating, "generation should be off after active jobs are done") +} + +@test +ui_workflow_transition_guard :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + + err := ui.set_workflow_step(&controller, .Layout) + testing.expect(t, !shared.is_ok(err), "should block invalid direct transition") + + err2 := ui.set_workflow_step(&controller, .Generating_Script) + testing.expect(t, shared.is_ok(err2), "should allow valid transition to generating script") +} diff --git a/odin/tests/ui_render_phase4.odin b/odin/tests/ui_render_phase4.odin new file mode 100644 index 0000000..5036b3e --- /dev/null +++ b/odin/tests/ui_render_phase4.odin @@ -0,0 +1,45 @@ +package tests + +import "core:strings" +import "core:testing" +import "../src/core" +import "../src/shared" +import "../src/ui" + +@test +ui_render_contains_header_and_status :: proc(t: ^testing.T) { + state := core.new_initial_state() + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + out := ui.render_app_to_string(controller) + defer delete(out) + + testing.expect(t, strings.contains(out, "[comic-odin]"), "render should contain app header") + testing.expect(t, strings.contains(out, "jobs=0"), "render should show job count") + testing.expect(t, strings.contains(out, "Story"), "default screen should be story") +} + +@test +ui_runtime_apply_commands_flow :: proc(t: ^testing.T) { + state := core.new_initial_state() + pages_dyn: [dynamic]core.Page + append(&pages_dyn, core.Page{page_number = 1}) + chars_dyn: [dynamic]core.Character + append(&chars_dyn, core.Character{name = "A"}) + state.script = core.Comic_Script{title = "Script", pages = pages_dyn[:], characters = chars_dyn[:]} + state.characters = chars_dyn[:] + state.panel_images = make(map[string]core.Panel_Image) + state.panel_images["p1"] = core.Panel_Image{url = "u", width = 1, height = 1} + + controller := ui.new_controller(state) + defer ui.dispose_controller(&controller) + cmds := [2]ui.UI_Command{ + {kind = .Navigate, screen = .Layout}, + {kind = .Start_Generate, job_type = .Generate_Panel, message = "panel"}, + } + + err := ui.apply_commands(&controller, cmds[:]) + testing.expect(t, shared.is_ok(err), "command sequence should succeed") + testing.expect(t, controller.active_screen == .Layout, "expected layout screen") + testing.expect(t, controller.state.workflow.is_generating, "generation should be active") +} diff --git a/package-lock.json b/package-lock.json index 1317a31..d38e557 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6625,6 +6625,28 @@ "license": "ISC", "optional": true }, + "node_modules/ws": { + "version": "8.20.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.20.1.tgz", + "integrity": "sha512-It4dO0K5v//JtTXuPkfEOaI3uUN87iYPnqo/ZzqCoG3g8uhA66QUMs/SrM0YK7/NAu+r4LMh/9dq2A7k+rHs+w==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/xml-name-validator": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz",