From kde-kafka Wed Nov 15 12:18:43 2000 From: Jonathan Bacon Date: Wed, 15 Nov 2000 12:18:43 +0000 To: kde-kafka Subject: Re: Event Filtering and Rendering Kafka Objects X-MARC-Message: https://marc.info/?l=kde-kafka&m=97429072304534 On Wed, 15 Nov 2000 11:02:47 +0100 Stefan Schimanski <1Stein@gmx.de> wrote: > > 1. Trapping the event and event type > > > > We can install an event filter over our main widget (KafkaEdit?) which can > > khtml consists of the KHTMLPart and KHTMLView. The view is a normal > scrollwidget. Just inherit from this widget and make KHTMLPart use it as > view. There you will get _all_ events. There is also a method somewhere to > get the DOM object behind a coordinate of the mouse. It is used for example > for links and selections at the moment. Ahhh cool. :-) Looking through the KHTML docs I see there is a nodeUnderMouse() method in KHTMLPart which can be used for selection. If I was to select text in the QScrollView, does it count each letter as an entry in the DOM or the entire word? > > 2. Making the object visually interactive > > > > We have a problem here in that AFAIK all objects that are rendered from the > > contents of the DOM are non-interactive. > > right. > > > - Change KHTML so an object can be made interactive. > > - Create our own part that implements the first part of KHTML > > (tokenizing), the second part (parsing), and before the third part (layout > > rendering) we can subclass from the KHTML rendering classes and add our own > > methods to implement interactivity functionality to the various objects > > before displaying them. > > garbage ;-) in the KHTMLView's paint method the whole layout is first > rendered into a QPixmap. So you're free to draw anything you want above the > rendered stuff. For example you can draw a box while resizing an image. Cool stuff. I am Uni now,, but I will look into this tonight. OK, now this is cleared up I suppose we can get cracking at implementing some of this. If we work on getting Text in and out of the DOM and visually presented first, we can then move onto objects. Does everyone think we should tear our the current code, or put the current code in an old directory in the kdenonbeta/kafka module? Alternatively we could just edit the current code, but that may be confusing. Jono -------------------------------------- Jono Bacon - [vmlinuz] -- jono@kde.org KDE/Qt Developer - Founder of Linux UK -------------------------------------- _______________________________________________ Kde-kafka mailing list Kde-kafka@master.kde.org http://master.kde.org/mailman/listinfo/kde-kafka