7 #include "HelpBrowser.h"
8 #include "HelpWindow.h"
10 #include <QApplication>
13 #include <QHelpContentWidget>
14 #include <QHelpEngine>
15 #include <QHelpIndexWidget>
19 const int MIN_WIDTH = 600;
20 const int MIN_HEIGHT = 600;
25 setMinimumWidth (MIN_WIDTH);
26 setMinimumHeight (MIN_HEIGHT);
28 #if !defined(OSX_DEBUG) && !defined(OSX_RELEASE)
29 QHelpEngine *helpEngine =
new QHelpEngine (helpPath());
30 helpEngine->setupData();
32 QTabWidget *tabs =
new QTabWidget;
33 tabs->addTab (helpEngine->contentWidget(),
35 tabs->addTab (helpEngine->indexWidget(),
44 browser->setSource (QUrl (
"qthelp://engaugedigitizer.net/doc/index.html"));
46 connect (helpEngine->contentWidget (), SIGNAL (linkActivated (QUrl)), browser, SLOT (setSource (QUrl)));
47 connect (helpEngine->indexWidget (), SIGNAL (linkActivated (QUrl, QString)), browser, SLOT (setSource (QUrl)));
49 QSplitter *splitter =
new QSplitter (Qt::Horizontal);
50 splitter->insertWidget (0, tabs);
51 splitter->insertWidget (1, browser);
57 #if !defined(OSX_DEBUG) && !defined(OSX_RELEASE)
58 QString HelpWindow::helpPath()
const
65 #define QUOTE(string) _QUOTE(string)
66 #define _QUOTE(string) #string
67 QString path = QString (
"%1/engauge.qhc")
68 .arg (QUOTE (HELPDIR));
71 paths <<
"/documentation/engauge.qhc";
72 paths <<
"/../share/doc/engauge-digitizer/engauge.qhc";
73 paths <<
"/../documentation/engauge.qhc";
74 paths <<
"/usr/share/engauge-digitizer-doc/engauge.qhc";
75 paths <<
"/usr/share/doc/engauge-digitizer/engauge.qhc";
77 QStringList::iterator itr;
78 for (itr = paths.begin(); itr != paths.end(); itr++) {
80 QString pathAsIs = *itr;
82 QFileInfo fileAsIs (pathAsIs);
83 if (fileAsIs.exists()) {
87 QString pathWithPrefix = QApplication::applicationDirPath() + pathAsIs;
89 QFileInfo fileWithPrefix (pathWithPrefix);
90 if (fileWithPrefix.exists()) {
91 return pathWithPrefix;
HelpWindow(QWidget *parent)
Single constructor.
Text browser with resource loading enhanced for use as help text browser.