projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use make_shared<>.
[dcpomatic.git]
/
src
/
wx
/
content_menu.cc
diff --git
a/src/wx/content_menu.cc
b/src/wx/content_menu.cc
index 159239345296dd8bad7cbac4e48509ffbcbb8381..99b942174e0b508137f8e259d88eaca35131d61a 100644
(file)
--- a/
src/wx/content_menu.cc
+++ b/
src/wx/content_menu.cc
@@
-1,19
+1,20
@@
/*
/*
- Copyright (C) 2013-201
5
Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2013-201
6
Carl Hetherington <cth@carlh.net>
- This program is free software; you can redistribute it and/or modify
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
-
This program
is distributed in the hope that it will be useful,
+
DCP-o-matic
is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
*/
*/
@@
-31,13
+32,19
@@
#include "lib/job_manager.h"
#include "lib/exceptions.h"
#include "lib/dcp_content.h"
#include "lib/job_manager.h"
#include "lib/exceptions.h"
#include "lib/dcp_content.h"
+#include "lib/ffmpeg_content.h"
+#include "lib/audio_content.h"
#include <wx/wx.h>
#include <wx/dirdlg.h>
#include <wx/wx.h>
#include <wx/dirdlg.h>
+#include <boost/foreach.hpp>
+#include <boost/make_shared.hpp>
+#include <iostream>
using std::cout;
using std::vector;
using std::exception;
using boost::shared_ptr;
using std::cout;
using std::vector;
using std::exception;
using boost::shared_ptr;
+using boost::make_shared;
using boost::weak_ptr;
using boost::dynamic_pointer_cast;
using boost::weak_ptr;
using boost::dynamic_pointer_cast;
@@
-87,8
+94,8
@@
ContentMenu::popup (weak_ptr<Film> film, ContentList c, TimelineContentViewList
_repeat->Enable (!_content.empty ());
int n = 0;
_repeat->Enable (!_content.empty ());
int n = 0;
-
for (ContentList::const_iterator i = _content.begin(); i != _content.end(); ++i
) {
- if (dynamic_pointer_cast<FFmpegContent> (
*
i)) {
+
BOOST_FOREACH (shared_ptr<Content> i, _content
) {
+ if (dynamic_pointer_cast<FFmpegContent> (i)) {
++n;
}
}
++n;
}
}
@@
-139,8
+146,8
@@
void
ContentMenu::join ()
{
vector<shared_ptr<Content> > fc;
ContentMenu::join ()
{
vector<shared_ptr<Content> > fc;
-
for (ContentList::const_iterator i = _content.begin(); i != _content.end(); ++i
) {
- shared_ptr<FFmpegContent> f = dynamic_pointer_cast<FFmpegContent> (
*
i);
+
BOOST_FOREACH (shared_ptr<Content> i, _content
) {
+ shared_ptr<FFmpegContent> f = dynamic_pointer_cast<FFmpegContent> (i);
if (f) {
fc.push_back (f);
}
if (f) {
fc.push_back (f);
}
@@
-154,9
+161,9
@@
ContentMenu::join ()
}
try {
}
try {
- shared_ptr<FFmpegContent> joined
(new FFmpegContent (film, fc)
);
-
for (ContentList::const_iterator i = _content.begin(); i != _content.end(); ++i
) {
- film->remove_content (
*
i);
+ shared_ptr<FFmpegContent> joined
= boost::make_shared<FFmpegContent> (film, fc
);
+
BOOST_FOREACH (shared_ptr<Content> i, _content
) {
+ film->remove_content (i);
}
film->add_content (joined);
} catch (JoinError& e) {
}
film->add_content (joined);
} catch (JoinError& e) {
@@
-182,8
+189,8
@@
ContentMenu::remove ()
/* Special case: we only remove FFmpegContent if its video view is selected;
if not, and its audio view is selected, we unmap the audio.
*/
/* Special case: we only remove FFmpegContent if its video view is selected;
if not, and its audio view is selected, we unmap the audio.
*/
-
for (ContentList::iterator i = _content.begin(); i != _content.end(); ++i
) {
- shared_ptr<FFmpegContent> fc = dynamic_pointer_cast<FFmpegContent> (
*
i);
+
BOOST_FOREACH (shared_ptr<Content> i, _content
) {
+ shared_ptr<FFmpegContent> fc = dynamic_pointer_cast<FFmpegContent> (i);
if (!fc) {
continue;
}
if (!fc) {
continue;
}
@@
-191,9
+198,9
@@
ContentMenu::remove ()
shared_ptr<TimelineVideoContentView> video;
shared_ptr<TimelineAudioContentView> audio;
shared_ptr<TimelineVideoContentView> video;
shared_ptr<TimelineAudioContentView> audio;
-
for (TimelineContentViewList::iterator i = _views.begin(); i != _views.end(); ++i
) {
- shared_ptr<TimelineVideoContentView> v = dynamic_pointer_cast<TimelineVideoContentView> (
*i
);
- shared_ptr<TimelineAudioContentView> a = dynamic_pointer_cast<TimelineAudioContentView> (
*i
);
+
BOOST_FOREACH (shared_ptr<TimelineContentView> j, _views
) {
+ shared_ptr<TimelineVideoContentView> v = dynamic_pointer_cast<TimelineVideoContentView> (
j
);
+ shared_ptr<TimelineAudioContentView> a = dynamic_pointer_cast<TimelineAudioContentView> (
j
);
if (v && v->content() == fc) {
video = v;
} else if (a && a->content() == fc) {
if (v && v->content() == fc) {
video = v;
} else if (a && a->content() == fc) {
@@
-202,9
+209,9
@@
ContentMenu::remove ()
}
if (!video && audio) {
}
if (!video && audio) {
- AudioMapping m = fc->audio
_
mapping ();
+ AudioMapping m = fc->audio
->
mapping ();
m.unmap_all ();
m.unmap_all ();
- fc->
set_audio
_mapping (m);
+ fc->
audio->set
_mapping (m);
handled = true;
}
}
handled = true;
}
}
@@
-259,7
+266,7
@@
ContentMenu::find_missing ()
return;
}
return;
}
- shared_ptr<Job> j
(new ExamineContentJob (film, content)
);
+ shared_ptr<Job> j
= make_shared<ExamineContentJob> (film, content
);
_job_connection = j->Finished.connect (
bind (
_job_connection = j->Finished.connect (
bind (
@@
-282,8
+289,8
@@
ContentMenu::re_examine ()
return;
}
return;
}
-
for (ContentList::iterator i = _content.begin(); i != _content.end(); ++i
) {
- film->examine_content (
*
i);
+
BOOST_FOREACH (shared_ptr<Content> i, _content
) {
+ film->examine_content (i);
}
}
}
}