Mercurial > hg > sonic-visualiser
changeset 686:7f7fba33b7de
Add network permission to prefs; make OSC support one of the things that depends on it
author | Chris Cannam |
---|---|
date | Thu, 12 Dec 2013 15:20:42 +0000 (2013-12-12) |
parents | e84a1c6fb35a |
children | eda211f246e4 |
files | .hgsubstate main/MainWindow.cpp main/NetworkPermissionTester.cpp main/PreferencesDialog.cpp main/PreferencesDialog.h |
diffstat | 5 files changed, 39 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/.hgsubstate Wed Dec 11 22:00:09 2013 +0000 +++ b/.hgsubstate Thu Dec 12 15:20:42 2013 +0000 @@ -1,5 +1,5 @@ 236814e07bd07473958c1ff89103124536a0c3c8 dataquay 3c5adc4a864fa75e5b1e67c260b77541aaa4f1f6 sv-dependency-builds -47964f188bd9cb2a75ad5c3783a86db76950a392 svapp +c837368b1faf2cd3727242099eefec0a18deb91f svapp 786ee8d1f30e4920f361419a75eafa079ec0160d svcore b81f21f2c4c3d1cb115e278a098ac4869fb7377f svgui
--- a/main/MainWindow.cpp Wed Dec 11 22:00:09 2013 +0000 +++ b/main/MainWindow.cpp Thu Dec 12 15:20:42 2013 +0000 @@ -128,7 +128,7 @@ MainWindow::MainWindow(bool withAudioOutput, bool withOSCSupport) : - MainWindowBase(withAudioOutput, withOSCSupport, true), + MainWindowBase(withAudioOutput, true), m_overview(0), m_mainMenusCreated(false), m_paneMenu(0), @@ -302,6 +302,9 @@ NetworkPermissionTester tester; bool networkPermission = tester.havePermission(); if (networkPermission) { + if (withOSCSupport) { + startOSCQueue(); + } TransformFactory::getInstance()->startPopulationThread(); m_surveyer = new Surveyer ("sonicvisualiser.org", "survey23-present.txt", "survey23.php");
--- a/main/NetworkPermissionTester.cpp Wed Dec 11 22:00:09 2013 +0000 +++ b/main/NetworkPermissionTester.cpp Thu Dec 12 15:20:42 2013 +0000 @@ -56,10 +56,12 @@ "<p>Developed in the Centre for Digital Music at Queen Mary, University of London, Sonic Visualiser is provided free as open source software under the GNU General Public License.</p>" "<p><hr></p>" "<p><b>Before we go on...</b></p>" - "<p>Sonic Visualiser needs to make occasional network requests to our servers.</p>" + "<p>Sonic Visualiser would like to make networking connections and open a network port.</p>" "<p>This is to:</p>" - "<ul><li> look up information about available and installed plugins; and</li>" - "<li> tell you when updates are available.</li></ul>" + "<ul><li> Find information about available and installed plugins;</li>" + "<li> Support the use of Open Sound Control, where configured; and</li>" + "<li> Tell you when updates are available.</li>" + "</ul>" "<p>No personal information will be sent, no tracking is carried out, and all requests happen in the background without interrupting your work.</p>" "<p>We recommend that you allow this, because it makes Sonic Visualiser more useful. But if you do not wish to do so, please un-check the box below.<br></p>")); layout->addWidget(label, 0, 0);
--- a/main/PreferencesDialog.cpp Wed Dec 11 22:00:09 2013 +0000 +++ b/main/PreferencesDialog.cpp Thu Dec 12 15:20:42 2013 +0000 @@ -42,6 +42,8 @@ #include "audioio/AudioTargetFactory.h" #include "base/ResourceFinder.h" +#include "version.h" + PreferencesDialog::PreferencesDialog(QWidget *parent) : QDialog(parent), m_audioDevice(0), @@ -206,8 +208,13 @@ #endif settings.beginGroup("Preferences"); + QString userLocale = settings.value("locale", "").toString(); m_currentLocale = userLocale; + + QString permishTag = QString("network-permission-%1").arg(SV_VERSION); + m_networkPermission = settings.value(permishTag, false).toBool(); + settings.endGroup(); QComboBox *locale = new QComboBox; @@ -240,6 +247,11 @@ connect(locale, SIGNAL(currentIndexChanged(int)), this, SLOT(localeChanged(int))); + QCheckBox *networkPermish = new QCheckBox; + networkPermish->setCheckState(m_networkPermission ? Qt::Checked : Qt::Unchecked); + connect(networkPermish, SIGNAL(stateChanged(int)), + this, SLOT(networkPermissionChanged(int))); + QSpinBox *fontSize = new QSpinBox; int fs = prefs->getPropertyRangeAndValue("View Font Size", &min, &max, &deflt); @@ -278,6 +290,10 @@ row, 0); subgrid->addWidget(locale, row++, 1, 1, 1); + subgrid->addWidget(new QLabel(tr("%1:").arg(tr("Allow network usage"))), + row, 0); + subgrid->addWidget(networkPermish, row++, 1, 1, 1); + subgrid->addWidget(new QLabel(tr("%1:").arg(prefs->getPropertyLabel ("Temporary Directory Root"))), row, 0); @@ -508,6 +524,14 @@ } void +PreferencesDialog::networkPermissionChanged(int state) +{ + m_networkPermission = (state == Qt::Checked); + m_applyButton->setEnabled(true); + m_changesOnRestart = true; +} + +void PreferencesDialog::showSplashChanged(int state) { m_showSplash = (state == Qt::Checked); @@ -602,19 +626,17 @@ AudioTargetFactory::getInstance()->getCallbackTargetNames(); QSettings settings; - settings.beginGroup("Preferences"); + QString permishTag = QString("network-permission-%1").arg(SV_VERSION); + settings.setValue(permishTag, m_networkPermission); settings.setValue("audio-target", devices[m_audioDevice]); + settings.setValue("locale", m_currentLocale); settings.endGroup(); settings.beginGroup("MainWindow"); settings.setValue("sessiontemplate", m_currentTemplate); settings.endGroup(); - settings.beginGroup("Preferences"); - settings.setValue("locale", m_currentLocale); - settings.endGroup(); - m_applyButton->setEnabled(false); if (m_changesOnRestart) {
--- a/main/PreferencesDialog.h Wed Dec 11 22:00:09 2013 +0000 +++ b/main/PreferencesDialog.h Thu Dec 12 15:20:42 2013 +0000 @@ -61,6 +61,7 @@ void showSplashChanged(int state); void defaultTemplateChanged(int); void localeChanged(int); + void networkPermissionChanged(int state); void tempDirButtonClicked(); @@ -91,6 +92,7 @@ int m_audioDevice; int m_resampleQuality; bool m_resampleOnLoad; + bool m_networkPermission; QString m_tempDirRoot; int m_backgroundMode; int m_timeToTextMode;