X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdialogs%2Fsettings.cpp;h=0104b7c9e32f3de4c146c52ab6326e7fb8b68b9d;hp=32b1c207677979f32b285426bf5b9da9b395726a;hb=d008cab11b7508601e793d47e53a87be9972aed1;hpb=6c34883054aac5036d09a30424021de5182b8944 diff --git a/pv/dialogs/settings.cpp b/pv/dialogs/settings.cpp index 32b1c207..0104b7c9 100644 --- a/pv/dialogs/settings.cpp +++ b/pv/dialogs/settings.cpp @@ -148,6 +148,17 @@ QWidget *Settings::get_view_settings_form(QWidget *parent) const 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 @@ -169,6 +180,9 @@ QWidget *Settings::get_about_page(QWidget *parent) const shared_ptr context = device_manager_.context(); QString s; + + s.append(""); + s.append(""); /* Library info */ @@ -187,7 +201,7 @@ QWidget *Settings::get_about_page(QWidget *parent) const s.append(""); for (auto entry : context->drivers()) { - s.append(QString("") + s.append(QString("") .arg(QString::fromUtf8(entry.first.c_str()), QString::fromUtf8(entry.second->long_name().c_str()))); } @@ -195,7 +209,7 @@ QWidget *Settings::get_about_page(QWidget *parent) const s.append(""); for (auto entry : context->input_formats()) { - s.append(QString("") + s.append(QString("") .arg(QString::fromUtf8(entry.first.c_str()), QString::fromUtf8(entry.second->description().c_str()))); } @@ -203,7 +217,7 @@ QWidget *Settings::get_about_page(QWidget *parent) const s.append(""); for (auto entry : context->output_formats()) { - s.append(QString("") + s.append(QString("") .arg(QString::fromUtf8(entry.first.c_str()), QString::fromUtf8(entry.second->description().c_str()))); } @@ -211,12 +225,15 @@ QWidget *Settings::get_about_page(QWidget *parent) const #ifdef ENABLE_DECODE s.append(""); - for (const GSList *l = srd_decoder_list(); l; l = l->next) { + 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("") + s.append(QString("") .arg(QString::fromUtf8(dec->id), QString::fromUtf8(dec->longname))); } + g_slist_free(sl); #endif s.append("
" + tr("Supported hardware drivers:") + "
%1%2
%1%2
" + tr("Supported input formats:") + "
%1%2
%1%2
" + tr("Supported output formats:") + "
%1%2
%1%2
" + tr("Supported protocol decoders:") + "
%1%2
%1%2
");