Commit Graph

649 Commits

Author SHA1 Message Date
Mikolaj Wielgus 0760fb2da3 docs(drawing,router): rephrase docstrings some more 2024-12-02 01:25:45 +01:00
Mikolaj Wielgus 638979364c docs(drawing): rephrase docstrings 2024-12-01 23:42:40 +01:00
Mikolaj Wielgus db9d897315 refactor(autorouter): store edits in history entries 2024-11-29 03:45:48 +01:00
Mikolaj Wielgus 66cdf6fe4e fix(geometry): don't check invariants on R-tree bbox init methods 2024-11-28 06:34:49 +01:00
Mikolaj Wielgus 9b1b135715 feat(board,layout,drawing): implement edit applying interface 2024-11-28 06:17:29 +01:00
Mikolaj Wielgus 847654b5c3 refactor(geometry): move edit application to new trait 2024-11-28 05:36:13 +01:00
Mikolaj Wielgus a838310ecb feat(geometry): add interface to apply edits 2024-11-28 05:15:39 +01:00
Mikolaj Wielgus f17c8ce756 refactor(geometry): split out some initialization from node creation
This code will be shared with the routines implementing edit
application, which I will be implementing soon.
2024-11-26 03:06:16 +01:00
Mikolaj Wielgus 1f55e92026 refactor(geometry): move edit code to its own file 2024-11-25 22:42:25 +01:00
Alain Emilia Anna Zscheile 2d1af33204 build: put egui and cli into separate crates
* build(ci): try to fix CI
* build: use workspace dependencies for deduplication / drift avoidance
2024-11-20 15:44:02 +01:00
Alain Emilia Anna Zscheile 9dad83d221 fix(contracts,drawing): geometry_with_rtree -> recording_geometry_with_rtree
Fixes #105.
2024-11-20 15:41:22 +01:00
Mikolaj Wielgus fd22413057 feat(egui): set title to filename of opened DSN file 2024-11-20 00:57:03 +01:00
Mikolaj Wielgus 20e682243d feat(egui,wasm): set `lang` attribute to current language 2024-11-19 23:14:04 +01:00
Alain Emilia Anna Zscheile 98d237270d chore: fix cargo fmt 2024-11-16 16:10:54 +01:00
Szpachlarz c528265f1a docs(interactor): document activity.rs 2024-11-15 21:55:31 +00:00
Szpachlarz 6f2e6bd70e docs(interactor): document interactor.rs 2024-11-15 21:55:31 +00:00
hakki 566ce37a6b invoker: resolves 'https://codeberg.org/topola/topola/pulls/101#issuecomment-2438542' 2024-11-15 21:55:08 +00:00
hakki 63804a0297 invoker: added trait description 2024-11-15 21:55:08 +00:00
hakki 7a01a76738 docs: resolved https://codeberg.org/fogti notes 2024-11-15 21:55:08 +00:00
hakki aae99a9656 docs: Invoker initial docs 2024-11-15 21:55:08 +00:00
Alain Emilia Anna Zscheile ddbaf2abe5 chore: fix cargo fmt 2024-11-15 20:46:29 +01:00
Mikolaj Wielgus d6fe67a373 feat(board,layout,drawing): implement edit recording
Not stored in the undo/redo objects yet.
2024-11-13 00:00:56 +00:00
Mikolaj Wielgus ad1b43b806 feat(geometry): implement recording geometry changes to edit objects 2024-11-13 00:00:56 +00:00
hakki c1271e570e docs: navigation mesh documented 2024-10-29 19:53:47 +01:00
hakki 75d41f983a docs: add general description 2024-10-29 19:14:33 +01:00
Tomasz Cichoń 509e032dbc specctra: echo the imported units when exporting 2024-10-28 23:30:10 +01:00
Tomasz Cichoń 77c0fa2272 specctra: various fixes to import 2024-10-27 07:19:12 +01:00
hakki de0ba42e18 layout: general info about the module 2024-10-22 15:39:27 +00:00
Mikolaj Wielgus 2ef645bbaf fix(cli,tests): set routed_band_width to 100.0 where I forgot
This was making the CLI build and tests fail because my second previous
commit was botched.

For future reference, I fixed the *.cmd files by running the following
in Fish shell:

