Commit Graph

113 Commits

Author SHA1 Message Date
Mikolaj Wielgus 489f55a8b0 refactor(egui): split out some activity code to new module, `interactor` 2024-10-11 02:50:42 +02:00
Alain Emilia Anna Zscheile d03e5c63a0 chore(egui): get rid of unused imports 2024-10-08 13:37:16 +02:00
Alain Emilia Anna Zscheile 69f2ce3c2e egui: add structure Workspace for two-phase workflow 2024-10-08 13:32:17 +02:00
Mikolaj Wielgus f02b7be878 style(egui): update to match locale string tags 2024-10-08 04:49:43 +02:00
Mikolaj Wielgus 74ef5e356f refactor(egui): add empty skeleton for interactions 2024-10-05 03:56:21 +02:00
Mikolaj Wielgus a9b72334f7 refactor(egui): wrap `Invoker<...>` inside new `ActivityContext` 2024-10-04 22:43:17 +02:00
Alain Emilia Anna Zscheile 68d4589e81 egui: run cargo fmt 2024-10-04 02:16:45 +02:00
Alain Emilia Anna Zscheile d24acb601b egui: get rid of FileHandlerData 2024-10-04 02:11:19 +02:00
Alain Emilia Anna Zscheile 25a692aab9 egui/file_handler: run parsing in file loader thread
- also embed I/O errors with other errors
2024-10-04 02:11:17 +02:00
Alain Emilia Anna Zscheile 1a46504dd5 egui: replace FileSender/FileReceiver with FileHandler 2024-10-04 02:09:29 +02:00
Mikolaj Wielgus f21808776e egui: give more systematic names to translatable strings
The names are now based on where the strings are used in the GUI. This
will hopefully make it easier for translators to locate where they are
in the user interface.

I've prefixed all translatable string names with "tr-" to prevent
accidentally substitute unrelated strings in a mass replace.

