More bits and pieces.
authorCarl Hetherington <cth@carlh.net>
Sun, 16 Mar 2014 23:11:34 +0000 (23:11 +0000)
committerCarl Hetherington <cth@carlh.net>
Sun, 16 Mar 2014 23:11:34 +0000 (23:11 +0000)
icons/colour_conversions.png [new file with mode: 0644]
icons/colour_conversions.svg [new file with mode: 0644]
icons/defaults.png
icons/defaults.svg
icons/tms.png [new file with mode: 0644]
icons/tms.svg [new file with mode: 0644]
src/wx/config_dialog.cc

diff --git a/icons/colour_conversions.png b/icons/colour_conversions.png
new file mode 100644 (file)
index 0000000..5cd2b32
Binary files /dev/null and b/icons/colour_conversions.png differ
diff --git a/icons/colour_conversions.svg b/icons/colour_conversions.svg
new file mode 100644 (file)
index 0000000..a163f9c
--- /dev/null
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="744.09448819"
+   height="1052.3622047"
+   id="svg3882"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="New document 9">
+  <defs
+     id="defs3884" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1"
+     inkscape:cx="465.68138"
+     inkscape:cy="520"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1366"
+     inkscape:window-height="714"
+     inkscape:window-x="0"
+     inkscape:window-y="27"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata3887">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="color:#000000;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10.62992096;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3941"
+       width="100"
+       height="300"
+       x="193.66678"
+       y="335.36218" />
+    <rect
+       style="color:#000000;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10.62992096;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3941-5"
+       width="100"
+       height="300"
+       x="293.66678"
+       y="335.36218" />
+    <rect
+       style="color:#000000;fill:#0000ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10.62992096;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3941-5-1"
+       width="100"
+       height="300"
+       x="393.66678"
+       y="335.36218" />
+    <rect
+       style="color:#000000;fill:none;stroke:none;stroke-width:10.62992095999999975;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect4026"
+       width="343"
+       height="343"
+       x="172"
+       y="315.36218" />
+  </g>
+</svg>
index edca493a065109a90032db09981d0d07ae8c58ca..c5bdcb008666a2e60c0665ed2f89b125366104c7 100644 (file)
Binary files a/icons/defaults.png and b/icons/defaults.png differ
index 029681578d317e9b8e3e6604f65d6357600237a2..d8057534ed79d335fe2ce620fc0a09263d6926a8 100644 (file)
    id="svg2"
    version="1.1"
    inkscape:version="0.48.4 r9939"
    id="svg2"
    version="1.1"
    inkscape:version="0.48.4 r9939"
-   sodipodi:docname="New document 1">
+   sodipodi:docname="defaults.svg"
+   inkscape:export-filename="/home/carl/src/dcpomatic/icons/defaults.png"
+   inkscape:export-xdpi="11.919314"
+   inkscape:export-ydpi="11.919314">
   <defs
      id="defs4" />
   <sodipodi:namedview
   <defs
      id="defs4" />
   <sodipodi:namedview
          d="m 167,421.36218 181,0"
          style="color:#000000;fill:none;stroke:#008080;stroke-width:10.62992096;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
     </g>
          d="m 167,421.36218 181,0"
          style="color:#000000;fill:none;stroke:#008080;stroke-width:10.62992096;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
     </g>
+    <rect
+       style="color:#000000;fill:none;stroke:#ffffff;stroke-width:10.62992095999999975;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3880"
+       width="295"
+       height="295"
+       x="74"
+       y="360.36218" />
   </g>
 </svg>
   </g>
 </svg>
