X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdialogs%2Fsettings.cpp;h=15655a7065cb32363897012f26e7d7305f3db2c1;hp=b8150b7bfaa4dadd187eec8eb7b233c660e2f2ad;hb=fe934a93e0dbdab4746091738450f9198a809666;hpb=20c80c8aa4720f5b379e319f553c133687069b4e
diff --git a/pv/dialogs/settings.cpp b/pv/dialogs/settings.cpp
index b8150b7b..15655a70 100644
--- a/pv/dialogs/settings.cpp
+++ b/pv/dialogs/settings.cpp
@@ -57,7 +57,7 @@ Settings::Settings(DeviceManager &device_manager, QWidget *parent) :
page_list->setViewMode(QListView::IconMode);
page_list->setIconSize(QSize(icon_size, icon_size));
page_list->setMovement(QListView::Static);
- page_list->setMaximumWidth(icon_size + icon_size/2);
+ page_list->setMaximumWidth(icon_size + (icon_size / 2));
page_list->setSpacing(12);
pages = new QStackedWidget;
@@ -140,9 +140,25 @@ QWidget *Settings::get_view_settings_form(QWidget *parent) const
connect(show_sampling_points_cb, SIGNAL(stateChanged(int)), this, SLOT(on_view_showSamplingPoints_changed(int)));
trace_view_layout->addRow(tr("Show data &sampling points"), show_sampling_points_cb);
+ QCheckBox *show_analog_minor_grid_cb = new QCheckBox();
+ show_analog_minor_grid_cb->setChecked(settings.value(GlobalSettings::Key_View_ShowAnalogMinorGrid).toBool());
+ connect(show_analog_minor_grid_cb, SIGNAL(stateChanged(int)), this, SLOT(on_view_showAnalogMinorGrid_changed(int)));
+ trace_view_layout->addRow(tr("Show analog minor grid in addition to vdiv grid"), show_analog_minor_grid_cb);
+
return form;
}
+#ifdef ENABLE_DECODE
+static gint sort_pds(gconstpointer a, gconstpointer b)
+{
+ const struct srd_decoder *sda, *sdb;
+
+ sda = (const struct srd_decoder *)a;
+ sdb = (const struct srd_decoder *)b;
+ return strcmp(sda->id, sdb->id);
+}
+#endif
+
QWidget *Settings::get_about_page(QWidget *parent) const
{
#ifdef ENABLE_DECODE
@@ -168,15 +184,19 @@ QWidget *Settings::get_about_page(QWidget *parent) const
/* Library info */
s.append("
" +
- tr("Used libraries:") +
- " |
");
+ tr("Used libraries:") + "");
s.append(QString("%1 | %2 |
")
- .arg(QString("Qt"), qVersion()));
+ .arg(QString("Qt"), qVersion()));
+ s.append(QString("%1 | %2 (lib version %3) |
")
+ .arg(QString("libsigrok"), sr_package_version_string_get(), sr_lib_version_string_get()));
+#ifdef ENABLE_DECODE
+ s.append(QString("%1 | %2 (lib version %3) |
")
+ .arg(QString("libsigrokdecode"), srd_package_version_string_get(), srd_lib_version_string_get()));
+#endif
/* Set up the supported field */
s.append("" +
- tr("Supported hardware drivers:") +
- " |
");
+ tr("Supported hardware drivers:") + "");
for (auto entry : context->drivers()) {
s.append(QString("%1 | %2 |
")
.arg(QString::fromUtf8(entry.first.c_str()),
@@ -184,8 +204,7 @@ QWidget *Settings::get_about_page(QWidget *parent) const
}
s.append("" +
- tr("Supported input formats:") +
- " |
");
+ tr("Supported input formats:") + "");
for (auto entry : context->input_formats()) {
s.append(QString("%1 | %2 |
")
.arg(QString::fromUtf8(entry.first.c_str()),
@@ -193,8 +212,7 @@ QWidget *Settings::get_about_page(QWidget *parent) const
}
s.append("" +
- tr("Supported output formats:") +
- " |
");
+ tr("Supported output formats:") + "");
for (auto entry : context->output_formats()) {
s.append(QString("%1 | %2 |
")
.arg(QString::fromUtf8(entry.first.c_str()),
@@ -203,14 +221,16 @@ QWidget *Settings::get_about_page(QWidget *parent) const
#ifdef ENABLE_DECODE
s.append("" +
- tr("Supported protocol decoders:") +
- " |
");
- for (const GSList *l = srd_decoder_list(); l; l = l->next) {
+ tr("Supported protocol decoders:") + "");
+ GSList *sl = g_slist_copy((GSList *)srd_decoder_list());
+ sl = g_slist_sort(sl, sort_pds);
+ for (const GSList *l = sl; l; l = l->next) {
dec = (struct srd_decoder *)l->data;
s.append(QString("%1 | %2 |
")
.arg(QString::fromUtf8(dec->id),
QString::fromUtf8(dec->longname)));
}
+ g_slist_free(sl);
#endif
s.append("");
@@ -280,5 +300,11 @@ void Settings::on_view_showSamplingPoints_changed(int state)
settings.setValue(GlobalSettings::Key_View_ShowSamplingPoints, state ? true : false);
}
+void Settings::on_view_showAnalogMinorGrid_changed(int state)
+{
+ GlobalSettings settings;
+ settings.setValue(GlobalSettings::Key_View_ShowAnalogMinorGrid, state ? true : false);
+}
+
} // namespace dialogs
} // namespace pv