This fixes the problem where you could follow a link that links to a pre-extracted chunk and then get errors complaining that the graph wasn't available on the server. It also fixes the problem where editing the tracks would produce the same error, and the problem where, if you de-selected a track file for a pre-generated chunk, you couldn't re-select it.
Now we have a notion of "implied" tracks that come from the chunk or the link, which will display a little (?) in the file picker to represent that the server doesn't actually know about them. We now know better than to ask for the paths in them.
This also has to add a lot of logic for keeping the implied tracks and the selected tracks in sync with each other given the different ways they can be modified. And I'm also adding logic to keep the BED regions and the BED file name in sync, and the path names in sync with the graph.
This fixes the problem where you could follow a link that links to a pre-extracted chunk and then get errors complaining that the graph wasn't available on the server. It also fixes the problem where editing the tracks would produce the same error, and the problem where, if you de-selected a track file for a pre-generated chunk, you couldn't re-select it.
Now we have a notion of "implied" tracks that come from the chunk or the link, which will display a little
(?)
in the file picker to represent that the server doesn't actually know about them. We now know better than to ask for the paths in them.This also has to add a lot of logic for keeping the implied tracks and the selected tracks in sync with each other given the different ways they can be modified. And I'm also adding logic to keep the BED regions and the BED file name in sync, and the path names in sync with the graph.