diff --git a/widgets/coreWidget/Help.cc b/widgets/coreWidget/Help.cc index d34a21cb7992cc41d7e2067733df278499ec4ad1..35f1f203784a44b717be1e718f2e0ffca54eacc0 100644 --- a/widgets/coreWidget/Help.cc +++ b/widgets/coreWidget/Help.cc @@ -45,8 +45,6 @@ #include -#include - //== IMPLEMENTATION ========================================================== @@ -57,8 +55,7 @@ void CoreWidget::showHelpBrowser( ) { return; if(helpWidget_ == 0) - helpWidget_ = new HelpWidget(this, "qthelp://doc.openflipper.dev/openflipper-1.0-dev/main.html", - "qthelp://doc.openflipper.dev/openflipper-1.0-dev/"); + helpWidget_ = new HelpWidget(this, "qthelp://org.openflipper.dev/doc/main.html"); helpWidget_->show(); diff --git a/widgets/helpWidget/helpBrowser.cc b/widgets/helpWidget/helpBrowser.cc index 7700e9a72020f097f2999960c91c71dd9dc24c9e..153665838adbf830567cd1afe48f7d92c3edde97 100644 --- a/widgets/helpWidget/helpBrowser.cc +++ b/widgets/helpWidget/helpBrowser.cc @@ -10,11 +10,10 @@ #include -HelpBrowser::HelpBrowser(QHelpEngine* _helpEngine, const QUrl& _basePath, QWidget* parent) : +HelpBrowser::HelpBrowser(QHelpEngine* _helpEngine, QWidget* parent) : QTextBrowser(parent), - helpEngine_(_helpEngine), - basePath_(_basePath) { + helpEngine_(_helpEngine) { currentPage_ = 0; @@ -35,10 +34,24 @@ QVariant HelpBrowser::loadResource (int /*_type*/, const QUrl& _url) { } else { - // Set basePath_ as prefix of resource file - QUrl newUrl = QUrl(basePath_.toString() + _url.toString()); + QUrl newUrl; - return QVariant(helpEngine_->fileData(newUrl)); + QStringList docDomains = helpEngine_->registeredDocumentations(); + + // Search in all namespaces for requested file + for(int i = 0; i < docDomains.size(); i++) { + + QString sNewUrl = "qthelp://" + docDomains[i] + "/" + VIRTUAL_FOLDER + + "/" + _url.toString(); + + newUrl = helpEngine_->findFile(QUrl(sNewUrl)); + + if(newUrl.isValid()) return QVariant(helpEngine_->fileData(newUrl)); + } + + // If file has not been found in any of the namespaces + // return an empty QVariant + return QVariant(); } } diff --git a/widgets/helpWidget/helpBrowser.hh b/widgets/helpWidget/helpBrowser.hh index 9189c91e8923b3218a19d40819faa2168f42ec4a..89e3e87ebfa37e75f0c657fbf0456d76fa815dbd 100644 --- a/widgets/helpWidget/helpBrowser.hh +++ b/widgets/helpWidget/helpBrowser.hh @@ -8,6 +8,8 @@ #ifndef HELPBROWSER_HH_ #define HELPBROWSER_HH_ +#define VIRTUAL_FOLDER "doc" + #include #include #include @@ -16,7 +18,7 @@ class HelpBrowser : public QTextBrowser { Q_OBJECT public: - HelpBrowser(QHelpEngine* _helpEngine, const QUrl& _basePath, QWidget* parent = 0); + HelpBrowser(QHelpEngine* _helpEngine, QWidget* parent = 0); virtual ~HelpBrowser(); @@ -52,8 +54,6 @@ private: QStringList visitedPages_; int currentPage_; - QUrl basePath_; - }; diff --git a/widgets/helpWidget/helpWidget.cc b/widgets/helpWidget/helpWidget.cc index b5d60a6789838724a124807a4e8e7997257658a8..54234a1868533be066c7cf5416633dc47e8cfb81 100644 --- a/widgets/helpWidget/helpWidget.cc +++ b/widgets/helpWidget/helpWidget.cc @@ -13,7 +13,7 @@ #include -HelpWidget::HelpWidget(QWidget* parent, const QString& _homeSite, const QString& _baseURL) +HelpWidget::HelpWidget(QWidget* parent, const QString& _homeSite) : QMainWindow(parent), searchWidget_(0), tabWidget_(0), @@ -52,7 +52,7 @@ HelpWidget::HelpWidget(QWidget* parent, const QString& _homeSite, const QString& searchEngine_ = new QHelpSearchEngine(helpEngine_, this); - textWindow_ = new HelpBrowser(helpEngine_, _baseURL, this); + textWindow_ = new HelpBrowser(helpEngine_, this); homeIndex_ = tabWidget_->addTab(textWindow_, "Home"); diff --git a/widgets/helpWidget/helpWidget.hh b/widgets/helpWidget/helpWidget.hh index 25500e415f9dd9f6ca027b36469eca895d7ce375..ffafd8b183341abde0840e770cec4219689ab85a 100644 --- a/widgets/helpWidget/helpWidget.hh +++ b/widgets/helpWidget/helpWidget.hh @@ -27,7 +27,7 @@ class HelpWidget : public QMainWindow, public Ui::HelpWidget public: - HelpWidget(QWidget* parent = 0, const QString& _homeSite = "", const QString& _baseURL = ""); + HelpWidget(QWidget* parent = 0, const QString& _homeSite = ""); virtual ~HelpWidget();