]> sigrok.org Git - pulseview.git/blobdiff - mainwindow.cpp
Created a custom about box with scrollable space for the supported list
[pulseview.git] / mainwindow.cpp
index bf9711f29167803f657ce1dffcf5ba027cfe47be..45d415dd16114ffefa38735a95f82b37b9d7ccf6 100644 (file)
@@ -22,7 +22,7 @@ extern "C" {
 #include <sigrokdecode.h>
 }
 
-#include <QMessageBox>
+#include "about.h"
 
 #include "mainwindow.h"
 #include "ui_mainwindow.h"
@@ -51,53 +51,6 @@ MainWindow::~MainWindow()
 
 void MainWindow::on_actionAbout_triggered()
 {
-       GSList *l;
-       struct sr_dev_driver **drivers;
-       struct sr_input_format **inputs;
-       struct sr_output_format **outputs;
-       struct srd_decoder *dec;
-
-       QString s = tr("%1 %2<br />%3<br /><a href=\"%4\">%4</a>\n<p>")
-               .arg(QApplication::applicationName())
-               .arg(QApplication::applicationVersion())
-               .arg(tr("GNU GPL, version 2 or later"))
-               .arg(QApplication::organizationDomain());
-
-       s.append("<b>" + tr("Supported hardware drivers:") + "</b><table>");
-       drivers = sr_driver_list();
-       for (int i = 0; drivers[i]; ++i) {
-               s.append(QString("<tr><td><i>%1</i></td><td>%2</td></tr>")
-                        .arg(QString(drivers[i]->name))
-                        .arg(QString(drivers[i]->longname)));
-       }
-       s.append("</table><p>");
-
-       s.append("<b>" + tr("Supported input formats:") + "</b><table>");
-       inputs = sr_input_list();
-       for (int i = 0; inputs[i]; ++i) {
-               s.append(QString("<tr><td><i>%1</i></td><td>%2</td></tr>")
-                        .arg(QString(inputs[i]->id))
-                        .arg(QString(inputs[i]->description)));
-       }
-       s.append("</table><p>");
-
-       s.append("<b>" + tr("Supported output formats:") + "</b><table>");
-       outputs = sr_output_list();
-       for (int i = 0; outputs[i]; ++i) {
-               s.append(QString("<tr><td><i>%1</i></td><td>%2</td></tr>")
-                       .arg(QString(outputs[i]->id))
-                       .arg(QString(outputs[i]->description)));
-       }
-       s.append("</table><p>");
-
-       s.append("<b>" + tr("Supported protocol decoders:") + "</b><table>");
-       for (l = srd_decoder_list(); l; l = l->next) {
-               dec = (struct srd_decoder *)l->data;
-               s.append(QString("<tr><td><i>%1</i></td><td>%2</td></tr>")
-                        .arg(QString(dec->id))
-                        .arg(QString(dec->longname)));
-       }
-       s.append("</table>");
-
-       QMessageBox::about(this, tr("About"), s);
+       About dlg(this);
+       dlg.exec();
 }