# HG changeset patch
# User Chris Cannam
# Date 1484056686 0
# Node ID 47a18e281a93ece53e546991b89d52a049cd717f
# Parent ea6c44afb68f06a4e8954253776bb9f8f0eab74f
Add "What's New" to help menu; primp up About box
diff -r ea6c44afb68f -r 47a18e281a93 CHANGELOG
--- a/CHANGELOG Tue Jan 10 11:28:35 2017 +0000
+++ b/CHANGELOG Tue Jan 10 13:58:06 2017 +0000
@@ -1,8 +1,8 @@
Changes in Sonic Visualiser 3.0 since the previous release 2.5:
- - Add the ability to record audio, and the ability to change the
- audio device for playback or recording in the preferences
+ - Add ability to record audio, and ability to change the audio device
+ for playback or recording in the preferences
- Add complete support for high-resolution (Hi-DPI or retina)
displays, including for layer data rendering as well as UI controls
@@ -46,6 +46,9 @@
- Switch to using combined level/pan controls in layer property boxes
and for the main volume control
+ - Fix a number of problems on Windows with loading and saving some
+ file formats to filenames not representable in system codepage
+
- Finally switch the Windows built to 64-bit by default (with
adapters to run either 32- or 64-bit plugins)
@@ -306,7 +309,7 @@
- Various other bug fixes.
-Changes in Sonic Visualiser 1.5 since the previous version 1.4:
+Changes in Sonic Visualiser 1.5 since the previous release 1.4:
- You can now insert time instants, time values, and notes using
a MIDI device during playback. If a time value or note layer is
@@ -347,7 +350,7 @@
been fixed.
-New features in Sonic Visualiser 1.4 since the previous version 1.3:
+Changes in Sonic Visualiser 1.4 since the previous release 1.3:
- SV now has a Region layer type, used for display of features with
durations. It also supports Vamp v2.0 plugins that provide durations
@@ -377,7 +380,7 @@
- Several crashes and other bugs have been fixed.
-Changes in Sonic Visualiser 1.3 since the previous version 1.2:
+Changes in Sonic Visualiser 1.3 since the previous release 1.2:
- There is a new spreadsheet-style data viewer and editor for
viewing and editing the data in some types of annotation layer.
@@ -396,7 +399,7 @@
- Several other bug fixes.
-New features in Sonic Visualiser 1.2, since the previous version 1.0:
+Changes in Sonic Visualiser 1.2, since the previous release 1.0:
- SV now supports time-alignment of multiple performances of a work
loaded at the same time. This option is enabled when the MATCH Vamp
diff -r ea6c44afb68f -r 47a18e281a93 main/MainWindow.cpp
--- a/main/MainWindow.cpp Tue Jan 10 11:28:35 2017 +0000
+++ b/main/MainWindow.cpp Tue Jan 10 13:58:06 2017 +0000
@@ -124,6 +124,7 @@
#include The template \"%1\" already exists. \\1 The OSC URL for this instance is: \"%1\"").arg(m_oscQueue->getOSCURL());
+ }
+
+ aboutText += " ";
aboutText += tr("With Qt v%1 © The Qt Company").arg(QT_VERSION_STR);
+ aboutText += "";
+
#ifdef HAVE_JACK
#ifdef JACK_VERSION
aboutText += tr(" The OSC URL for this instance is: \"%1\"").arg(m_oscQueue->getOSCURL());
- }
-
aboutText += " Sonic Visualiser Copyright © 2005–2017 Chris Cannam and "
"Queen Mary, University of London.
Overwrite it?").arg(name),
QMessageBox::Ok | QMessageBox::Cancel,
QMessageBox::Cancel) != QMessageBox::Ok) {
+ delete d;
return;
}
}
@@ -3287,6 +3294,8 @@
}
}
}
+
+ delete d;
}
void
@@ -4744,6 +4753,61 @@
}
void
+MainWindow::whatsNew()
+{
+ QFile changelog(":CHANGELOG");
+ changelog.open(QFile::ReadOnly);
+ QByteArray content = changelog.readAll();
+ QString text = QString::fromUtf8(content);
+
+ QDialog *d = new QDialog(this);
+ d->setWindowTitle(tr("What's New"));
+
+ QGridLayout *layout = new QGridLayout;
+ d->setLayout(layout);
+
+ int row = 0;
+
+ QLabel *iconLabel = new QLabel;
+ iconLabel->setPixmap(QApplication::windowIcon().pixmap(64, 64));
+ layout->addWidget(iconLabel, row, 0);
+
+ layout->addWidget
+ (new QLabel(tr("What's New in %1
")
+ .arg(QApplication::applicationName())),
+ row++, 1);
+ layout->setColumnStretch(2, 10);
+
+ QTextEdit *textEdit = new QTextEdit;
+ layout->addWidget(textEdit, row++, 1, 1, 2);
+
+ if (m_newerVersionIs != "") {
+ layout->addWidget(new QLabel(tr("Note: A newer version of Sonic Visualiser is available.
(Version %1 is available; you are using version %2)").arg(m_newerVersionIs).arg(SV_VERSION)), row++, 1, 1, 2);
+ }
+
+ QDialogButtonBox *bb = new QDialogButtonBox(QDialogButtonBox::Ok);
+ layout->addWidget(bb, row++, 0, 1, 3);
+ connect(bb, SIGNAL(accepted()), d, SLOT(accept()));
+
+ text.replace(QRegExp("(.)\n +(.)"), "\\1 \\2");
+ text.replace(QRegExp("\n - ([^\n]+)"), "\n\n");
+ text.replace(QRegExp("\n\\s*\n"), "\n
\n\n");
+ text.replace(QRegExp("\n(\\w[^:\n]+:)"), "\n
With JACK audio output library v%1 © Paul Davis and Jack O'Quin").arg(JACK_VERSION);
@@ -4856,17 +4926,9 @@
aboutText += tr("
With liblo Lite OSC library © Steve Harris");
#endif // LIBLO_VERSION
- if (m_oscQueue && m_oscQueue->isOK()) {
- aboutText += tr("
See the file "
"COPYING included with this distribution for more information.