diff --git a/icons/tms.png b/icons/tms.png
new file mode 100644 (file)
index 0000000..c74d647
Binary files /dev/null and b/icons/tms.png differ
diff --git a/icons/tms.svg b/icons/tms.svg
new file mode 100644 (file)
index 0000000..7162be0
--- /dev/null
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="744.09448819"
+   height="1052.3622047"
+   id="svg4047"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="tms.svg">
+  <defs
+     id="defs4049">
+    <linearGradient
+       id="linearGradient6065"
+       osb:paint="solid">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop6067" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="252.46881 : 700.96181 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="945.56329 : 858.96181 : 1"
+       inkscape:persp3d-origin="602.51605 : 274.56811 : 1"
+       id="perspective4055" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.7002102"
+     inkscape:cx="334.00378"
+     inkscape:cy="579.24673"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     objecttolerance="10000"
+     inkscape:window-width="1366"
+     inkscape:window-height="714"
+     inkscape:window-x="0"
+     inkscape:window-y="27"
+     inkscape:window-maximized="1">
+    <sodipodi:guide
+       orientation="0,1"
+       position="-88,846"
+       id="guide6105" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata4052">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <path
+       style="fill:#280b0b;stroke:#4d4d4d;stroke-width:12;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+       d="m 322.1775,438.62174 0.58816,146.4018 73.44365,-49.82452 -2.19901,-140.69539 z"
+       id="path6121"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccc" />
+    <path
+       style="fill:#280b0b;stroke:#4d4d4d;stroke-width:12;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+       d="m 323.35382,439.86652 -87.07405,-40.13194 0,126.71456 86.48589,58.35081 z"
+       id="path6123"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccc" />
+    <path
+       style="fill:#280b0b;stroke:#4d4d4d;stroke-width:12;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+       d="m 236.28706,399.69135 64.7791,-37.11367 93.23766,31.49886 -70.33658,47.08093 z"
+       id="path6125"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ccccc" />
+    <path
+       style="fill:none;stroke:#ff0000;stroke-width:8;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+       d="m 339.3698,456.5535 12.93958,-9.4106"
+       id="path6127"
+       inkscape:connector-curvature="0" />
+    <path
+       style="fill:none;stroke:#ff0000;stroke-width:8;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+       d="m 339.95796,471.84573 12.93958,-9.4106"
+       id="path6127-4"
+       inkscape:connector-curvature="0" />
+    <path
+       style="fill:none;stroke:#00ff00;stroke-width:8;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+       d="m 340.54612,487.13795 12.93958,-9.4106"
+       id="path6127-4-9"
+       inkscape:connector-curvature="0" />
+    <path
+       style="fill:none;stroke:#00ff00;stroke-width:8;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+       d="m 367.6016,534.77913 12.93958,-9.4106"
+       id="path6127-4-9-1"
+       inkscape:connector-curvature="0" />
+    <rect
+       style="color:#000000;fill:#ff0000;fill-opacity:0;fill-rule:nonzero;stroke:none;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect6202"
+       width="255.26256"
+       height="255.26256"
+       x="188.21201"
+       y="346.56711" />
+  </g>
+</svg>
index 7fe81de4eb3297a3f1bcef75f17e744d6b614835..a33a2bc6be9e824db1c4e68f814d424f54b6d602 100644 (file)
@@ -276,37 +276,37 @@ public:
                {
                        add_label_to_sizer (table, panel, _("Default duration of still images"), true);
                        wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
                {
                        add_label_to_sizer (table, panel, _("Default duration of still images"), true);
                        wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
-                       _default_still_length = new wxSpinCtrl (panel);
-                       s->Add (_default_still_length);
+                       _still_length = new wxSpinCtrl (panel);
+                       s->Add (_still_length);
                        add_label_to_sizer (s, panel, _("s"), false);
                        table->Add (s, 1);
                }
                
                add_label_to_sizer (table, panel, _("Default directory for new films"), true);
 #ifdef DCPOMATIC_USE_OWN_DIR_PICKER
                        add_label_to_sizer (s, panel, _("s"), false);
                        table->Add (s, 1);
                }
                
                add_label_to_sizer (table, panel, _("Default directory for new films"), true);
 #ifdef DCPOMATIC_USE_OWN_DIR_PICKER
-               _default_directory = new DirPickerCtrl (panel);
+               _directory = new DirPickerCtrl (panel);
 #else  
 #else  
-               _default_directory = new wxDirPickerCtrl (panel, wxDD_DIR_MUST_EXIST);
+               _directory = new wxDirPickerCtrl (panel, wxDD_DIR_MUST_EXIST);
 #endif
 #endif
-               table->Add (_default_directory, 1, wxEXPAND);
+               table->Add (_directory, 1, wxEXPAND);
                
                add_label_to_sizer (table, panel, _("Default DCI name details"), true);
                
                add_label_to_sizer (table, panel, _("Default DCI name details"), true);
