X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fdialogs%2Fabout.cpp;h=693472ee92c4052b7210f22791bd40c212b9a044;hb=3d87310109576c77819c4c592d41bc1d9731978b;hp=f8394f2ae6f3784bdd72ef84089ac26e3dcd3711;hpb=ab973f4729258b729d2aa84abfa14b61609fa35e;p=pulseview.git diff --git a/pv/dialogs/about.cpp b/pv/dialogs/about.cpp index f8394f2a..693472ee 100644 --- a/pv/dialogs/about.cpp +++ b/pv/dialogs/about.cpp @@ -24,24 +24,21 @@ #include -#include "about.h" +#include "about.hpp" #include -/* __STDC_FORMAT_MACROS is required for PRIu64 and friends (in C++). */ -#define __STDC_FORMAT_MACROS -#include -#include +#include +using std::shared_ptr; +using sigrok::Context; namespace pv { namespace dialogs { -About::About(QWidget *parent) : +About::About(shared_ptr context, QWidget *parent) : QDialog(parent), ui(new Ui::About) { - struct sr_dev_driver **drivers; - #ifdef ENABLE_DECODE struct srd_decoder *dec; #endif @@ -64,11 +61,19 @@ About::About(QWidget *parent) : s.append("" + tr("Supported hardware drivers:") + ""); - drivers = sr_driver_list(); - for (int i = 0; drivers[i]; ++i) { + for (auto entry : context->drivers()) { + s.append(QString("%1%2") + .arg(QString::fromUtf8(entry.first.c_str())) + .arg(QString::fromUtf8(entry.second->long_name().c_str()))); + } + + s.append("" + + tr("Supported input formats:") + + ""); + for (auto entry : context->input_formats()) { s.append(QString("%1%2") - .arg(QString::fromUtf8(drivers[i]->name)) - .arg(QString::fromUtf8(drivers[i]->longname))); + .arg(QString::fromUtf8(entry.first.c_str())) + .arg(QString::fromUtf8(entry.second->description().c_str()))); } #ifdef ENABLE_DECODE