Once I push this commit, I will also protect `locales/**`, so that
all future changes to strings pass a PR review process to reduce the
probability of errors. This will also make it easier to have a freeze
for translatable strings if we end up having a release schedule in the
future.
2024-10-03 20:26:38 +02:00
Alain Emilia Anna Zscheile fa81cd360a egui: get rid of unnecessary persistence of langid, separate into Config struct 2024-10-03 13:37:52 +02:00
Tomasz Cichoń c9509d8336 egui: fix remaining compile error 2024-10-02 17:31:09 +02:00
Mikolaj Wielgus 9159312ea5 egui: add button and key to abort execution
It actually finishes execution, as I haven't implemented actual aborting
yet.
2024-10-02 02:32:06 +02:00
Alain Emilia Anna Zscheile 161fa002c1 chore(egui): fix rust warnings 2024-10-01 20:50:38 +00:00
Mikolaj Wielgus cc0bf1845a terminology: suffix some single-verb object type names with "Stepper" 2024-10-01 14:27:57 +02:00
Mikolaj Wielgus 001e4bcdcf egui: rename "top" and "bottom" to "menu bar" and "status bar"
These are more recognizable terms.
2024-10-01 05:36:25 +02:00
Alain Emilia Anna Zscheile f4d7d5a5a5 egui: log errors 2024-09-30 22:33:45 +02:00
Alain Emilia Anna Zscheile 82574d2976 egui: add error messages dialog 2024-09-30 22:33:23 +02:00
Alain Emilia Anna Zscheile 1ec85552bb Cargo.toml: reduce dependencies of CLI, WASM 2024-09-30 18:53:12 +02:00
Alain Emilia Anna Zscheile 507ca01bfc Cargo.toml: get rid of unnecessary dependencies 2024-09-30 18:46:19 +02:00
Mikolaj Wielgus 169e843736 egui: further make an `Activity` enum with error and status types 2024-09-30 03:40:53 +02:00
Mikolaj Wielgus c8a40860af egui: s/ExecuteWithStatus/ActivityWithStatus, move it to own file 2024-09-30 01:36:22 +02:00
Mikolaj Wielgus 96af3bcd7f egui: add frame timestep slider 2024-09-29 03:17:14 +02:00
Mikolaj Wielgus 1c7042c8c3 autorouter: move `Execute` and `ExecuteWithStatus` to own file 2024-09-29 03:17:07 +02:00
Mikolaj Wielgus 55be63b942 egui: remove long-superseded `channel_text()` routine 2024-09-28 21:39:22 +02:00
Mikolaj Wielgus a31bb43791 egui: zoom to fit every time new board is loaded 2024-09-14 16:23:40 +02:00
Mikolaj Wielgus 86b583e6c9 egui: add option to hide layer manager 2024-09-11 21:47:44 +02:00
Mikolaj Wielgus 0239a49c73 egui: implement zooming to fit 2024-09-11 16:03:18 +02:00
Mikolaj Wielgus 8c671e5a2c egui: allocate whole available height for canvas 2024-09-10 22:54:44 +02:00
Mikolaj Wielgus 59f88e854c egui: expose autorouter options in the GUI 2024-08-31 00:49:40 +02:00
Mikolaj Wielgus f7f2e8ea49 autorouter: if band removal fails, propagate error instead of panicking 2024-08-30 16:32:37 +02:00
Mikolaj Wielgus 4e37f5715b egui: source GUI strings from Fluent files 2024-08-11 00:13:30 +02:00
Mikolaj Wielgus 0257568410 egui: load locale language on startup 2024-08-08 17:12:04 +02:00
Mikolaj Wielgus 33206567e3 egui,autorouter: display message once command completes 2024-08-06 02:34:54 +02:00
Tomasz Cichoń 8c3a3f1e72 specctra, egui: add menu option for specctra session export 2024-07-10 17:17:26 +02:00
Mikolaj Wielgus be9ff3a85a layout: rename "zone" to "poly"
We'll keep the term "zone" for higher-level concepts.
2024-07-09 23:09:39 +02:00
Mikolaj Wielgus 3a7e504c29 egui: implement loading history in WASM 2024-07-06 00:08:35 +02:00
Mikolaj Wielgus 0745604658 egui: put sender and receiver in wrapper objects 2024-07-05 18:02:54 +02:00
Mikolaj Wielgus e9ba5cd9b3 specctra: move file opening code outside, operate on `BufRead` instead 2024-07-04 23:55:58 +02:00
Mikolaj Wielgus b48ce70aad egui: add timer to control update frequency 2024-07-04 01:02:40 +02:00
Mikolaj Wielgus 806742736a cleanup: get rid of `*Trait` names for traits, use verbs and sentences 2024-07-03 13:40:37 +02:00
Mikolaj Wielgus 2259a75d92 egui,autorouter: restore displaying navmesh 2024-07-01 00:50:24 +02:00
Mikolaj Wielgus ee6eeac6d8 egui: step through every band routing step, once per frame
At last! We finally have that implemented without concurrency.
2024-06-29 22:40:06 +02:00
Mikolaj Wielgus 6cadcd3b41 egui: remove most of usages of shared-state parallelism 2024-06-29 17:11:29 +02:00
Mikolaj Wielgus 00b997b60e egui: fix compilation error -- import `Trace` from trace, not tracer 2024-06-28 17:15:52 +02:00
Mikolaj Wielgus ae2a862e0e router: store every vertex (fails tests but almost functional)
Previously, rail vertices were not stored but generated on demand from
data stored in a `Triangulation<...>`. This functionality is removed in
favor of storing every vertex in `Navmesh`'s own graph built from the
`Triangulation<...>`, which is now afterwards discarded.

Tests still fail and rails aren't added yet, but this is close enough to
completion for me to commit so that I can now go to sleep without
worrying.
2024-06-20 01:32:27 +02:00
Mikolaj Wielgus d4a310a5c0 graph: disambiguate naming of different kinds of indices
Disambiguate between node indices and (teir inner) petgraph indices.
Rename "band index" to "band first seg index", as we identify bands by
teir first segs. Rename "trianvertex index" and "navvertex index"
respectively to "trianvertex node index" and "navvertex node index", as
these point to nodes on the geometry graph and only indirectly to
vertices on the vertex graph.
2024-06-18 15:30:33 +02:00
Mikolaj Wielgus e15e1efe5e router: remove observers
The observer "pattern", arguably, is an anti-pattern that managed to get
into textbooks. It causes a lot of problems, it was a bad idea to use
it.
2024-06-18 01:37:45 +02:00
Mikolaj Wielgus d56d6046a4 egui: add bottom bar displaying cursor position
Useful for writing tests.
2024-06-17 23:59:36 +02:00