-               _default_dci_metadata_button = new wxButton (panel, wxID_ANY, _("Edit..."));
-               table->Add (_default_dci_metadata_button);
+               _dci_metadata_button = new wxButton (panel, wxID_ANY, _("Edit..."));
+               table->Add (_dci_metadata_button);
                
                add_label_to_sizer (table, panel, _("Default container"), true);
                
                add_label_to_sizer (table, panel, _("Default container"), true);
-               _default_container = new wxChoice (panel, wxID_ANY);
-               table->Add (_default_container);
+               _container = new wxChoice (panel, wxID_ANY);
+               table->Add (_container);
                
                add_label_to_sizer (table, panel, _("Default content type"), true);
                
                add_label_to_sizer (table, panel, _("Default content type"), true);
-               _default_dcp_content_type = new wxChoice (panel, wxID_ANY);
-               table->Add (_default_dcp_content_type);
+               _dcp_content_type = new wxChoice (panel, wxID_ANY);
+               table->Add (_dcp_content_type);
                
                {
                        add_label_to_sizer (table, panel, _("Default JPEG2000 bandwidth"), true);
                        wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
                
                {
                        add_label_to_sizer (table, panel, _("Default JPEG2000 bandwidth"), true);
                        wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
-                       _default_j2k_bandwidth = new wxSpinCtrl (panel);
-                       s->Add (_default_j2k_bandwidth);
+                       _j2k_bandwidth = new wxSpinCtrl (panel);
+                       s->Add (_j2k_bandwidth);
                        add_label_to_sizer (s, panel, _("Mbit/s"), false);
                        table->Add (s, 1);
                }
                        add_label_to_sizer (s, panel, _("Mbit/s"), false);
                        table->Add (s, 1);
                }
@@ -314,75 +314,88 @@ public:
                {
                        add_label_to_sizer (table, panel, _("Default audio delay"), true);
                        wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
                {
                        add_label_to_sizer (table, panel, _("Default audio delay"), true);
                        wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
-                       _default_audio_delay = new wxSpinCtrl (panel);
-                       s->Add (_default_audio_delay);
+                       _audio_delay = new wxSpinCtrl (panel);
+                       s->Add (_audio_delay);
                        add_label_to_sizer (s, panel, _("ms"), false);
                        table->Add (s, 1);
                }
                        add_label_to_sizer (s, panel, _("ms"), false);
                        table->Add (s, 1);
                }
+
+               add_label_to_sizer (table, panel, _("Default issuer"), true);
+               _issuer = new wxTextCtrl (panel, wxID_ANY);
+               table->Add (_issuer, 1, wxEXPAND);
+
+               add_label_to_sizer (table, panel, _("Default creator"), true);
+               _creator = new wxTextCtrl (panel, wxID_ANY);
+               table->Add (_creator, 1, wxEXPAND);
                
                Config* config = Config::instance ();
                
                
                Config* config = Config::instance ();
                
-               _default_still_length->SetRange (1, 3600);
-               _default_still_length->SetValue (config->default_still_length ());
-               _default_still_length->Bind (wxEVT_COMMAND_SPINCTRL_UPDATED, boost::bind (&DefaultsPage::default_still_length_changed, this));
+               _still_length->SetRange (1, 3600);
+               _still_length->SetValue (config->default_still_length ());
+               _still_length->Bind (wxEVT_COMMAND_SPINCTRL_UPDATED, boost::bind (&DefaultsPage::still_length_changed, this));
                
                
-               _default_directory->SetPath (std_to_wx (config->default_directory_or (wx_to_std (wxStandardPaths::Get().GetDocumentsDir())).string ()));
-               _default_directory->Bind (wxEVT_COMMAND_DIRPICKER_CHANGED, boost::bind (&DefaultsPage::default_directory_changed, this));
+               _directory->SetPath (std_to_wx (config->default_directory_or (wx_to_std (wxStandardPaths::Get().GetDocumentsDir())).string ()));
+               _directory->Bind (wxEVT_COMMAND_DIRPICKER_CHANGED, boost::bind (&DefaultsPage::directory_changed, this));
                
                
-               _default_dci_metadata_button->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&DefaultsPage::edit_default_dci_metadata_clicked, this, parent));
+               _dci_metadata_button->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&DefaultsPage::edit_dci_metadata_clicked, this, parent));
                
                vector<Ratio const *> ratio = Ratio::all ();
                int n = 0;
                for (vector<Ratio const *>::iterator i = ratio.begin(); i != ratio.end(); ++i) {
                
                vector<Ratio const *> ratio = Ratio::all ();
                int n = 0;
                for (vector<Ratio const *>::iterator i = ratio.begin(); i != ratio.end(); ++i) {
-                       _default_container->Append (std_to_wx ((*i)->nickname ()));
+                       _container->Append (std_to_wx ((*i)->nickname ()));
                        if (*i == config->default_container ()) {
                        if (*i == config->default_container ()) {
-                               _default_container->SetSelection (n);
+                               _container->SetSelection (n);
                        }
                        ++n;
                }
                
                        }
                        ++n;
                }
                
