Skip to content

Conversation

Alexander-Sol
Copy link
Contributor

Summary
This PR introduces three new classes—SelectedPrecursors, SelectedPrecursorWindow, and SelectedPrecursorForDataGrid—that enable users to manually create and manage a list of selected precursors for use in MRM (Multiple Reaction Monitoring) data analysis.

Key Changes

  • SelectedPrecursors

    • Stores the complete set of user-defined precursors.
    • Supports adding, editing, and removing precursors.
    • Designed to integrate with downstream precursor selection logic in the search workflow.
  • SelectedPrecursorWindow

    • GUI component for building and managing the selected precursor list.
    • Allows manual entry of precursor m/z, charge state, and retention time bounds.
    • Supports inline validation to prevent invalid precursor entries.
    • Integrates with SelectedPrecursors for persistent storage within a search task.
  • SelectedPrecursorForDataGrid

    • Model class tailored for binding to WPF DataGrid controls.
    • Provides property change notifications for UI updates.
    • Encapsulates per-row precursor information with editable fields.

Motivation
MRM data workflows often rely on a predefined set of targeted precursors. Previously, MetaMorpheus had no built-in way for users to manually supply and manage such lists. These new classes:

  • Allow users to enter selected precursor information directly into the UI.
  • Provide an easy-to-edit, spreadsheet-like interface for managing targeted lists.
  • Ensure that the manual list integrates seamlessly into MRM precursor selection during GetMs2Scans.

Next Steps

  • Integrate the manual selected precursor list into MRM-specific filtering and search workflows.

Copy link

codecov bot commented Aug 12, 2025

Codecov Report

❌ Patch coverage is 99.41176% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 96.63%. Comparing base (67a162e) to head (eadc2c2).

Files with missing lines Patch % Lines
MetaMorpheus/EngineLayer/PrecursorSet.cs 97.82% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2554      +/-   ##
==========================================
+ Coverage   94.71%   96.63%   +1.91%     
==========================================
  Files         158      160       +2     
  Lines       17548    23996    +6448     
  Branches     3293     3339      +46     
==========================================
+ Hits        16621    23188    +6567     
- Misses        508      803     +295     
+ Partials      419        5     -414     
Flag Coverage Δ
unittests 94.74% <99.14%> (+0.02%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
MetaMorpheus/EngineLayer/SelectedPrecursors.cs 100.00% <100.00%> (ø)
MetaMorpheus/EngineLayer/PrecursorSet.cs 97.82% <97.82%> (ø)

... and 152 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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