From 833610ea1cf7a0bc2f643f25cc57341dc27ff7c7 Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Mon, 13 Apr 2009 23:58:30 +0200 Subject: [PATCH] FileBrowser: added file type VstPluginFile Added file type VstPluginFile in order to allow loading DLL files by an according plugin directly from file browser. (cherry picked from commit e0d352dc2c56a314c8ba91cf824b5f05780e3512) --- include/file_browser.h | 3 ++- src/gui/file_browser.cpp | 18 ++++++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/include/file_browser.h b/include/file_browser.h index efff40905..d69aa546d 100644 --- a/include/file_browser.h +++ b/include/file_browser.h @@ -1,7 +1,7 @@ /* * file_browser.h - include file for fileBrowser * - * Copyright (c) 2004-2008 Tobias Doerffel + * Copyright (c) 2004-2009 Tobias Doerffel * * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net * @@ -178,6 +178,7 @@ public: PatchFile, MidiFile, FlpFile, + VstPluginFile, UnknownFile, NumFileTypes } ; diff --git a/src/gui/file_browser.cpp b/src/gui/file_browser.cpp index 531466005..d98a5cbf5 100644 --- a/src/gui/file_browser.cpp +++ b/src/gui/file_browser.cpp @@ -435,8 +435,9 @@ void fileBrowserTreeWidget::mousePressEvent( QMouseEvent * _me ) m_previewPlayHandle = s; delete tf; } - else if( f->handling() == fileItem::LoadAsPreset || - f->handling() == fileItem::LoadByPlugin ) + else if( f->type() != fileItem::VstPluginFile && + ( f->handling() == fileItem::LoadAsPreset || + f->handling() == fileItem::LoadByPlugin ) ) { m_previewPlayHandle = new presetPreviewPlayHandle( f->fullName(), @@ -499,6 +500,14 @@ void fileBrowserTreeWidget::mouseMoveEvent( QMouseEvent * _me ) this ); break; + case fileItem::VstPluginFile: + new stringPairDrag( "vstplugin", + f->fullName(), + embed::getIconPixmap( + "sample_file" ), + this ); + break; + default: break; } @@ -992,6 +1001,11 @@ void fileItem::determineFileType( void ) m_type = FlpFile; m_handling = ImportAsProject; } + else if( ext == "dll" ) + { + m_type = VstPluginFile; + m_handling = LoadByPlugin; + } else { m_type = UnknownFile;