]> sigrok.org Git - pulseview.git/blobdiff - pv/dialogs/settings.cpp
Add "start acquisition for all devices" option
[pulseview.git] / pv / dialogs / settings.cpp
index 3b4d67de766fde17814116083e92eba9a70d7a22..b07a63696fb4b11d3c6c69cbf8b5beb79d7da60d 100644 (file)
@@ -221,9 +221,9 @@ QWidget *Settings::get_general_settings_form(QWidget *parent) const
        Application* a = qobject_cast<Application*>(QApplication::instance());
 
        QString current_language = settings.value(GlobalSettings::Key_General_Language).toString();
-       for (QString language : a->get_languages()) {
-               QLocale locale = QLocale(language);
-               QString desc = locale.languageToString(locale.language());
+       for (const QString& language : a->get_languages()) {
+               const QLocale locale = QLocale(language);
+               const QString desc = locale.languageToString(locale.language());
                language_cb->addItem(desc, language);
 
                if (language == current_language) {
@@ -276,6 +276,11 @@ QWidget *Settings::get_general_settings_form(QWidget *parent) const
                SLOT(on_general_save_with_setup_changed(int)));
        general_layout->addRow(tr("Save session &setup along with .sr file"), cb);
 
+       cb = create_checkbox(GlobalSettings::Key_General_StartAllSessions,
+               SLOT(on_general_start_all_sessions_changed(int)));
+       general_layout->addRow(tr("Start acquisition for all open sessions when clicking 'Run'"), cb);
+
+
        return form;
 }
 
@@ -344,7 +349,7 @@ QWidget *Settings::get_view_settings_form(QWidget *parent) const
                settings.value(GlobalSettings::Key_View_SnapDistance).toInt());
        connect(snap_distance_sb, SIGNAL(valueChanged(int)), this,
                SLOT(on_view_snapDistance_changed(int)));
-       trace_view_layout->addRow(tr("Maximum distance from edges before cursors snap to them"), snap_distance_sb);
+       trace_view_layout->addRow(tr("Maximum distance from edges before markers snap to them"), snap_distance_sb);
 
        ColorButton* cursor_fill_cb = new ColorButton(parent);
        cursor_fill_cb->set_color(QColor::fromRgba(
@@ -415,10 +420,10 @@ QWidget *Settings::get_decoder_settings_form(QWidget *parent)
        connect(ann_export_format_, SIGNAL(textChanged(const QString&)),
                this, SLOT(on_dec_exportFormat_changed(const QString&)));
        decoder_layout->addRow(tr("Annotation export format"), ann_export_format_);
-       QLabel *description_1 = new QLabel(tr("%s = sample range; %d: decoder name; %r: row name; %q: use quotation marks"));
+       QLabel *description_1 = new QLabel(tr("%s = sample range; %d: decoder name; %r: row name; %c: class name"));
        description_1->setAlignment(Qt::AlignRight);
        decoder_layout->addRow(description_1);
-       QLabel *description_2 = new QLabel(tr("%1: longest annotation text; %a: all annotation texts"));
+       QLabel *description_2 = new QLabel(tr("%1: longest annotation text; %a: all annotation texts; %q: use quotation marks"));
        description_2->setAlignment(Qt::AlignRight);
        decoder_layout->addRow(description_2);
 
@@ -467,6 +472,7 @@ QWidget *Settings::get_about_page(QWidget *parent) const
                tr("Protocol decoder search paths:") + "</b></td></tr>");
        for (QString &entry : a->get_pd_path_list())
                s.append(QString("<tr><td colspan=\"2\">%1</td></tr>").arg(entry));
+       s.append(tr("<tr><td colspan=\"2\">(Note: Set environment variable SIGROKDECODE_DIR to add a custom directory)</td></tr>"));
 #endif
 
        s.append("<tr><td colspan=\"2\"></td></tr>");
@@ -499,6 +505,21 @@ QWidget *Settings::get_about_page(QWidget *parent) const
                        .arg(entry.first, entry.second));
 #endif
 
+       s.append("<tr><td colspan=\"2\"></td></tr>");
+       s.append("<tr><td colspan=\"2\"><b>" +
+               tr("Available Translations:") + "</b></td></tr>");
+       for (const QString& language : a->get_languages()) {
+               if (language == "en")
+                       continue;
+
+               const QLocale locale = QLocale(language);
+               const QString desc = locale.languageToString(locale.language());
+               const QString editors = a->get_language_editors(language);
+
+               s.append(QString("<tr><td class=\"id\"><i>%1</i></td><td>(%2)</td></tr>")
+                       .arg(desc, editors));
+       }
+
        s.append("</table>");
 
        QTextDocument *supported_doc = new QTextDocument();
@@ -610,7 +631,7 @@ void Settings::on_general_language_changed(const QString &text)
        GlobalSettings settings;
        Application* a = qobject_cast<Application*>(QApplication::instance());
 
-       for (QString language : a->get_languages()) {
+       for (const QString& language : a->get_languages()) {
                QLocale locale = QLocale(language);
                QString desc = locale.languageToString(locale.language());
 
@@ -663,6 +684,12 @@ void Settings::on_general_save_with_setup_changed(int state)
        settings.setValue(GlobalSettings::Key_General_SaveWithSetup, state ? true : false);
 }
 
+void Settings::on_general_start_all_sessions_changed(int state)
+{
+       GlobalSettings settings;
+       settings.setValue(GlobalSettings::Key_General_StartAllSessions, state ? true : false);
+}
+
 void Settings::on_view_zoomToFitDuringAcq_changed(int state)
 {
        GlobalSettings settings;