-               _default_container->Bind (wxEVT_COMMAND_CHOICE_SELECTED, boost::bind (&DefaultsPage::default_container_changed, this));
+               _container->Bind (wxEVT_COMMAND_CHOICE_SELECTED, boost::bind (&DefaultsPage::container_changed, this));
                
                vector<DCPContentType const *> const ct = DCPContentType::all ();
                n = 0;
                for (vector<DCPContentType const *>::const_iterator i = ct.begin(); i != ct.end(); ++i) {
                
                vector<DCPContentType const *> const ct = DCPContentType::all ();
                n = 0;
                for (vector<DCPContentType const *>::const_iterator i = ct.begin(); i != ct.end(); ++i) {
-                       _default_dcp_content_type->Append (std_to_wx ((*i)->pretty_name ()));
+                       _dcp_content_type->Append (std_to_wx ((*i)->pretty_name ()));
                        if (*i == config->default_dcp_content_type ()) {
                        if (*i == config->default_dcp_content_type ()) {
-                               _default_dcp_content_type->SetSelection (n);
+                               _dcp_content_type->SetSelection (n);
                        }
                        ++n;
                }
                
                        }
                        ++n;
                }
                
-               _default_dcp_content_type->Bind (wxEVT_COMMAND_CHOICE_SELECTED, boost::bind (&DefaultsPage::default_dcp_content_type_changed, this));
+               _dcp_content_type->Bind (wxEVT_COMMAND_CHOICE_SELECTED, boost::bind (&DefaultsPage::dcp_content_type_changed, this));
                
                
-               _default_j2k_bandwidth->SetRange (50, 250);
-               _default_j2k_bandwidth->SetValue (config->default_j2k_bandwidth() / 1000000);
-               _default_j2k_bandwidth->Bind (wxEVT_COMMAND_SPINCTRL_UPDATED, boost::bind (&DefaultsPage::default_j2k_bandwidth_changed, this));
+               _j2k_bandwidth->SetRange (50, 250);
+               _j2k_bandwidth->SetValue (config->default_j2k_bandwidth() / 1000000);
+               _j2k_bandwidth->Bind (wxEVT_COMMAND_SPINCTRL_UPDATED, boost::bind (&DefaultsPage::j2k_bandwidth_changed, this));
                
                
-               _default_audio_delay->SetRange (-1000, 1000);
-               _default_audio_delay->SetValue (config->default_audio_delay ());
-               _default_audio_delay->Bind (wxEVT_COMMAND_SPINCTRL_UPDATED, boost::bind (&DefaultsPage::default_audio_delay_changed, this));
+               _audio_delay->SetRange (-1000, 1000);
+               _audio_delay->SetValue (config->default_audio_delay ());
+               _audio_delay->Bind (wxEVT_COMMAND_SPINCTRL_UPDATED, boost::bind (&DefaultsPage::audio_delay_changed, this));
+
+               _issuer->SetValue (std_to_wx (config->dcp_metadata().issuer));
+               _issuer->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&DefaultsPage::issuer_changed, this));
+               _creator->SetValue (std_to_wx (config->dcp_metadata().creator));
+               _creator->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&DefaultsPage::creator_changed, this));
 
                return panel;
        }
 
 private:
 
                return panel;
        }
 
 private:
