8df208934372512b9a7f20adf6dcc676b5b3c49b
[dcpomatic.git] / src / wx / make_signer_chain_dialog.cc
1 /*
2     Copyright (C) 2014 Carl Hetherington <cth@carlh.net>
3
4     This program is free software; you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation; either version 2 of the License, or
7     (at your option) any later version.
8
9     This program is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12     GNU General Public License for more details.
13
14     You should have received a copy of the GNU General Public License
15     along with this program; if not, write to the Free Software
16     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18 */
19
20 #include "make_signer_chain_dialog.h"
21
22 MakeSignerChainDialog::MakeSignerChainDialog (wxWindow* parent)
23         : TableDialog (parent, _("Make certificate chain"), 2, true)
24 {
25         wxTextValidator validator (wxFILTER_EXCLUDE_CHAR_LIST);
26         validator.SetCharExcludes (wxT ("/"));
27
28         add (_("Organisation"), true);
29         add (_organisation = new wxTextCtrl (this, wxID_ANY, wxT (""), wxDefaultPosition, wxDefaultSize, 0, validator));
30         add (_("Organisational unit"), true);
31         add (_organisational_unit = new wxTextCtrl (this, wxID_ANY, wxT (""), wxDefaultPosition, wxDefaultSize, 0, validator));
32
33         add (_("Root common name"), true);
34
35         {
36                 wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
37                 s->Add (new wxStaticText (this, wxID_ANY, wxT (".")), 0, wxALIGN_CENTER_VERTICAL);
38                 s->Add (_root_common_name = new wxTextCtrl (
39                                 this, wxID_ANY, wxT (""), wxDefaultPosition, wxDefaultSize, 0, validator), 1, wxALIGN_CENTER_VERTICAL
40                         );
41                 add (s);
42         }
43
44         add (_("Intermediate common name"), true);
45
46         {
47                 wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
48                 s->Add (new wxStaticText (this, wxID_ANY, wxT (".")), 0, wxALIGN_CENTER_VERTICAL);
49                 s->Add (_intermediate_common_name = new wxTextCtrl (
50                                 this, wxID_ANY, wxT (""), wxDefaultPosition, wxDefaultSize, 0, validator), 1, wxALIGN_CENTER_VERTICAL
51                         );
52                 add (s);
53         }
54
55         add (_("Leaf common name"), true);
56
57         {
58                 wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
59                 s->Add (new wxStaticText (this, wxID_ANY, wxT ("CS.")), 0, wxALIGN_CENTER_VERTICAL);
60                 s->Add (_leaf_common_name = new wxTextCtrl (
61                                 this, wxID_ANY, wxT (""), wxDefaultPosition, wxDefaultSize, 0, validator), 1, wxALIGN_CENTER_VERTICAL
62                         );
63                 add (s);
64         }
65
66         layout ();
67
68         SetSize (640, -1);
69 }