00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _HELPDIALOG_HPP_
00021 #define _HELPDIALOG_HPP_
00022
00023 #include <QString>
00024 #include <QObject>
00025 #include <QMultiMap>
00026 #include <QPair>
00027 #include <QHash>
00028
00029 #include "StelDialog.hpp"
00030
00031 class Ui_helpDialogForm;
00032 class QListWidgetItem;
00033
00034 class HelpDialog : public StelDialog
00035 {
00036 Q_OBJECT
00037 public:
00038 HelpDialog();
00039 ~HelpDialog();
00040
00052 void setKey(QString group, QString oldKey, QString newKey, QString description);
00053
00054 void languageChanged();
00055
00057 void styleChanged();
00058
00059 protected:
00061 virtual void createDialogContent();
00062
00063 Ui_helpDialogForm* ui;
00064
00065 private slots:
00068 void updateLog(int);
00069
00071 void refreshLog();
00072
00073 void changePage(QListWidgetItem *current, QListWidgetItem *previous);
00074
00075 private:
00077 QString getHeaderText(void);
00078
00080 QString getFooterText(void);
00081
00084 void updateText(void);
00085
00089 QMultiMap<QString, QPair<QString, QString> > keyData;
00090
00092 QHash<QString, QString> specialKeys;
00093
00097 static bool helpItemSort(const QPair<QString, QString>& p1, const QPair<QString, QString>& p2);
00098
00100 static bool helpGroupSort(const QString& s1, const QString& s2);
00101 };
00102
00103 #endif
00104