[PyKDE] Re: KHTMLPart and link navigation
David Boddie
david at boddie.org.uk
Mon Jul 7 20:15:01 BST 2003
On Sun, 6 Jul 2003 18:17:11, Jim Bublitz <jbublitz at nwinternet.com> wrote:
> 2. Check the KDE classref docs (you can get them at kde.org if
> you don't already have them) for KHTMLPart. My first guess would
> be that clicking a link will cause the 'urlSelected' signal to
> be emitted (easy to test), and you can connect a slot to that a
> probably call 'openURL' to load the link (also easy to test).
Or you can just subclass KHTMLPart and create a method to handle clicks.
Something along these lines:
class HTMLPart(KHTMLPart):
def __init__(self, parent):
KHTMLPart.__init__(self, parent)
# Other initialisation code goes here.
def urlSelected(self, url, button, state, target, args):
if button == QMouseEvent.LeftButton:
# Construct a new URL.
new_url = self.make_url(url)
# Inform the parent object of the new URL so that it can
# add it to the history trail.
self.parent.add_next_url(new_url.url(0, 0))
# Open the URL.
self.openURL(new_url)
def make_url(self, url):
# Is the URL absolute or relative?
if KURL.isRelativeURL(url):
# A relative URL
# Join the current URL and the new URL.
new_url = KURL(KURL(self.url()), url)
else:
# Create a KURL object to use to open the new URL.
new_url = KURL(url)
return new_url
# Other methods go here.
More information about the PyQt
mailing list