-       void default_j2k_bandwidth_changed ()
+       void j2k_bandwidth_changed ()
        {
        {
-               Config::instance()->set_default_j2k_bandwidth (_default_j2k_bandwidth->GetValue() * 1000000);
+               Config::instance()->set_default_j2k_bandwidth (_j2k_bandwidth->GetValue() * 1000000);
        }
        
        }
        
-       void default_audio_delay_changed ()
+       void audio_delay_changed ()
        {
        {
-               Config::instance()->set_default_audio_delay (_default_audio_delay->GetValue());
+               Config::instance()->set_default_audio_delay (_audio_delay->GetValue());
        }
 
        }
 
-       void default_directory_changed ()
+       void directory_changed ()
        {
        {
-               Config::instance()->set_default_directory (wx_to_std (_default_directory->GetPath ()));
+               Config::instance()->set_default_directory (wx_to_std (_directory->GetPath ()));
        }
 
        }
 
-       void edit_default_dci_metadata_clicked (wxWindow* parent)
+       void edit_dci_metadata_clicked (wxWindow* parent)
        {
                DCIMetadataDialog* d = new DCIMetadataDialog (parent, Config::instance()->default_dci_metadata ());
                d->ShowModal ();
        {
                DCIMetadataDialog* d = new DCIMetadataDialog (parent, Config::instance()->default_dci_metadata ());
                d->ShowModal ();
@@ -390,34 +403,50 @@ private:
                d->Destroy ();
        }
 
                d->Destroy ();
        }
 
-       void default_still_length_changed ()
+       void still_length_changed ()
        {
        {
-               Config::instance()->set_default_still_length (_default_still_length->GetValue ());
+               Config::instance()->set_default_still_length (_still_length->GetValue ());
        }
        
        }
        
-       void default_container_changed ()
+       void container_changed ()
        {
                vector<Ratio const *> ratio = Ratio::all ();
        {
                vector<Ratio const *> ratio = Ratio::all ();
-               Config::instance()->set_default_container (ratio[_default_container->GetSelection()]);
+               Config::instance()->set_default_container (ratio[_container->GetSelection()]);
        }
        
        }
        
-       void default_dcp_content_type_changed ()
+       void dcp_content_type_changed ()
        {
                vector<DCPContentType const *> ct = DCPContentType::all ();
        {
                vector<DCPContentType const *> ct = DCPContentType::all ();
-               Config::instance()->set_default_dcp_content_type (ct[_default_dcp_content_type->GetSelection()]);
+               Config::instance()->set_default_dcp_content_type (ct[_dcp_content_type->GetSelection()]);
+       }
+
+       void issuer_changed ()
+       {
+               libdcp::XMLMetadata m = Config::instance()->dcp_metadata ();
+               m.issuer = wx_to_std (_issuer->GetValue ());
+               Config::instance()->set_dcp_metadata (m);
        }
        
        }
        
-       wxSpinCtrl* _default_j2k_bandwidth;
-       wxSpinCtrl* _default_audio_delay;
-       wxButton* _default_dci_metadata_button;
-       wxSpinCtrl* _default_still_length;
+       void creator_changed ()
+       {
+               libdcp::XMLMetadata m = Config::instance()->dcp_metadata ();
+               m.creator = wx_to_std (_creator->GetValue ());
+               Config::instance()->set_dcp_metadata (m);
+       }
+       
+       wxSpinCtrl* _j2k_bandwidth;
+       wxSpinCtrl* _audio_delay;
+       wxButton* _dci_metadata_button;
+       wxSpinCtrl* _still_length;
 #ifdef DCPOMATIC_USE_OWN_DIR_PICKER
 #ifdef DCPOMATIC_USE_OWN_DIR_PICKER
-       DirPickerCtrl* _default_directory;
+       DirPickerCtrl* _directory;
 #else
 #else
-       wxDirPickerCtrl* _default_directory;
+       wxDirPickerCtrl* _directory;
 #endif
 #endif
-       wxChoice* _default_container;
-       wxChoice* _default_dcp_content_type;
+       wxChoice* _container;
+       wxChoice* _dcp_content_type;
+       wxTextCtrl* _issuer;
+       wxTextCtrl* _creator;
 };
 
 class EncodingServersPage : public wxPreferencesPage
 };
 
 class EncodingServersPage : public wxPreferencesPage
