Commit Graph

1237 Commits

Author SHA1 Message Date
Mikolaj Wielgus a5503de0a2 feat(egui): use smaller color theme toggle like in Egui's demo 2024-12-09 14:22:38 +01:00
Mikolaj Wielgus 4b16285143 refactor(egui): move layer colors to `Config` 2024-12-09 14:22:38 +01:00
Alain Emilia Anna Zscheile 1fd61f773c feat: improve Selection API (BREAKS HISTORY)
Test command files were rewritten using:

```
for f in tests/**/*.cmd; do jq ".done?.[].Autoroute[0] |= .selectors" "$f" | sponge "$f"; done
```
(compatible with bash/zsh/...)
2024-12-08 16:20:05 +00:00
Alain Emilia Anna Zscheile 5a26c02b4e refactor(ApplyGeometryEdit): make 'apply' take 'GeometryEdit' by reference 2024-12-08 16:20:05 +00:00
Alain Emilia Anna Zscheile 27a4b61c4d refactor(topola): get rid of unnecessary clones and lookups 2024-12-08 16:20:05 +00:00
hakki 5425ac2d3a egui: fixed typo in build 2024-12-08 13:56:59 +01:00
Mikolaj Wielgus 2337576245 refactor(egui): rename "layers" to "appearance panel" 2024-12-08 02:22:12 +01:00
Mikolaj Wielgus c87224e99a docs(router): add and rewrite some navmesh and navcord docstrings 2024-12-07 05:53:39 +01:00
Mikolaj Wielgus df1578a094 test: test the number of navmesh vertices 2024-12-07 05:41:00 +01:00
Alain Emilia Anna Zscheile ac2b664901 chore: remove fp-info-cache files from repo 2024-12-06 20:52:37 +01:00
Alain Emilia Anna Zscheile cbf99e0a6e feat(specctra-core-fuzz): actually test roundtrip through serialization+parsing 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile e381731475 feat(specctra-core/write): get rid of unnecessary restrictions on method args 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile acab24d7d4 feat(specctra-core-fuzz): add another fuzz target (for 'Structure') 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile c1101b4304 doc(specctra-core-fuzz): provide README.md with invocation example 2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile 0b37bb2dbc feat: add rudimentary fuzzer for specctra-core DSN parser
Fixes #110
2024-12-06 14:38:09 +01:00
Alain Emilia Anna Zscheile 0fe23c9c71 build: put `specctra` module into separate crate 2024-12-06 14:38:00 +01:00
Alain Emilia Anna Zscheile e77a034634 chore: bump dependencies (mostly geo, thiserror) 2024-12-05 19:17:43 +01:00
Mikolaj Wielgus 848a497991 fix(egui): show ratsnest by default
Closes https://codeberg.org/topola/topola/issues/118
2024-12-05 07:47:21 +01:00
Mikolaj Wielgus 577e1a5b11 chore(gitignore): ignore KiCad lockfiles and `fp-info-cache` 2024-12-04 23:49:45 +01:00
Alain Emilia Anna Zscheile 3bd6a927b9 refactor(specctra/mesadata): more idiomatic Option handling 2024-12-04 15:39:41 +00:00
Alain Emilia Anna Zscheile 5b7f4588a0 feat(specctra/mesadata): deduplicate net names 2024-12-04 15:39:41 +00:00
Alain Emilia Anna Zscheile 0b9d3c0a00 fix(specctra/design): invalid references shouldn't panic during serialization 2024-12-04 15:39:41 +00:00
Alain Emilia Anna Zscheile 0a862a7e5f refactor(specctra/structure): get rid of code duplication in Vec<Point> 2024-12-04 15:39:41 +00:00
Alain Emilia Anna Zscheile da72118255 fix(specctra): return error when point fails to parse first f64 2024-12-04 15:39:41 +00:00
Mikolaj Wielgus b8adfec817 fix(geometry): fix bend joint order and correct tangent clockwiseness
Now bends should cease to seemingly randomly invert their order.
2024-12-04 04:45:39 +01:00
Mikolaj Wielgus 2703f662ac fix(autorouter): have band removal and via placement in undo/redo 2024-12-03 23:54:18 +01:00
hakki 75aa4ea443 Docs: fixed minor typo in installation guide 2024-12-03 16:08:27 +01:00
Mikolaj Wielgus c2daf9fbfe feat(autorouter): use recorded edit applying for undo/redo 2024-12-03 08:35:11 +01:00
Mikolaj Wielgus d17a34c0f6 fix(geometry,router,autorouter): some more fixes for edit recording 2024-12-03 00:39:02 +01:00
Alain Emilia Anna Zscheile 5aae676fb8 refactor(specctra/read): put read_quoted into a separate function again 2024-12-02 22:45:32 +01:00
Alain Emilia Anna Zscheile e493c16053 fix(specctra/read): panic when return_token would override cached token 2024-12-02 22:41:23 +01:00
Alain Emilia Anna Zscheile 9ddc83e72a feat(specctra/read): separate function to discard peeked char
This is useful to get rid of the pattern "self.next_char().unwrap();",
which makes it harder to assess panic safety of parsing code
(which should never panic via its public interface)
2024-12-02 22:41:23 +01:00
Alain Emilia Anna Zscheile 1d0c2cf953 fix(specctra): less (possible) panic!s in read_string 2024-12-02 22:41:23 +01:00
Mikolaj Wielgus 0cac186aa4 fix(cargo): remove accidentally added unused cargo dependency 2024-12-02 06:06:41 +01:00
Mikolaj Wielgus fe8fd3909f fix(autorouter,router): actually propagate the edit out of route steppers
I forgot to do this earlier, and didn't notice because I didn't test
it. There are still a few changes to be done before recording and edit
applying is functional.
2024-12-02 05:56:37 +01:00
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
Alain Emilia Anna Zscheile 3bdfa8c12e fix(cli): compilation failure fix about missing Option<LayoutEdit> 2024-11-29 12:51:44 +01:00
Mikolaj Wielgus db9d897315 refactor(autorouter): store edits in history entries 2024-11-29 03:45:48 +01:00
Alain Emilia Anna Zscheile e0de008f51 build/deps(egui): bump icu_experimental to v0.2; replace icu_locid -> icu_locale_core 2024-11-28 21:28:29 +01:00
Alain Emilia Anna Zscheile 070fe2c176 build(egui): depend on icu_{experimental,locid} directly to reduce deps 2024-11-28 17:19:18 +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 adc1852b46 build/trunk: fix WASM build 2024-11-22 17:24:03 +01:00
Alain Emilia Anna Zscheile cbd3c77821 build/refactor: move secondary crates into 'crates' folder named by crate name 2024-11-20 15:44:02 +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