]> sigrok.org Git - pulseview.git/blobdiff - pv/application.hpp
Translations: Use Qt translations
[pulseview.git] / pv / application.hpp
index 7059c02a35293f0e741977ea5cf588356734cbd5..61fe46e2480dc855210e586230c2e6960e070101 100644 (file)
 #ifndef PULSEVIEW_PV_APPLICATION_HPP
 #define PULSEVIEW_PV_APPLICATION_HPP
 
+#include <vector>
+
 #include <QApplication>
+#include <QStringList>
+#include <QTranslator>
+
+#include <libsigrokcxx/libsigrokcxx.hpp>
+
+#include "globalsettings.hpp"
 
-class Application : public QApplication
+using std::shared_ptr;
+using std::pair;
+using std::vector;
+
+class Application : public QApplication, public pv::GlobalSettingsInterface
 {
+       Q_OBJECT
+
 public:
        Application(int &argc, char* argv[]);
+
+       QStringList get_languages();
+       void switch_language(const QString& language);
+       void on_setting_changed(const QString &key, const QVariant &value);
+
+       void collect_version_info(shared_ptr<sigrok::Context> context);
+       void print_version_info();
+
+       vector< pair<QString, QString> > get_version_info() const;
+       vector<QString> get_fw_path_list() const;
+       vector<QString> get_pd_path_list() const;
+       vector< pair<QString, QString> > get_driver_list() const;
+       vector< pair<QString, QString> > get_input_format_list() const;
+       vector< pair<QString, QString> > get_output_format_list() const;
+       vector< pair<QString, QString> > get_pd_list() const;
+
 private:
        bool notify(QObject *receiver, QEvent *event);
+
+       vector< pair<QString, QString> > version_info_;
+       vector<QString> fw_path_list_;
+       vector<QString> pd_path_list_;
+       vector< pair<QString, QString> > driver_list_;
+       vector< pair<QString, QString> > input_format_list_;
+       vector< pair<QString, QString> > output_format_list_;
+       vector< pair<QString, QString> > pd_list_;
+
+       QTranslator app_translator_, qt_translator_, qtbase_translator_;
 };
 
 #endif // PULSEVIEW_PV_APPLICATION_HPP