oxedyne/fe2o3/fe2o3_pearlite/src/lib.rs
1.4 KiB, 8 runs
created by r1870400018:58214, which is this file's identity for as long as the history lasts, whatever it is later renamed to
download · who wrote it · its history
| 1 | //! Pearlite: a native reader for the `.prl` format `fe2o3_austenite::emit::pearl` writes. |
| 2 | //! |
| 3 | //! Everything that reads or renders a `.prl` already lives in [`oxedyne_fe2o3_austenite::emit::pearl`] |
| 4 | //! (the format's own decoder and SVG reconstruction) and [`oxedyne_fe2o3_graphics`] (the anti-aliased |
| 5 | //! rasteriser and the flat SVG-document reader). This crate adds only what those two do not: a |
| 6 | //! pixmap-driving loop that turns the reconstructed SVG into a PNG at a chosen DPI ([`raster`]), and a |
| 7 | //! loopback app shell that serves the existing browser reader to a local tab so the same one JS reader |
| 8 | //! is the desktop app too ([`shell`]). |
| 9 | //! |
| 10 | //! The reader is two phases: the pixmap-driving raster loop and the loopback app shell. Beside them sits |
| 11 | //! the first increment of a [`collab`] backend -- a signed, mergeable edit stream over a document's |
| 12 | //! annotations, keyed by a stable document identity -- whose transport and browser UI are a later, |
| 13 | //! separately decided increment. |
| 14 | |
| 15 | pub mod collab; |
| 16 | pub mod contents; |
| 17 | pub mod raster; |
| 18 | pub mod register; |
| 19 | pub mod shell; |
| 20 | |
| 21 | // Phase 3, the native windowed reader (winit + softbuffer). Behind the default-off `gui` feature, the |
| 22 | // sole gate on those two dependencies, so every other path builds without them. |
| 23 | #[cfg(feature = "gui")] |
| 24 | pub mod window; |
| 25 | // The desktop launch around the window: a named document, or the native open-file dialog (rfd). |
| 26 | #[cfg(feature = "gui")] |
| 27 | pub mod launch; |