|
Packit |
1c1d7e |
#ifndef EXPERT_H
|
|
Packit |
1c1d7e |
#define EXPERT_H
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include <QSplitter>
|
|
Packit |
1c1d7e |
#include <QDomElement>
|
|
Packit |
1c1d7e |
#include <QHash>
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include "docintf.h"
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
class QTreeWidget;
|
|
Packit |
1c1d7e |
class QTreeWidgetItem;
|
|
Packit |
1c1d7e |
class QStackedWidget;
|
|
Packit |
1c1d7e |
class QSettings;
|
|
Packit |
1c1d7e |
class QTextBrowser;
|
|
Packit |
1c1d7e |
class QTextCodec;
|
|
Packit |
1c1d7e |
class QPushButton;
|
|
Packit |
1c1d7e |
class Input;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
class Expert : public QSplitter, public DocIntf
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
Q_OBJECT
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
public:
|
|
Packit |
1c1d7e |
Expert();
|
|
Packit |
1c1d7e |
~Expert();
|
|
Packit |
1c1d7e |
void loadSettings(QSettings *);
|
|
Packit |
1c1d7e |
void saveSettings(QSettings *);
|
|
Packit |
1c1d7e |
void loadConfig(const QString &fileName);
|
|
Packit |
1c1d7e |
bool writeConfig(QTextStream &t,bool brief);
|
|
Packit |
1c1d7e |
QByteArray saveInnerState () const;
|
|
Packit |
1c1d7e |
bool restoreInnerState ( const QByteArray & state );
|
|
Packit |
1c1d7e |
const QHash<QString,Input*> &modelData() const { return m_options; }
|
|
Packit |
1c1d7e |
void resetToDefaults();
|
|
Packit |
1c1d7e |
bool htmlOutputPresent(const QString &workingDir) const;
|
|
Packit |
1c1d7e |
bool pdfOutputPresent(const QString &workingDir) const;
|
|
Packit |
1c1d7e |
QString getHtmlOutputIndex(const QString &workingDir) const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// DocIntf methods
|
|
Packit |
1c1d7e |
void setHeader(const char *name);
|
|
Packit |
1c1d7e |
void add(const char *name,const char *doc);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
public slots:
|
|
Packit |
1c1d7e |
void activateTopic(QTreeWidgetItem *,QTreeWidgetItem *);
|
|
Packit |
1c1d7e |
QWidget *createTopicWidget(QDomElement &elem);
|
|
Packit |
1c1d7e |
void refresh();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
private slots:
|
|
Packit |
1c1d7e |
void showHelp(Input *);
|
|
Packit |
1c1d7e |
void nextTopic();
|
|
Packit |
1c1d7e |
void prevTopic();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
signals:
|
|
Packit |
1c1d7e |
void changed();
|
|
Packit |
1c1d7e |
void done();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
private:
|
|
Packit |
1c1d7e |
void createTopics(const QDomElement &);
|
|
Packit |
1c1d7e |
void saveTopic(QTextStream &t,QDomElement &elem,QTextCodec *codec,bool brief);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
QSplitter *m_splitter;
|
|
Packit |
1c1d7e |
QTextBrowser *m_helper;
|
|
Packit |
1c1d7e |
QTreeWidget *m_treeWidget;
|
|
Packit |
1c1d7e |
QStackedWidget *m_topicStack;
|
|
Packit |
1c1d7e |
QHash<QString,QWidget *> m_topics;
|
|
Packit |
1c1d7e |
QHash<QString,QObject *> m_optionWidgets;
|
|
Packit |
1c1d7e |
QHash<QString,Input *> m_options;
|
|
Packit |
1c1d7e |
QPushButton *m_next;
|
|
Packit |
1c1d7e |
QPushButton *m_prev;
|
|
Packit |
1c1d7e |
QDomElement m_rootElement;
|
|
Packit |
1c1d7e |
bool m_inShowHelp;
|
|
Packit |
1c1d7e |
QString m_header;
|
|
Packit |
1c1d7e |
};
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#endif
|