Commit Graph

161 Commits

Author SHA1 Message Date
Emilia Allison 32dd3814af
Allow changing source interleave
... and of course a fix to the
replicate math with a source interleave.
2023-05-25 12:29:17 -04:00
Emilia Allison aee565dbb3
Remove NewTransferState
It was bad not very good design!
Use CurrentTransfer instead.
2023-05-25 12:07:21 -04:00
Emilia Allison a1a0430ec3
Fix replicate with destination interleave 2023-05-25 11:43:01 -04:00
Emilia Allison 74fa50bc0c
Visualize transfers 2023-05-24 18:39:38 -04:00
Emilia Allison cd1f72fd9d
Debug for many structs 2023-05-24 16:10:51 -04:00
Emilia Allison 0414ddba3a
Give plate components their instance 2023-05-24 16:10:33 -04:00
Emilia Allison 6e8c1eff55
Only modify NewTransferState by reduce_mut 2023-05-24 15:49:07 -04:00
Emilia Allison 1b0be78e85
Plate switching! 2023-05-24 11:42:54 -04:00
Emilia Allison 5be70675ee
Allow selection of plates in tree 2023-05-24 11:20:12 -04:00
Emilia Allison 85f3fbd113
Close and delete plates 2023-05-23 21:08:32 -04:00
Emilia Allison 5c3fa24f20
Backdrop for new plate modal 2023-05-22 20:48:47 -04:00
Emilia Allison e0ff131cd7
Persist state on reload 2023-05-22 20:48:17 -04:00
Emilia Allison 282369346c
New plate dialog 2023-05-22 18:31:02 -04:00
Emilia Allison ed816d3bbe
Basic tree view, and adding plate instances
It's... not a tree?
2023-05-22 18:11:49 -04:00
Emilia Allison 00f39e636a
Highlight bad input regions
If an invalid region is inputted,
make it red.
2023-05-22 14:07:50 -04:00
Emilia Allison c3270d3c59
Elements for interleave in transfer_menu 2023-05-22 13:55:23 -04:00
Emilia Allison dbb13bde58
Allow single well selection in source 2023-05-22 13:46:29 -04:00
Emilia Allison f8f29cfbf1
Glue destination plate, add selection behaviour 2023-05-22 13:45:48 -04:00
Emilia Allison 7490a319c7
Update Cargo.toml 2023-05-22 13:45:20 -04:00
Emilia Allison 4c025d8cad
Clean up destination_plate 2023-05-22 13:30:02 -04:00
Emilia Allison 61ac574b70
Fix unchecked try_from 2023-05-22 13:29:19 -04:00
Emilia Allison a294cffd50
Glue source_plate to transfer_menu 2023-05-22 13:25:16 -04:00
Emilia Allison ae73d67924
Clean up source_plate 2023-05-22 12:22:22 -04:00
Emilia Allison ba3eca603b
Complete port to yew
This is the biggest commit of all time.
Yew requires so much cloning smh
As a side note, if you drag to select the plate a lot,
it uses a lot of CPU resources.
2023-05-22 11:35:42 -04:00
Emilia Allison 240c37a94d
Switch to Yew in Cargo 2023-05-21 21:54:04 -04:00
Emilia Allison 1fd2119e1e
Fix some debug assertion tags
Not relevant anyway because I think I'm going to have to stop using
Dioxus.
2023-05-21 21:47:29 -04:00
Emilia Allison db83921ffd
Add Fermi as dependency
I do not feel good about this ecosystem.
I really, *really* do not like that I have
to use the git version.
I have again looked at the alternatives,
and without just porting to JS (no thanks)
I don't think I have any other choices;
I wasn't happy with Yew's documentation
(I'm not happy with Dioxus' documentation
either, to be fair).
2023-05-21 21:13:55 -04:00
Emilia Allison b97726c297
TryFrom (u8,u8,u8,u8) for RegionDisplay 2023-05-21 20:14:55 -04:00
Emilia Allison 6612e74b69
Function for taking number to letter representation 2023-05-21 20:10:13 -04:00
Emilia Allison 8598f09648
Struct for managing display of regions
TryFrom for (u8,u8,u8,u8) will be next commit :)
2023-05-21 18:05:46 -04:00
Emilia Allison 303831bda3
Remove dummy components 2023-05-21 12:48:42 -04:00
Emilia Allison 98038944f2
Wireframing and restructure 2023-05-21 12:45:12 -04:00
Emilia Allison 67738543cc
Fix drag issue
These few lines of code are going to plague this project.
Transiently, this solution doesn't seem fast enough and
will "forget" that the mouse button is being held during
a drag.
I'm using mouseenter instead of mouseover because it
should trigger less often---this ought to be more efficient(?).
2023-05-20 22:51:32 -04:00
Emilia Allison e0563d7b9b
Add dummy div to plate cells
This exists solely to have the hitbox
for the cells be rectangular while the
appearance of the cells is circular.
2023-05-20 21:38:52 -04:00
Emilia Allison 0ed4fe8809
Switching back to UI testing 2023-05-20 21:29:21 -04:00
Emilia Allison 46c09a598e
Remove dead code 2023-05-14 20:50:33 -04:00
Emilia Allison 91035bc675
Disable divisibility checking 2023-05-14 20:50:17 -04:00
Emilia Allison 0b8b067e46
Fix for validating replicate divisibility 2023-05-14 20:39:46 -04:00
Emilia Allison 11a77fa276
Add tests for replicate transfer 2023-05-14 20:30:31 -04:00
Emilia Allison 6b03e89854
Add tests for simple transfer region 2023-05-14 17:22:50 -04:00
Emilia Allison 43331ff8f2
chore: format 2023-05-13 19:13:29 -04:00
Emilia Allison 6a9a7ff0ff
Implement replicate transfers 2023-05-13 19:12:37 -04:00
Emilia Allison 0f8eed0aae
Implement replicate transfers 2023-05-13 19:12:16 -04:00
Emilia Allison b4faca150d
Change empty well symbol (easier to read) 2023-05-13 17:35:47 -04:00
Emilia Allison 6b12335bbc
Modify comments in validation 2023-05-13 15:21:05 -04:00
Emilia Allison 217561bdd7
Fix validation for replicate transfer
Unchecked as of this commit
2023-05-13 15:20:25 -04:00
Emilia Allison f5ba580e73
Switch to match
Will be needed to implement replicate transfers
2023-05-13 11:57:18 -04:00
Emilia Allison 1501651844
Use validate to save time in calculate_map 2023-05-13 11:53:55 -04:00
Emilia Allison f6045743e6
Remove dead code 2023-05-13 11:53:04 -04:00
Emilia Allison a31c40a1a0
Removed explicit pooling transfer
The handling of destination interleaves is robust enough
that this behaviour comes for free---no need to duplicate.
2023-05-13 11:45:45 -04:00