Visual History Report - update

Keith Hans keithhans at
Sun Aug 7 18:17:53 CEST 2005

Hi all,

It has been a long time since last report. I came back to school last
week and was busy with other stuff. However, I managed to work at
night and weekends.

During the week at home, I went on reading source code of konqueror
and focused my attention on konqueror sidebar.

The last week:
Mastered debugging konqueror with dynamically linked modules. (Thanks
David and Thiage!) This helped a lot. I realized KonqHistoryManager
manages the very history info I'm interested. Then I added some
functions & classes around there.

I introduced a class KonqHistoryEdge to store the history info i need.
It is defined as:
class KonqHistoryEdge
QDateTime jumpTime;
QString srcURL;
QString dstURL;

When user clicks a link in page A  and jumps to page B, jumpTime is
the jump time, srcURL is the url of page A and dstURL is the url of
page B.

Currently, a new KonqHistoryEdge instance is created everytime
KonqMaindow::openURL() is called. Though there are exceptions where
the info should not be stored to history, I decided to put them aside

All the KonqHistoryEdges are put in a list which is read from disk
when konqueror starts and is stored to disk when updated.

Up to now, this internal history structure part works smoothly, while
the DCOP interface is left unimplemented.

Tasks next week:
Add a new viz history module that could basically work.

1. How to add a new sidebar module to konqueror?
As mentioned by David in earlier letter, there is a sample plugin in
test/, but that there is no *.so at test/.libs after compilation. (I'm
using kdebase-3.4.1). It seems that some stuff is missing. Is there
any config file that I should manually create to add a new plugin?

2. Is there any high level graph lib that I can use?
Obvious, the classes used by existing konqueror sidebar plugin does no
fit mine. What i what is a lib/class giving a set of nodes and edges,
it could draw a graph. It is idea if the nodes and edges of the graph
can be manipulated(delete, move, etc) when clicked. Is there any
similar programs that I can use for reference or any classes that meet
my need?


More information about the Kde-soc mailing list