|
(A) Appendix: Review Notes
In the circumstance of series data having:
it would be useful to hide series elements (generally, timesteps) having trivial or repeated values in the series display.
Two new optional "Display Compression Filters" will be implemented in the prominent series data displays, (see "Scope", below) -- (names are tentative):
TO BE DETERMINED: It may or may not be reasonable to apply these filters simultaneously. The aspect of this which needs to be considered carefully is whether edit operations can be made to be coherent when both filters are applied. (The Suppress Repeated Values filter has special editing behavior, described below).
Relevant to the description below, these features will be implemented with series displays which show series vertically, as columns. When multiple series are displayed together, each series is displayed as a column, and each row corresponds to a particular timestep date/time (or integer index).
Series Display Compression will be implemented for the Open SeriesSlot Dialogs, and similar applications of the same C++ classes (SlotQtDlg and SlotQDlgTable). These are:
Series Display Compression will NOT be implemented for the following series data displays. (These are implemented with different C++ classes):
When series elements are hidden as a result of the Display Compression Filters, a corner triangle will be displayed to indicate the absence of values. The corner triangle will be drawn on the cells above the omitted series elements. See images below.
Note that the cell having the ornamentation has a fundamentally different relationship to the hidden cells with these two filters.
![]() |
Suppress NaNs |
![]() |
Suppress Repeated Values |
When hovering over a cell ornamented by one of the Display Compression Filters, a tooltip (balloon text) will indicate the nature of the subsequent hidden values.
If only a single series is displayed (i.e. with a single GUI column), tooltips for the two filters will have text like this:
If multiple series are displayed (i.e. each in its own GUI column -- see a subsequent section), tooltips for the two filters will have text as follows. (With these semantics, the tooltip for cells in each of the series will be the same):
That is, note that in any given series in a multiple-series display, there can be additional NaNs or repeated values, shown because of non-conforming NaNs or repeated values in other series at those respective series indices.
Series elements which are hidden due to the "Suppress NaN" filter are not effected by direct edit operations -- i.e. values entered within a selected cell or in the main edit line editor (which causes values to be assigned to all of the selected cells).
The following operations DO effect series elements hidden due to the "Suppress NaN" filter when those elements are part of a selection spanning hidden elements:
Copy and Paste operations are disabled if the current selection spans hidden elements.
Series elements which are hidden due to the "Suppress Repeated Values" filter are effected by direct edit operations -- i.e. values entered within a selected cell and in the main edit line editor (which causes values to be assigned to all of the selected cells). Basically, the value applied to the visible initial value is also applied to the subsequent hidden values.
The following operations also effect series elements hidden due to the "Suppress Repeated Values" filter when the visible initial element is part of the current selection:
Copy and Paste operations generally are disabled if the current selection includes a visible initial element preceding cells hidden due to the "Suppress Repeated Values" filter. One exception is that the Copy and Paste operations are enabled if current selection is limited to such an element (a visible initial element) -- in that case, the Copy operation takes just the single value, but the Paste operation is applied to the full set of contiguous repeated values (if there is a single value in the copy buffer -- otherwise, the Paste operation is disabled).
When there are multiple series displayed in distinct GUI columns, the filters will be applied to all visible columns. For any particular row to be hidden, the respective filter criteria must apply to all series.
Note: The Tooltip text needs to be adjusted (probably) when multiple series are displayed. See a prior section, "Tooltips".
To emphasize the potential of hidden series elements, a "Display Compression Toolbar" will be shown along the top of the dialog box or immediately above the data table, with a brightly colored background. This will include a horizontal arrangement of toggles for the various filters, including a no-filter selection, and a Dismiss Compression button (which also selects the no-filter state). Other filter-related controls or display fields may also be managed in this toolbar. [This won't be implemented as an actual QToolbar].
Under the Dialog Box's "View" menu, the following submenu will be implemented:
Display Compression | >> | (o) Suppress NaNs |
The "Suppress Repeated Value" filter will use display precision for the determination of whether a value is repeated from (i.e. equivalent to) the prior value.
An alternative (which would be more efficient in terms of run-time performance) is to use internal precision (preferably standard unit values, possibly without tolerance). But users will likely prefer the use of display precision.
The selection of a Display Compression filter will not persist. It will default to Off ("Show All Values") when re-opening any of the relevant series display dialog boxes.
If Persistence were required for the filter selection, it would have to be implemented on the following objects. That is, the Display Compression filter state (if not "Off") would have to be written to the RiverWare model file for these objects.
-------- Original Message -------- Subject: Re: Draft Design: RiverWare Series Display Compression Date: Fri, 10 Aug 2007 12:39:41 -0600 From: Patrick Lynn ... a few comments: 1. If the users were willing to see some NaN's we could get away with just the suppress repeated values filter, i.e., 1 NaN NaN NaN 2 would become 1 NaN (w/ triangle) 2 2. When filtering is on, what visual indication is there that this is so other than the possible appearance of triangles? Phil's response: This need was one of the reasons for the "Display Compression Toolbar", with a brightly colored background, to be shown when filtering (display compression) is on. See the section on "Dialog Box / Menus". Note however that (I'm recommending that) the user will be able to temporarily disable the filtering effect with a toggle button in that toolbar. But that will not be the default, or typical, state of filtering when the Display Compression Toolbar is shown. The reason for that toggle is that the user may want to quickly switch filtering on and off without having to operate a menu item. 3. If it's easy to turn filters on and off and selections remain, then it might be safter apply editing of repeated values only to the selected cell, perhaps provide a way to select the entire range of repeated values ... Seems a bit dangerous to change all the values. Patrick
--- (end) ---