```
for f in tests/**.cmd
    jq ".done?.[].Autoroute[1].router_options.routed_band_width |= 100.0" $f | sponge $f
end
```
2024-10-22 14:58:20 +02:00
Mikolaj Wielgus 7d75f918e7 feat(autorouter): add pointroute execution, which routes to a point
Not available as a command (for now?). Hasn't been tested yet.
2024-10-22 00:40:40 +02:00
Mikolaj Wielgus dc11b5d8ff feat(egui,autorouter): make it possible to set routed band width 2024-10-21 02:48:04 +02:00
Mikolaj Wielgus e62bac69ef refactor(interactor,egui): pass pointer position down to interactions 2024-10-19 02:10:41 +02:00
Mikolaj Wielgus 1638a289ed fix(egui): rename "Properties" to "Preferences"
I managed to conflate these two because both start with "Pr".
2024-10-17 23:41:37 +02:00
Mikolaj Wielgus ac92623454 refactor(egui): move Properties menu to its own method 2024-10-14 23:24:13 +02:00
Mikolaj Wielgus 941a271339 fix(egui): show language display names instead of codes 2024-10-14 04:26:12 +02:00
Mikolaj Wielgus 4b66e585c5 feat(egui): add radio buttons to choose language 2024-10-14 02:50:05 +02:00
Mikolaj Wielgus 90afd70f2a refactor(egui): move action definitions to a separate file 2024-10-14 01:34:59 +02:00
Mikolaj Wielgus 894326e3d5 fix(egui): actually impl. F1 keyboard shortcut for opening doc 2024-10-13 22:38:00 +02:00
Mikolaj Wielgus 2bc090b132 feat(egui): add `Help > Online Documentation` menu button 2024-10-13 16:25:04 +02:00
Mikolaj Wielgus c1df3ba8ad refactor: move `Interactor<...>` and friends to new module dir, `interactor` 2024-10-12 17:21:34 +02:00
Mikolaj Wielgus 23d1eaa722 refactor: make `Step::step(...)` return `ControlFlow<...>`
This is an iteration on what was suggested in
https://codeberg.org/topola/topola/pulls/79 .

This removes the need to create a new status type for steppers that
have only one intermediate state, and removes unidiomatic `TryInto<...>`
usage to determine if a stepper has finished.
2024-10-12 05:38:57 +02:00
Mikolaj Wielgus a9e42eef17 refactor: make `Step`'s error an associated type
This was suggested in https://codeberg.org/topola/topola/pulls/79.
2024-10-12 05:38:57 +02:00
Mikolaj Wielgus 6104e761d2 refactor: autogenerate getters with `derive-getters` crate 2024-10-11 18:43:15 +02:00
Mikolaj Wielgus bdc021cb6e refactor: destruct with `.dissolve()` autogenerated with `derive-getters` crate
Introduces `derive-getters` as a dependency.
2024-10-11 16:54:53 +02:00
Mikolaj Wielgus 3766ade270 refactor(egui): report invoker error one outside of `Interactor` 2024-10-11 03:20:36 +02:00
Mikolaj Wielgus 489f55a8b0 refactor(egui): split out some activity code to new module, `interactor` 2024-10-11 02:50:42 +02:00
Mikolaj Wielgus 3e9e3c69c9 refactor(egui): make `ActivityContext` generic over mesadata type 2024-10-11 00:05:40 +02:00
Alain Emilia Anna Zscheile 5c377e805b general refactor: omit unnecessary clones 2024-10-10 12:21:54 +00:00
Alain Emilia Anna Zscheile 4f40c26bac chore(autorouter): let ExecutionStepper::step_catch_err take Autorouter as context 2024-10-10 12:21:54 +00:00
Mikolaj Wielgus 8559734336 refactor: rename "trace" to "navcord", "tracer" to "navcorder"
Navcord stands for "navigation cord". I try to prefix anything that is
specific to the navmesh with the "nav-" prefix. I chose the word "cord"
as analogy to the terms "umbilical cord" (and by extension, umbilical
cable), and "power cord".

Calling this "trace" was misleading, as this term has other meanings
that are relevant to Topola: "trace" may refer to a debugging trace, and
more importantly, to a PCB track.

I've also shortened two comments that I found to mention the navcord as
"traces" during substitution.
2024-10-10 03:00:27 +02:00