@@ -488,7 +517,7 @@ class ColourConversionsPage : public wxPreferencesPage
 #ifdef DCPOMATIC_OSX   
        wxBitmap GetLargeIcon () const
        {
 #ifdef DCPOMATIC_OSX   
        wxBitmap GetLargeIcon () const
        {
-               return wxBitmap ("blank", wxBITMAP_TYPE_PNG_RESOURCE);
+               return wxBitmap ("colour_conversions", wxBITMAP_TYPE_PNG_RESOURCE);
        }
 #endif 
        wxWindow* CreateWindow (wxWindow* parent)
        }
 #endif 
        wxWindow* CreateWindow (wxWindow* parent)
@@ -512,67 +541,6 @@ private:
        }
 };
 
        }
 };
 
-class MetadataPage : public wxPreferencesPage
-{
-       wxString GetName () const
-       {
-               return _("Metadata");
-       }
-
-#ifdef DCPOMATIC_OSX   
-       wxBitmap GetLargeIcon () const
-       {
-               return wxBitmap ("blank", wxBITMAP_TYPE_PNG_RESOURCE);
-       }
-#endif 
-
-       wxWindow* CreateWindow (wxWindow* parent)
-       {
-               wxPanel* panel = new wxPanel (parent);
-               wxBoxSizer* s = new wxBoxSizer (wxVERTICAL);
-               panel->SetSizer (s);
-               
-               wxFlexGridSizer* table = new wxFlexGridSizer (2, DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
-               table->AddGrowableCol (1, 1);
-               s->Add (table, 1, wxALL | wxEXPAND, 8);
-               
-               add_label_to_sizer (table, panel, _("Issuer"), true);
-               _issuer = new wxTextCtrl (panel, wxID_ANY);
-               table->Add (_issuer, 1, wxEXPAND);
-               
-               add_label_to_sizer (table, panel, _("Creator"), true);
-               _creator = new wxTextCtrl (panel, wxID_ANY);
-               table->Add (_creator, 1, wxEXPAND);
-               
-               Config* config = Config::instance ();
-               
-               _issuer->SetValue (std_to_wx (config->dcp_metadata().issuer));
-               _issuer->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&MetadataPage::issuer_changed, this));
-               _creator->SetValue (std_to_wx (config->dcp_metadata().creator));
-               _creator->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&MetadataPage::creator_changed, this));
-
-               return panel;
-       }               
-
-private:
-       wxTextCtrl* _issuer;
-       wxTextCtrl* _creator;
-       
-       void issuer_changed ()
-       {
-               libdcp::XMLMetadata m = Config::instance()->dcp_metadata ();
-               m.issuer = wx_to_std (_issuer->GetValue ());
-               Config::instance()->set_dcp_metadata (m);
-       }
-       
-       void creator_changed ()
-       {
-               libdcp::XMLMetadata m = Config::instance()->dcp_metadata ();
-               m.creator = wx_to_std (_creator->GetValue ());
-               Config::instance()->set_dcp_metadata (m);
-       }
-};
-
 class TMSPage : public wxPreferencesPage
 {
        wxString GetName () const
 class TMSPage : public wxPreferencesPage
 {
        wxString GetName () const
@@ -583,7 +551,7 @@ class TMSPage : public wxPreferencesPage
 #ifdef DCPOMATIC_OSX   
        wxBitmap GetLargeIcon () const
        {
 #ifdef DCPOMATIC_OSX   
        wxBitmap GetLargeIcon () const
        {
-               return wxBitmap ("blank", wxBITMAP_TYPE_PNG_RESOURCE);
+               return wxBitmap ("tms", wxBITMAP_TYPE_PNG_RESOURCE);
        }
 #endif 
 
        }
 #endif 
 
@@ -701,7 +669,6 @@ create_config_dialog ()
        e->AddPage (new DefaultsPage);
        e->AddPage (new EncodingServersPage);
        e->AddPage (new ColourConversionsPage);
        e->AddPage (new DefaultsPage);
        e->AddPage (new EncodingServersPage);
        e->AddPage (new ColourConversionsPage);
-       e->AddPage (new MetadataPage);
        e->AddPage (new TMSPage);
        e->AddPage (new KDMEmailPage);
        return e;
        e->AddPage (new TMSPage);
        e->AddPage (new KDMEmailPage);
        return e;