This is the mail archive of the frysk@sources.redhat.com mailing list for the frysk project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Timeline widget


Both the original timeline widget and the new (so new it hasn't been
released yet) version basically capture and display histograms.  At
every timer pop, the widget initialises a new set of bins (one per
defined event type plus a composite bin containing the sum of the events
that occur) with a real-time timestamp.  If any events have been
recorded in any of the bins at the time of the next timer pop, the bin
set is appended to an events list; if not the set is discarded.  

Also at every timer pop, the contents of the events list are
redisplayed.  In the fairly simple-minded original widget, events are
displayed on a timeline of user-defined duration with "now" at the right
edge of the window.  The newer widget expands on that by allowing the
user to control the portion to be displayed:

    * Set, via spin boxes, start and stop time delays.
    * Set, via spin boxes, a stop delay and duration.
    * Set any of these by grabbing and sliding either end, or the
      middle, of a custom scrollbar.
    * Lock the start time, allowing the start delay to be updated
      synchronously with the timer.
    * Lock start and stop times, freezing the display, with both start
      and stop delays to be automatically updated.
    * Snap the start time to the oldest available sample.
    * Snap the stop time to "now."

(Of course, all these controls are non-orthogonal and interact, which
can be a real hair-tearer.)

I'm also adding a thing to the custom scrollbar that displays a
background miniature histogram of the entire event set, in theory making
it easier for users to find "interesting" stuff when the main display is
only showing a subset of the events.  Once I've got all that nailed
down, I expect I'll re-implement the events list as a circular buffer
(probably of user-defined temporal duration rather than a fixed memory
size) to limit memory usage.

Attachment: signature.asc
Description: PGP signature

Attachment: signature.asc
Description: OpenPGP digital signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]