projects
/
dcpomatic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
5c444b3
)
Add save button for playlist name.
author
Carl Hetherington
<cth@carlh.net>
Thu, 1 Dec 2022 19:35:39 +0000
(20:35 +0100)
committer
Carl Hetherington
<cth@carlh.net>
Thu, 1 Dec 2022 19:35:39 +0000
(20:35 +0100)
src/tools/dcpomatic_playlist.cc
patch
|
blob
|
history
diff --git
a/src/tools/dcpomatic_playlist.cc
b/src/tools/dcpomatic_playlist.cc
index 636a50f8ab9d6a3daafd36e564ba8d2ef65c871e..175eafac7d1447328d369583581793e917d1a423 100644
(file)
--- a/
src/tools/dcpomatic_playlist.cc
+++ b/
src/tools/dcpomatic_playlist.cc
@@
-312,6
+312,8
@@
public:
title->Add (label, 0, wxALIGN_CENTER_VERTICAL | wxRIGHT, DCPOMATIC_SIZER_GAP);
_name = new wxTextCtrl (parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(400, -1));
title->Add (_name, 0, wxRIGHT, DCPOMATIC_SIZER_GAP);
title->Add (label, 0, wxALIGN_CENTER_VERTICAL | wxRIGHT, DCPOMATIC_SIZER_GAP);
_name = new wxTextCtrl (parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(400, -1));
title->Add (_name, 0, wxRIGHT, DCPOMATIC_SIZER_GAP);
+ _save_name = new Button(parent, _("Save"));
+ title->Add(_save_name);
_sizer->Add (title, 0, wxTOP | wxLEFT, DCPOMATIC_SIZER_GAP * 2);
auto list = new wxBoxSizer (wxHORIZONTAL);
_sizer->Add (title, 0, wxTOP | wxLEFT, DCPOMATIC_SIZER_GAP * 2);
auto list = new wxBoxSizer (wxHORIZONTAL);
@@
-354,6
+356,7
@@
public:
_list->Bind (wxEVT_COMMAND_LIST_ITEM_SELECTED, bind(&PlaylistContent::setup_sensitivity, this));
_list->Bind (wxEVT_COMMAND_LIST_ITEM_DESELECTED, bind(&PlaylistContent::setup_sensitivity, this));
_name->Bind (wxEVT_TEXT, bind(&PlaylistContent::name_changed, this));
_list->Bind (wxEVT_COMMAND_LIST_ITEM_SELECTED, bind(&PlaylistContent::setup_sensitivity, this));
_list->Bind (wxEVT_COMMAND_LIST_ITEM_DESELECTED, bind(&PlaylistContent::setup_sensitivity, this));
_name->Bind (wxEVT_TEXT, bind(&PlaylistContent::name_changed, this));
+ _save_name->bind(&PlaylistContent::save_name_clicked, this);
_up->Bind (wxEVT_BUTTON, bind(&PlaylistContent::up_clicked, this));
_down->Bind (wxEVT_BUTTON, bind(&PlaylistContent::down_clicked, this));
_add->Bind (wxEVT_BUTTON, bind(&PlaylistContent::add_clicked, this));
_up->Bind (wxEVT_BUTTON, bind(&PlaylistContent::up_clicked, this));
_down->Bind (wxEVT_BUTTON, bind(&PlaylistContent::down_clicked, this));
_add->Bind (wxEVT_BUTTON, bind(&PlaylistContent::add_clicked, this));
@@
-389,11
+392,18
@@
public:
private:
private:
- void
name_changed
()
+ void
save_name_clicked
()
{
if (_playlist) {
{
if (_playlist) {
- _playlist->set_name (wx_to_std(_name->GetValue()));
+ _playlist->set_name(wx_to_std(_name->GetValue()));
+ save_playlist(_playlist);
}
}
+ setup_sensitivity();
+ }
+
+ void name_changed ()
+ {
+ setup_sensitivity();
}
void add (SPLEntry e)
}
void add (SPLEntry e)
@@
-418,6
+428,7
@@
private:
int const num_selected = _list->GetSelectedItemCount ();
long int selected = _list->GetNextItem (-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
_name->Enable (have_list);
int const num_selected = _list->GetSelectedItemCount ();
long int selected = _list->GetNextItem (-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
_name->Enable (have_list);
+ _save_name->Enable(_playlist && _playlist->name() != wx_to_std(_name->GetValue()));
_list->Enable (have_list);
_up->Enable (have_list && selected > 0);
_down->Enable (have_list && selected != -1 && selected < (_list->GetItemCount() - 1));
_list->Enable (have_list);
_up->Enable (have_list && selected > 0);
_down->Enable (have_list && selected != -1 && selected < (_list->GetItemCount() - 1));
@@
-484,6
+495,7
@@
private:
ContentDialog* _content_dialog;
wxBoxSizer* _sizer;
wxTextCtrl* _name;
ContentDialog* _content_dialog;
wxBoxSizer* _sizer;
wxTextCtrl* _name;
+ Button* _save_name;
wxListCtrl* _list;
wxButton* _up;
wxButton* _down;
wxListCtrl* _list;
wxButton* _up;
wxButton* _down;