1 #include "HelpBrowser.h"
2 #include "HelpWindow.h"
4 #include <QApplication>
6 #include <QHelpContentWidget>
8 #include <QHelpIndexWidget>
12 const int MIN_WIDTH = 600;
13 const int MIN_HEIGHT = 600;
18 setMinimumWidth (MIN_WIDTH);
19 setMinimumHeight (MIN_HEIGHT);
21 QHelpEngine *helpEngine =
new QHelpEngine (helpPath());
22 helpEngine->setupData();
24 QTabWidget *tabs =
new QTabWidget;
25 tabs->addTab (helpEngine->contentWidget(),
27 tabs->addTab (helpEngine->indexWidget(),
31 browser->setSource (QUrl (
"qthelp://engaugedigitizer.net/doc/index.html"));
32 connect (helpEngine->contentWidget (), SIGNAL (linkActivated (QUrl)), browser, SLOT (setSource (QUrl)));
33 connect (helpEngine->indexWidget (), SIGNAL (linkActivated (QUrl, QString)), browser, SLOT (setSource (QUrl)));
35 QSplitter *splitter =
new QSplitter (Qt::Horizontal);
36 splitter->insertWidget (0, tabs);
37 splitter->insertWidget (1, browser);
42 QString HelpWindow::helpPath()
const
48 #define QUOTE(string) _QUOTE(string)
49 #define _QUOTE(string) #string
50 QString path = QString (
"%1/engauge.qhc")
51 .arg (QUOTE (HELPDIR));
54 paths <<
"/documentation/engauge.qhc";
55 paths <<
"/../share/doc/engauge-digitizer/engauge.qhc";
57 QStringList::iterator itr;
58 for (itr = paths.begin(); itr != paths.end(); itr++) {
60 QString pathAsIs = *itr;
62 QFile fileAsIs (pathAsIs);
63 if (fileAsIs.exists()) {
67 QString pathWithPrefix = QApplication::applicationDirPath() + pathAsIs;
69 QFile fileWithPrefix (pathWithPrefix);
70 if (fileWithPrefix.exists()) {
71 return pathWithPrefix;
HelpWindow(QWidget *parent)
Single constructor.
Text browser with resource loading enhanced for use as help text browser.