[vlmc-devel] [PATCH] Don't use Workspace to save media
Yikai Lu
luyikei.qmltu at gmail.com
Mon Apr 4 13:17:22 CEST 2016
---
src/Library/Library.cpp | 8 +++-----
src/Library/Library.h | 2 +-
src/Main/Core.cpp | 2 +-
src/Project/Workspace.cpp | 13 -------------
src/Project/Workspace.h | 2 --
5 files changed, 5 insertions(+), 22 deletions(-)
diff --git a/src/Library/Library.cpp b/src/Library/Library.cpp
index db5e2bf..b560d19 100644
--- a/src/Library/Library.cpp
+++ b/src/Library/Library.cpp
@@ -40,9 +40,8 @@
#include <QHash>
#include <QUuid>
-Library::Library( Workspace *workspace )
+Library::Library()
: m_cleanState( true )
- , m_workspace( workspace )
{
}
@@ -64,8 +63,7 @@ Library::load(const QDomDocument& doc )
{
QString mrl = media.attribute( "mrl" );
- mrl = m_workspace->toAbsolutePath( mrl );
- Media* m = addMedia( mrl );
+ Media* m = addMedia( QFileInfo( mrl ) );
if ( m == nullptr )
vlmcWarning() << "Failed to load media" << mrl << "when loading project.";
else
@@ -97,7 +95,7 @@ Library::save( QXmlStreamWriter& project )
Q_ASSERT( (*it)->isRootClip() == true );
const Media* m = (*it)->getMedia();
project.writeStartElement( "media" );
- project.writeAttribute( "mrl", m_workspace->toWorkspacePath( m ) );
+ project.writeAttribute( "mrl", m->fileInfo()->absoluteFilePath() );
project.writeEndElement();
++it;
}
diff --git a/src/Library/Library.h b/src/Library/Library.h
index 162305a..0373132 100644
--- a/src/Library/Library.h
+++ b/src/Library/Library.h
@@ -53,7 +53,7 @@ class Library : public MediaContainer, public ILoadSave
Q_DISABLE_COPY( Library );
public:
- Library(Workspace* workspace);
+ Library();
virtual ~Library(){}
virtual void addMedia( Media* media );
virtual Media *addMedia( const QFileInfo &fileInfo );
diff --git a/src/Main/Core.cpp b/src/Main/Core.cpp
index 62fc7c6..42b6681 100644
--- a/src/Main/Core.cpp
+++ b/src/Main/Core.cpp
@@ -52,7 +52,7 @@ Core::Core()
m_workflow = new MainWorkflow;
m_workflowRenderer = new WorkflowRenderer( Backend::getBackend(), m_workflow );
m_undoStack = new QUndoStack;
- m_library = new Library( m_workspace );
+ m_library = new Library;
m_currentProject = new Project( m_settings );
connect( m_undoStack, &QUndoStack::cleanChanged, m_currentProject, &Project::cleanChanged );
diff --git a/src/Project/Workspace.cpp b/src/Project/Workspace.cpp
index a82bd3b..4c4b056 100644
--- a/src/Project/Workspace.cpp
+++ b/src/Project/Workspace.cpp
@@ -173,16 +173,3 @@ Workspace::isInWorkspace(const Media *media)
{
return isInWorkspace( *(media->fileInfo() ) );
}
-
-QString
-Workspace::toAbsolutePath( const QString& path )
-{
- QString res = path;
- return res.replace( Workspace::workspacePrefix, m_workspaceDir );
-}
-
-QString
-Workspace::toWorkspacePath(const Media *media)
-{
- return media->fileInfo()->absoluteFilePath().replace( m_workspaceDir, Workspace::workspacePrefix );
-}
diff --git a/src/Project/Workspace.h b/src/Project/Workspace.h
index b824d0f..e149fe4 100644
--- a/src/Project/Workspace.h
+++ b/src/Project/Workspace.h
@@ -46,8 +46,6 @@ class Workspace : public QObject, public ErrorHandler
~Workspace();
bool isInWorkspace( const QString &path );
bool isInWorkspace( const Media *media );
- QString toAbsolutePath( const QString &path );
- QString toWorkspacePath( const Media* media );
bool copyToWorkspace( Media* media );
private:
--
1.9.1
More information about the Vlmc-devel
mailing list