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

Wrong hiding when using multiple message types and labels #451

Closed
Nesos-ita opened this issue May 29, 2018 · 7 comments
Closed

Wrong hiding when using multiple message types and labels #451

Nesos-ita opened this issue May 29, 2018 · 7 comments

Comments

@Nesos-ita
Copy link

Nesos-ita commented May 29, 2018

Expected Behavior

I have two message types, one label in the first, and two labels in the second.
Hiding the label in the first message type should hide only the labelled bits, and only of that message type.

Actual Behavior

If a label say "bit 1-31" bits 1-31 are hidden regardless of the message type
Other problem: if i hide some labels, enable and disable "mark diff in protocol" in the moment i disable it, every label become visible also if it is unchecked
checking and unchecking the label hides again the label

Steps to Reproduce the Problem

  1. Add two message types and one label per message type
  2. set two rows as two different message types
  3. hide one label
  4. (part of) the other is hidden too

Check the photo:
bits 20-28 of row 2,3,4 are part of a short pause but i setted it as sync too
bug

Platform Specifications

  • Python Version: installed 3.6 but it uses 3.5 included with the msi
  • Operating System: win8.1 x64
  • Version of URH: 2.0.4 MSI installer x64
  • URH was installed: via msi
@jopohl
Copy link
Owner

jopohl commented May 29, 2018

Yes, hiding a label does not work message type wise it is a global setting. You can also verify this by looking at the column headers. Hiding a label hides the entire column. Doing otherwise would lead to a wrong display of column numbers.

@Nesos-ita
Copy link
Author

Nesos-ita commented May 29, 2018

mmm so how do i solve my problem? i'd like to see only "message" and not preamble/sync, possibly without editing all the signals to keep only the data part.
The only way i can acheive this is probably by disabling message break on pause (threshold=0) and using ZeroHide plugin.
also what is the point of having multiple message types if i can't keep enabled only one? for example if i have a transerceiver and i set two message types "query" and "answer" and i'm interested only in answers.
i'm a bit confused
If someone hide yellow label in my case he doesn't expect to have three blue bits deleted.
What about hiding labels by leaving an empty hole and deleting the hole+column header only if that column is empty for each row?
For example, in your case:
bug2

  • you could leave two empty bits if you hide red label
  • leave three empty bits if you hide the yellow one
  • leave bit 3 yellow empty and completly delete column 4 and 5 if you hide both labels

(also deleting empty rows like the first in my case)

@jopohl
Copy link
Owner

jopohl commented May 29, 2018

Well, in your case it would be much easier to use a Filter located at the top of Analysis as shown below:
bildschirmfoto_2018-05-29_20-18-20

You would simply enter, e.g., the synchronization bits, hit "Filter" and all messages not containing this pattern will be hidden, which are the preambles in your case. Note, you must first select the "Filter" as the button uses "Search" as default.

The problem with the bit hiding is not that easy to solve. If you simply leave bits out e.g. by replacing them with a "-" you loose the ability of alignment. However, I see your point, it may confuse users as it is not the expected behaviour.

@Nesos-ita
Copy link
Author

Nesos-ita commented May 29, 2018

Nice, it works :) i'm still a bit confused for the hiding, i have to think more about it.
the only left problem is that hidden labels are not kept hidden:

  • if i click mark diff (enable and disable), on disable hidden labels are shown again
  • if i click show only diff (again on disable)
  • if i click filter (maybe this one is wanted since i'm searching/filtering for this)
  • deselecting a whole signal make it show hidden labels and undo the filter

@jopohl
Copy link
Owner

jopohl commented May 29, 2018

I cannot reproduce this. Can you give a minimal workflow for reproduction?

The only way I can bring hidden labels back up again is by selecting "Show only diffs in protocol" which is intended behaviour to show the label here if it belongs to the diff.

@Nesos-ita
Copy link
Author

Nesos-ita commented May 29, 2018

seems that it happens if:

  • you have two message types
  • i setted one label per message type
  • one label is a column other is a row and they must collide/intersecate
  • hidden a label
  • enabled and disabled show diff

same happens if i enable and disable the first signal (but not the second), while in my project everything is shown only if i disable all signals and show at least one, changing only one signal (first included) doesn't cause any bug

@jopohl
Copy link
Owner

jopohl commented May 30, 2018

Thanks I was able to reproduce this behaviour and fixed it in #452.

@jopohl jopohl closed this as completed May 30, 2018
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

No branches or pull requests

2 participants