Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Files View #3334

Open
wants to merge 35 commits into
base: master
Choose a base branch
from
Open

Files View #3334

wants to merge 35 commits into from

Conversation

ekoneil
Copy link
Collaborator

@ekoneil ekoneil commented Jan 15, 2025

Checkpoint FilesTree. This tree shows files associated with a Skyline project with simple support for replicates and peptide libraries. Includes a simple functional test which is more of a placeholder than an actual test.

FilesTree is incomplete - does not work in all scenarios, is missing files, etc.

… project with simple support for replicates and peptide libraries.

Includes a very simple test which is more of a placeholder than an full fledged test.

FilesTree is incomplete - does not work in all scenarios, is missing files, etc.
…ed strings and bug where FilesTree did not reset properly after a second .sky file was opened during the same Skyline session.
* Remove settings node
* Move .blib files directly under Libraries folder
* Move Audit Log up a level
* Silly bug: clear tooltip when right-click menu shows
…parent container FilesTreeForm. Also moved the tree's ContextMenuStrip into the designer.
* Support background proteome files (.protdb)
* Improve tree node encapsulation
…zard/pwiz into Skyline/work/20250102_FilesView
* Extend Skyline's data model with support for files and groups of files
* Implement file data model on Chromatograms, Peptide Library, and Background Proteome
* Switch UI to new file model

This is far from finished. Current interface names are meh.

Next up: handle document change events incrementally using the model, consider adding IFileProvider to file model.
* Hide tooltip when tree loses focus
* Update SrmSettings with a way to return its files, this unblocks work on FilesTree but needs to be reworked
* Cleanup FilesTreeNode subclasses
* Rename FileType enum values
… FilesTreeForm which handles access to Skyline window (rather than pushing SkylineWindow into FilesTree).

* Also for .skyl / .sky.view: placeholder tooltips, action to Open Containing Folder
… has DocumentFilePath so don't need access to SkylineWindow

* TC code inspection fixes
…zard/pwiz into Skyline/work/20250102_FilesView
* Add IDs on LibrarySpec, BackgroundProteome
* Proper handling of document change events
* Support for handling a model change on FilesTreeNode
* Use FilesTreeNode's Tag to store model (instead of using a separate property)
* Remove the IFileModel interface from BiblioSpecLite

Outstanding issues exacerbated yet not addressed with this change:

(1) Code reuse with SrmTreeNode / SequenceTree. There are opportunities but chose not to tackle them now.
(2) Revisiting Files access from SrmSettings. Handling doc changes now requires lookups by index so put in a temporary fix.

Will revisit both after tree v1 is running and well tested.
* Verify length and order of tree nodes for replicates and peptide libraries
* Verify renaming replicate
* Verify UI actions for opening library dialog / audit log and activating replicate
…er causes subtle failures (example below for future reference) in tutorial tests so switch to simply putting an Id field on the base model.

Example failure:

Assert.Fail failed.  Diff found at line 5 position 50: expected
01:12:15     Settings > Peptide Settings > Background proteome changed from "None" to "Yeast_mini"
01:12:15     actual
01:12:15     Settings > Peptide Settings > Background proteome > Background proteome database path changed from Missing to "Yeast_MRMer_mini.protdb"
1) Reorder replicates
2) Delete replicates
3) Undo
4) Existence of Project Files nodes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant