Details
-
Type: New Feature
-
Status: Open
-
Priority: Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: Feature Request
-
Labels:None
-
Mantis ID:34729
Description
Suggested by David Martin:
When set, any rows whose visible portion at the current position consist entirely of gap characters will not be rendered.
This has the following effect:
refseq 1234567890
seqa ---aaa----
seqb bb--------
seqc cc--cccc--
seqd ----dddddd
With 'autohide' enabled, if the first four columns of the view are shown:
.......1234
refseq 1234
seqa ---a
seqb bb--
seqc cc--
seqd is hidden.
Scrolling the view to the right by 1:
refseq 2345
seqa --aa
seqb b---
seqc c--c
seqd ---d
Scrolling the view to the right by 1 again :
refseq 3456
seqa -aaa
seqc --cc
seqd --dd
Scrolling the view to the right:
refseq 4567890
seqa aaa----
seqc -cccc--
seqd -dddddd
etc.
This kind of view would be great for viewing short sequencing read data on a longer reference contig, golden path, or other assembly construct.
****** ADDITIONAL INFORMATION ******
This would be a view-specific visualization property.
Implementation would require an additional pass on the SequencePanel rendering loop to first determine if there are 'empty sequences' about to be displayed at a new render position, and if so to update a list of currently displayed sequences (which is the union of the ones that are explicitly hidden). Optimization of this additional pass is necessary to ensure it is only made when additional columns appear in the displayed part of the viewport.
Wrapped mode+autohide:
Each block of sequences shown in wrapped mode would be treated as independent visualization segments, so for each block the same 'auto hide' pass would be made to determine if a row consists entirely of gap characters.