This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

VocApp-Browse/Navigation

From HL7Wiki
Revision as of 00:00, 2 October 2007 by Gwbeeler (talk | contribs) (→‎Alphabetic Skipping in a Tree View)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

View Navigation

Efficient navigation of the various views of the vocabulary can increase the effectiveness of a person seeking or browsing for a particular concept. This section discusses some of the navigation aids that are available in this application.

Search Capability

At present (September 2007) there is no general search capability provided to find concepts, domains or value sets by searching on names or codes. However, such search capability is supported in the widgets used to build a proposal, and will, over time be extended to more general use.

Tree View Navigation with Keyboard

A tree view control is used to display hierarchical structures in a form that allows expanding or collapsing individual branches of the tree. These controls are used in both the Value Set Navigator and in the Concept Domain viewer. Although the mouse click techniques for working through such a tree are obvious, keyboard mediated navigation can be quite efficient, particularly "arrow key" navigation and jumping to a letter sequence.

Key Navigation in a Tree View

Within the context of a tree view, the four Arrow keys and the space bar have the following effect:

  • ↓ (down arrow)
    Moves the selection down one row in the tree regardless of whether the row below is deeper or shallower in the hierarchy than the current row. This key will not expand a branch that is collapsed (shown with + in front of it).
  • ↑ (up arrow)
    Moves the selection up one row in the tree regardless of whether the row above is deeper or shallower in the hierarchy than the current row.
  • → (right arrow)
    • If the current row is a closed branch (+ in front of it), the branch will be expanded (opened) and the selection will remain on the branch where it started.
    • If the current row is an open branch (- in front of it), the selection will move down to the next row.
    • If the current row is a leaf term, (neither + nor - in front) no change will occur.
  • ← (left arrow)
    • If the current row is an open branch (- in front of it), the branch will be collapsed (closed) and the selection will remain on the branch where it started.
    • If the current row is a closed branch (+ in front of it) or a leaf term (neither + nor - in front) the selection will jump up to the branch that is the parent of the selection.
  • · (space bar)
    The tree view will scroll horizontally to place the text for the current row at the left edge of the control.
Alphabetic Skipping in a Tree View

Movement in a tree view can also be accomplished with the regular keys of the keyboard. In particular:

  1. Keying a single letter will move down the tree to the next node whose text begins with that letter. Thus in the figure at left below, with the selection on MPROT at the top, keying the letter "s" would move the selection down to SBADM the next row whose text begins with "s".
  2. Keying a sequence of letters (with less than 1/2 sec between key presses) will move the selection to the next row whose text opens with the letter sequence keyed. Thus, starting with the figure at left below, the keys "ST" were pressed in rapid succession and the selection hopped to Storage, the first node whose text opens with "St" (middle pane)
  3. This method of skipping selects only those rows that are exposed. If one expands the control act node in the example below, one finds that STC is a child leaf term, which was not selected when "st" was keyed. If the selection is moved back to MPROT and the "st" sequence is again keyed, the selection will now move to STC. (right pane)

Note that the Concept Domain view also uses a tree control. The "single letter selection" method will work in the domain view, but the "key sequence" method will not work. The reason is that when the tree view receives a sequence, it actually moves first to the first node that begins with the first letter and then processes the other keys in the sequence from that point. In the domain view, the first hop initiates the relatively slow process of populating the Value Set Navigation pane, and thus the control is unable to respond to the second and subsequent keys in the sequence.

Keyboard selection in tree (1)
Keyboard selection in tree (2)
Keyboard selection in tree (3)