--- Begin Message ---
- From: Sami Wagiaalla <swagiaal at redhat dot com>
- To: Chris Moller <cmoller at redhat dot com>
- Cc: frysk at sources dot redhat dot com
- Date: Tue, 04 Apr 2006 16:50:04 -0400
- Subject: Re: Timeline widget
- References: <4432B108.1090100@redhat.com>
So me and Adam ran into conceptual problems with the time line
widget when we were doing the Source-Monitor integration brainstorm.
For example what do you do when a thread is paused do u stop the time
line since the thread is not executing (processor time), or continue since
real time is moving.
In my humble opinion I dont think that our users care about "time". What
they care about is which event happened before/after wich. The model I
have in mind is that of print statements. Imagine our time line as fancy way
of displaying prints in a program. so the time line does not move unless
events
are fed into it. However we have to invent a mechanism to make sure that we
preserve the before/after relation of events across different time-lines
within
the same "Debug Session".
So for example two threads of one process, the first thread receives a
request
from the user, fires a "request received" event(A), and adds that event
to a request
queue. Second thread checks queue, finds the request, picks it up and
fires a
"request processed"(B) event. This is what the time-lines should look like:
Process : ----------A----------B---------------
thread : ----------A--------------------------
thread : ---------------------B---------------
...
other timelines: -----------CDEFGHIJKL----------------
Please let me hear you comments and thoughts about this. I also wonder
if this is more or
less obvious to users that the real-time-time-line :)
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.
Wow! this would be really cool! Does that use cairo ? Here is a link to
a paper that i ran into in the Gnome Gournal:
http://gnomejournal.org/article/34/writing-a-widget-using-cairo-and-gtk28
and here is part 2:
http://www.gnomejournal.org/article/36/writing-a-widget-using-cairo-and-gtk28-part-2
I havent read them so i dont know if it is what you are looking for but
the pictures looked cool :D
--- End Message ---