# HG changeset patch # User Chris Cannam # Date 1440072919 -3600 # Node ID 2f8018eb1573bad9c37240306992a2b53507b084 # Parent 100b3fd8e171367974cdd479b950f6b61e526d5c# Parent 7cda09a99a79dfa5be7cfc235ce5b4b824f78c87 Merge from branch recording diff -r 100b3fd8e171 -r 2f8018eb1573 .hgsubstate --- a/.hgsubstate Wed Aug 05 17:47:12 2015 +0100 +++ b/.hgsubstate Thu Aug 20 13:15:19 2015 +0100 @@ -1,9 +1,9 @@ -250b1f9300cc33e94e7ecf371ebb5ce41baadd98 bqaudioio +187d6a02a90e62f392b4ec6ca00947d346c9d6dc bqaudioio 62c40e7f9231e459091c3352c5d4b6001be127ca bqresample 94b6ebd5e8ab897e5b294fd77b4113e8d6d78b13 bqvec d16f0fd6db6104d87882bc43788a3bb1b0f8c528 dataquay -06ed2d275a956fd1224376f74dfe170c19d3b2c2 icons/scalable +3777c7bf171aa4e8600fabbacf0cfb7c9b18aedc icons/scalable 55ece8862b6d3a54aad271a53f9c1615e5d3bcf8 sv-dependency-builds -6ec35c1690c0a7b553d366a7edcbcb0f7a5b1c37 svapp -fbc43d5dc3d108cf0cd906cc3934fca1ff6e941f svcore +52c0aff69478e2fcb6a3ae9e7aaa56ee3f07c87a svapp +efea94b04d5ab416aef63afb06abcae0347f5f38 svcore 8588b97f1d1c324a9d2c14e646b07fc00442172f svgui diff -r 100b3fd8e171 -r 2f8018eb1573 main/MainWindow.cpp --- a/main/MainWindow.cpp Wed Aug 05 17:47:12 2015 +0100 +++ b/main/MainWindow.cpp Thu Aug 20 13:15:19 2015 +0100 @@ -58,6 +58,7 @@ #include "widgets/ActivityLog.h" #include "widgets/UnitConverter.h" #include "audio/AudioCallbackPlaySource.h" +#include "audio/AudioRecordTarget.h" #include "audio/PlaySpeedRangeMapper.h" #include "data/fileio/DataFileReaderFactory.h" #include "data/fileio/PlaylistFileReader.h" @@ -129,8 +130,8 @@ using std::set; -MainWindow::MainWindow(bool withAudioOutput, bool withOSCSupport) : - MainWindowBase(withAudioOutput, true), +MainWindow::MainWindow(SoundOptions options, bool withOSCSupport) : + MainWindowBase(options), m_overview(0), m_mainMenusCreated(false), m_paneMenu(0), @@ -154,6 +155,7 @@ m_ffwdSimilarAction(0), m_ffwdEndAction(0), m_playAction(0), + m_recordAction(0), m_playSelectionAction(0), m_playLoopAction(0), m_soloModified(false), @@ -1980,6 +1982,17 @@ connect(m_ffwdEndAction, SIGNAL(triggered()), this, SLOT(ffwdEnd())); connect(this, SIGNAL(canPlay(bool)), m_ffwdEndAction, SLOT(setEnabled(bool))); + m_recordAction = toolbar->addAction(il.load("record"), + tr("Record")); + m_recordAction->setCheckable(true); + m_recordAction->setShortcut(tr("Ctrl+Space")); + m_recordAction->setStatusTip(tr("Record a new audio file")); + connect(m_recordAction, SIGNAL(triggered()), this, SLOT(record())); + connect(m_recordTarget, SIGNAL(recordStatusChanged(bool)), + m_recordAction, SLOT(setChecked(bool))); + connect(this, SIGNAL(canRecord(bool)), + m_recordAction, SLOT(setEnabled(bool))); + toolbar = addToolBar(tr("Play Mode Toolbar")); m_playSelectionAction = toolbar->addAction(il.load("playselection"), diff -r 100b3fd8e171 -r 2f8018eb1573 main/MainWindow.h --- a/main/MainWindow.h Wed Aug 05 17:47:12 2015 +0100 +++ b/main/MainWindow.h Thu Aug 20 13:15:19 2015 +0100 @@ -32,8 +32,7 @@ Q_OBJECT public: - MainWindow(bool withAudioOutput = true, - bool withOSCSupport = true); + MainWindow(SoundOptions options, bool withOSCSupport = true); virtual ~MainWindow(); signals: @@ -188,6 +187,7 @@ QAction *m_ffwdSimilarAction; QAction *m_ffwdEndAction; QAction *m_playAction; + QAction *m_recordAction; QAction *m_playSelectionAction; QAction *m_playLoopAction; QAction *m_manageTemplatesAction; diff -r 100b3fd8e171 -r 2f8018eb1573 main/main.cpp --- a/main/main.cpp Wed Aug 05 17:47:12 2015 +0100 +++ b/main/main.cpp Thu Aug 20 13:15:19 2015 +0100 @@ -335,7 +335,10 @@ // Permit size_t and PropertyName to be used as args in queued signal calls qRegisterMetaType("PropertyContainer::PropertyName"); - MainWindow *gui = new MainWindow(audioOutput, oscSupport); + MainWindow::SoundOptions options = MainWindow::WithEverything; + if (!audioOutput) options = 0; + + MainWindow *gui = new MainWindow(options, oscSupport); application.setMainWindow(gui); InteractiveFileFinder::setParentWidget(gui); TransformUserConfigurator::setParentWidget(gui); diff -r 100b3fd8e171 -r 2f8018eb1573 sonic-visualiser.qrc --- a/sonic-visualiser.qrc Wed Aug 05 17:47:12 2015 +0100 +++ b/sonic-visualiser.qrc Thu Aug 20 13:15:19 2015 +0100 @@ -25,6 +25,7 @@ icons/scalable/playselection.svg icons/scalable/solo.svg icons/scalable/play.svg + icons/scalable/record.svg icons/scalable/rewind-start.svg icons/scalable/rewind.svg icons/scalable/undo.svg