projects
/
dcpomatic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
62c03e3
)
Check for playlist directory on new playlist, rather than save.
author
Carl Hetherington
<cth@carlh.net>
Thu, 1 Dec 2022 19:24:56 +0000
(20:24 +0100)
committer
Carl Hetherington
<cth@carlh.net>
Thu, 1 Dec 2022 19:25:08 +0000
(20:25 +0100)
src/tools/dcpomatic_playlist.cc
patch
|
blob
|
history
diff --git
a/src/tools/dcpomatic_playlist.cc
b/src/tools/dcpomatic_playlist.cc
index 3e3bd02669cc8e359c855126608b66a69e551d08..4a4407b02c60e4464ece8153b8b12d53eff504ef 100644
(file)
--- a/
src/tools/dcpomatic_playlist.cc
+++ b/
src/tools/dcpomatic_playlist.cc
@@
-106,6
+106,7
@@
public:
PlaylistList (wxPanel* parent, ContentStore* content_store)
: _sizer (new wxBoxSizer(wxVERTICAL))
, _content_store (content_store)
PlaylistList (wxPanel* parent, ContentStore* content_store)
: _sizer (new wxBoxSizer(wxVERTICAL))
, _content_store (content_store)
+ , _parent(parent)
{
auto label = new wxStaticText (parent, wxID_ANY, wxEmptyString);
label->SetLabelMarkup (_("<b>Playlists</b>"));
{
auto label = new wxStaticText (parent, wxID_ANY, wxEmptyString);
label->SetLabelMarkup (_("<b>Playlists</b>"));
@@
-227,6
+228,12
@@
private:
void new_playlist ()
{
void new_playlist ()
{
+ auto dir = Config::instance()->player_playlist_directory();
+ if (!dir) {
+ error_dialog(_parent, _("No playlist folder is specified in preferences. Please set one and then try again."));
+ return;
+ }
+
shared_ptr<SignalSPL> spl (new SignalSPL(wx_to_std(_("New Playlist"))));
add_playlist_to_model (spl);
add_playlist_to_view (spl);
shared_ptr<SignalSPL> spl (new SignalSPL(wx_to_std(_("New Playlist"))));
add_playlist_to_model (spl);
add_playlist_to_view (spl);
@@
-280,6
+287,7
@@
private:
wxButton* _delete;
vector<shared_ptr<SignalSPL>> _playlists;
ContentStore* _content_store;
wxButton* _delete;
vector<shared_ptr<SignalSPL>> _playlists;
ContentStore* _content_store;
+ wxWindow* _parent;
};
};
@@
-546,12
+554,9
@@
private:
void save_playlist (shared_ptr<SignalSPL> playlist)
{
void save_playlist (shared_ptr<SignalSPL> playlist)
{
- auto dir = Config::instance()->player_playlist_directory();
- if (!dir) {
- error_dialog (this, _("No playlist folder is specified in preferences. Please set one and then try again."));
- return;
+ if (auto dir = Config::instance()->player_playlist_directory()) {
+ playlist->write(*dir / (playlist->id() + ".xml"));
}
}
- playlist->write (*dir / (playlist->id() + ".xml"));
}
void setup_menu (wxMenuBar* m)
}
void setup_menu (wxMenuBar* m)