Bug 684 - Digital signals: snap cursor to edge
Summary: Digital signals: snap cursor to edge
Alias: None
Product: PulseView
Classification: Unclassified
Component: Markers (show other bugs)
Version: unreleased development snapshot
Hardware: All All
: Normal normal
Target Milestone: PulseView 0.6.0
Assignee: Nobody
Keywords: low_hanging_fruit
: 1221 (view as bug list)
Depends on:
Reported: 2015-10-31 10:21 CET by Tilman Sauerbeck
Modified: 2018-09-29 17:06 CEST (History)
5 users (show)


Note You need to log in before you can comment on or make changes to this bug.
Description Tilman Sauerbeck 2015-10-31 10:21:45 CET
I'm often using cursors to measure the time passed between two edges of a signal. With the current version of pulseview, putting the cursor exactly on top of the edge can be a bit of a hassle.

I suggest to make the cursor snap to the edge when moving the mouse on top of it.
Comment 1 joefitz 2018-05-03 21:48:33 CEST
I'd like to bump this feature request.

When it was filed, it was a nice-to-have UI feature. Now, pulseview is so slick and awesome, this is the final feature preventing me from using it in my classes and broadly recommending pulseview over commercial alternatives.

In addition to snap-to-edge, snap-to-sample would be a nice to have. Psuedocode might be:

When dragging timing marker:
If CTRL (or other) key is pressed
-- place cursor in absolute position
-- If mouse over a dataline
---- If nearest edge on moused-over dataline is < (5% * Display width)
------ Then snap to nearest edge of datalin
------ Else snap to nearest sample edge

Without looking at the code i imagine the process of figuring out which dataline is moused over could be difficult, universally snapping to any dataline's edge would be nice
Comment 2 Uwe Hermann 2018-08-19 16:57:29 CEST
*** Bug 1221 has been marked as a duplicate of this bug. ***
Comment 3 Uwe Hermann 2018-08-19 16:58:18 CEST
Convenience paste from #1221:

whitequark 2018-06-06 19:49:44 CEST

When I use markers, I almost always (if not always period) want the markers to be positioned as closely as possible to the edges of the logic signals. Right now this often requires zooming in, placing the marker, zooming out, navigating elsewhere, zooming in, placing the marker...

It would be great if, when moving the individual markers as well as both markers together, they would jump from edge to edge instead of being moved continuously. Same for the cursor marker from PR770.

It would be even nicer if, when some channels are selected, the markers would snap not to just *any* edge, but only to edges on selected channels.

[reply] [−] Comment 1 Uwe Hermann 2018-06-06 19:56:39 CEST

Agreed, though IMHO it should still be possible to place markers anywhere without snapping as well; you don't necessarily *always* want them to be on some edge.

[reply] [−] Comment 2 whitequark 2018-06-06 20:23:13 CEST

Sure. Usually there is a button in the UI with a magnet on it that turns it on and off.
Comment 4 Uwe Hermann 2018-09-29 14:13:41 CEST
Fixed in eeceee9955e7db4ac777d49d1b7a766069476b08, thanks a lot!

This currently allows snapping to edges of individual channels (always snaps to the edges of the channel that your mouse is hovering over).

Additional snapping related bugs are now open as #1290, #1291, #1292, #1293.
Comment 5 whitequark 2018-09-29 17:06:34 CEST
Thanks for the fix!