2 Copyright (C) 2022 Carl Hetherington <cth@carlh.net>
4 This file is part of DCP-o-matic.
6 DCP-o-matic is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 DCP-o-matic is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
22 #include "editable_list.h"
23 #include "extra_kdm_email_dialog.h"
25 #include <wx/gbsizer.h>
31 #if BOOST_VERSION >= 106100
32 using namespace boost::placeholders;
36 ExtraKDMEmailDialog::ExtraKDMEmailDialog (wxWindow* parent, vector<string> emails)
37 : wxDialog (parent, wxID_ANY, _("Extra addresses for KDM delivery"))
40 auto overall_sizer = new wxBoxSizer (wxVERTICAL);
41 SetSizer (overall_sizer);
43 auto sizer = new wxGridBagSizer (DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
46 vector<EditableListColumn> columns;
47 columns.push_back (EditableListColumn(_("Address"), 500, true));
48 _email_list = new EditableList<string, EmailDialog> (
49 this, columns, bind(&ExtraKDMEmailDialog::get, this), bind(&ExtraKDMEmailDialog::set, this, _1), [](string s, int) {
51 }, EditableListTitle::INVISIBLE, EditableListButton::NEW | EditableListButton::EDIT | EditableListButton::REMOVE
54 sizer->Add (_email_list, wxGBPosition(r, 0), wxGBSpan(1, 2), wxEXPAND);
57 overall_sizer->Add (sizer, 1, wxEXPAND | wxALL, DCPOMATIC_DIALOG_BORDER);
59 auto buttons = CreateSeparatedButtonSizer (wxOK | wxCANCEL);
61 overall_sizer->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
64 overall_sizer->Layout ();
65 overall_sizer->SetSizeHints (this);
70 ExtraKDMEmailDialog::get () const
77 ExtraKDMEmailDialog::set(vector<string> emails)