diff --git a/include/ResourcePreviewer.h b/include/ResourcePreviewer.h index 5c06a752f..242ee37ef 100644 --- a/include/ResourcePreviewer.h +++ b/include/ResourcePreviewer.h @@ -28,6 +28,7 @@ #include "track_container.h" +class Piano; class ResourceItem; class instrumentTrack; @@ -41,6 +42,8 @@ public: void preview( ResourceItem * _item ); void stopPreview(); + Piano * pianoModel(); + private: class PreviewTrackContainer : public trackContainer diff --git a/src/core/ResourcePreviewer.cpp b/src/core/ResourcePreviewer.cpp index a11658a79..b9e6c1f22 100644 --- a/src/core/ResourcePreviewer.cpp +++ b/src/core/ResourcePreviewer.cpp @@ -45,6 +45,8 @@ ResourcePreviewer::ResourcePreviewer() : m_previewTrack = dynamic_cast( track::create( track::InstrumentTrack, &m_previewTrackContainer ) ); + // make sure a default instrument is loaded + m_previewTrack->loadInstrument( "tripleoscillator" ); m_previewTrack->setJournalling( false ); } @@ -121,5 +123,13 @@ void ResourcePreviewer::stopPreview() } + + +Piano * ResourcePreviewer::pianoModel() +{ + return m_previewTrack->pianoModel(); +} + + #include "moc_ResourcePreviewer.cxx" diff --git a/src/gui/ResourceBrowser.cpp b/src/gui/ResourceBrowser.cpp index bbad7f06f..c2bd925b6 100644 --- a/src/gui/ResourceBrowser.cpp +++ b/src/gui/ResourceBrowser.cpp @@ -33,6 +33,7 @@ #include "UnifiedResourceProvider.h" #include "engine.h" #include "embed.h" +#include "piano.h" struct ActionDesc @@ -107,9 +108,13 @@ ResourceBrowser::ResourceBrowser( QWidget * _parent ) : SIGNAL( clicked( const QModelIndex & ) ), this, SLOT( stopItemPreview( const QModelIndex & ) ) ); + PianoView * pianoView = new PianoView( contentParent() ); + pianoView->setModel( m_previewer.pianoModel() ); + // add widgets/layouts to us (we're a SideBarWidget) addContentLayout( filterLayout ); addContentWidget( m_treeView ); + addContentWidget( pianoView ); // instantly apply filter when typing into filterEdit