[rkward-cvs] SF.net SVN: rkward: [1097] trunk/rkward/rkward/windows/rkhtmlwindow.cpp
tfry at users.sourceforge.net
tfry at users.sourceforge.net
Mon Jan 8 16:10:08 UTC 2007
Revision: 1097
http://svn.sourceforge.net/rkward/?rev=1097&view=rev
Author: tfry
Date: 2007-01-08 08:10:08 -0800 (Mon, 08 Jan 2007)
Log Message:
-----------
fetch titles for help pages, and some corrections / cleanups
Modified Paths:
--------------
trunk/rkward/rkward/windows/rkhtmlwindow.cpp
Modified: trunk/rkward/rkward/windows/rkhtmlwindow.cpp
===================================================================
--- trunk/rkward/rkward/windows/rkhtmlwindow.cpp 2007-01-08 16:09:10 UTC (rev 1096)
+++ trunk/rkward/rkward/windows/rkhtmlwindow.cpp 2007-01-08 16:10:08 UTC (rev 1097)
@@ -359,9 +359,7 @@
bool RKHelpWindow::openURL (const KURL &url) {
RK_TRACE (APP);
- // TODO: real error handling
bool ok = true;
- qDebug ("here1 %s", url.prettyURL ().latin1 ());
if (url.protocol () == "rkward") {
if (url.host () == "component") {
ok = renderRKHelp (url);
@@ -450,7 +448,7 @@
for (XMLChildList::iterator it = src_elements.begin (); it != src_elements.end (); ++it) {
QString src = (*it).attribute ("src");
if (KURL::isRelativeURL (src)) {
- src = QDir::cleanDirPath (base_path.filePath (src));
+ src = "file://" + QDir::cleanDirPath (base_path.filePath (src));
(*it).setAttribute ("src", src);
}
}
@@ -542,7 +540,7 @@
ret.append ("</p>");
ret.replace ("\n\n", "</p>\n<p>");
- qDebug ("%s", ret.latin1 ());
+ RK_DO (qDebug ("%s", ret.latin1 ()), APP, DL_DEBUG);
return ret;
}
@@ -564,7 +562,16 @@
} else if (url.host () == "rhelp") {
text = i18n ("R Reference on '%1'").arg (url.path ().mid (1));
} else if (url.host () == "page") {
- text = "TODO: some help page";
+ QString help_base_dir = RKCommonFunctions::getRKWardDataDir () + "pages/";
+
+ QString help_file_name = help_base_dir + url.path () + ".rkh";
+ XMLHelper *xml = new XMLHelper ();
+
+ QDomElement doc_element = xml->openXMLFile (help_file_name, DL_WARNING);
+ QDomElement title_element = xml->getChildElement (doc_element, "title", DL_WARNING);
+ text = title_element.text ();
+
+ delete xml;
}
link_element->appendChild (link_element->ownerDocument ().createTextNode (text));
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the rkward-tracker
mailing list