33 #include <QtCore/QDir>
34 #include <QtCore/QFileInfo>
35 #include <QtCore/QLibraryInfo>
36 #include <QtCore/QProcess>
37 #include <QtGui/QApplication>
38 #include <QtGui/QMainWindow>
39 #include <QtGui/QMessageBox>
44 QWidgetList lst = qApp->topLevelWidgets();
45 QWidgetList::iterator it;
47 for(it=lst.begin(); it!=lst.end(); ++it)
49 QMainWindow*
main = qobject_cast<QMainWindow*>(*it);
62 m_collectionFile(collectionFile)
72 bool tag = m_regDocs.size() > 1;
74 for(
int i = 0; i < m_regDocs.size();i++)
76 ba.append(
"unregister " + m_regDocs.value(i));
79 ba.append((i == (m_regDocs.size()-1)) ?
"\n" :
";");
94 QFileInfo info(m_collectionFile);
98 QMessageBox::warning(
GetMainWindow(), QObject::tr(
"Help failure"), QObject::tr(
"Could not find help files"));
103 m_proc =
new QProcess();
105 if (m_proc->state() != QProcess::Running)
107 QString app = QLibraryInfo::location(QLibraryInfo::BinariesPath) + QDir::separator();
108 #if !defined(Q_OS_MAC)
109 app += QLatin1String(
"assistant");
111 app += QLatin1String(
"Assistant.app/Contents/MacOS/Assistant");
115 args << QLatin1String(
"-collectionFile")
117 << QLatin1String(
"-enableRemoteControl");
119 m_proc->start(app, args);
121 if (!m_proc->waitForStarted())
123 QMessageBox::critical(
GetMainWindow(), QObject::tr(
"Simple Text Viewer"), QObject::tr(
"Unable to launch Qt Assistant (%1)").arg(app));
133 if (!startAssistant())
136 QString nS = (nSpace.isEmpty()) ?
"dpi.inpe.br.qtwidgets" : nSpace;
139 ba.append(
"setSource qthelp://" + nS +
"/doc/" + htmRef.toLocal8Bit() +
'\n');
146 if(m_regDocs.contains(docRef))
149 m_regDocs.append(docRef);
156 m_proc =
new QProcess;
158 ba.append(QLatin1String(
"register ") + docRef.toLocal8Bit() +
'\n');
bool startAssistant()
It starts the Qt assistant help process pointing out to the given collection file.
void showHelp(const QString &htmRef, const QString &nSpace="")
QWidget * GetMainWindow()
void appendDoc(const QString &docRef)
~AssistantHelpManagerImpl()
Destructor.
AssistantHelpManagerImpl(const QString &collectionFile, QObject *parent=0)
Constructor.
int main(int argc, char *argv[])
An implementation of HelpManager that uses QAssistant to show help files.