Move locale_convert into libdcp.
[dcpomatic.git] / src / wx / dcp_panel.cc
index 461aeca714db21cb4cb14630d7eede9ef4d201a1..ea131524661fa9e81692ce87923b5c9163b4cd7e 100644 (file)
@@ -34,8 +34,8 @@
 #include "lib/subtitle_content.h"
 #include "lib/dcp_content.h"
 #include "lib/audio_content.h"
+#include <dcp/locale_convert.h>
 #include <dcp/key.h>
-#include <dcp/raw_convert.h>
 #include <wx/wx.h>
 #include <wx/notebook.h>
 #include <wx/gbsizer.h>
@@ -53,6 +53,7 @@ using std::max;
 using std::make_pair;
 using boost::lexical_cast;
 using boost::shared_ptr;
+using dcp::locale_convert;
 
 DCPPanel::DCPPanel (wxNotebook* n, boost::shared_ptr<Film> film)
        : _audio_dialog (0)
@@ -275,7 +276,7 @@ DCPPanel::audio_channels_changed ()
                return;
        }
 
-       _film->set_audio_channels (dcp::raw_convert<int> (string_client_data (_audio_channels->GetClientObject (_audio_channels->GetSelection ()))));
+       _film->set_audio_channels (locale_convert<int> (string_client_data (_audio_channels->GetClientObject (_audio_channels->GetSelection ()))));
 }
 
 void
@@ -386,7 +387,7 @@ DCPPanel::film_changed (int p)
                if (_film->audio_channels () < minimum_allowed_audio_channels ()) {
                        _film->set_audio_channels (minimum_allowed_audio_channels ());
                } else {
-                       checked_set (_audio_channels, dcp::raw_convert<string> (max (minimum_allowed_audio_channels(), _film->audio_channels ())));
+                       checked_set (_audio_channels, locale_convert<string> (max (minimum_allowed_audio_channels(), _film->audio_channels ())));
                        setup_dcp_name ();
                }
                break;
@@ -404,7 +405,7 @@ DCPPanel::film_changed (int p)
                } else {
                        checked_set (_audio_processor, 0);
                }
-               setup_audio_channels_choice ();
+               setup_audio_channels_choice (_audio_channels, minimum_allowed_audio_channels ());
                film_changed (Film::AUDIO_CHANNELS);
                break;
        case Film::REEL_TYPE:
@@ -586,6 +587,7 @@ void
 DCPPanel::setup_dcp_name ()
 {
        _dcp_name->SetLabel (std_to_wx (_film->dcp_name (true)));
+       _dcp_name->SetToolTip (std_to_wx (_film->dcp_name (true)));
 }
 
 void
@@ -728,17 +730,6 @@ DCPPanel::minimum_allowed_audio_channels () const
        return min;
 }
 
-void
-DCPPanel::setup_audio_channels_choice ()
-{
-       vector<pair<string, string> > items;
-       for (int i = minimum_allowed_audio_channels(); i <= 16; i += 2) {
-               items.push_back (make_pair (dcp::raw_convert<string> (i), dcp::raw_convert<string> (i)));
-       }
-
-       checked_set (_audio_channels, items);
-}
-
 wxPanel *
 DCPPanel::make_audio_panel ()
 {
@@ -752,7 +743,7 @@ DCPPanel::make_audio_panel ()
 
        add_label_to_sizer (grid, panel, _("Channels"), true, wxGBPosition (r, 0));
        _audio_channels = new wxChoice (panel, wxID_ANY);
-       setup_audio_channels_choice ();
+       setup_audio_channels_choice (_audio_channels, minimum_allowed_audio_channels ());
        grid->Add (_audio_channels, wxGBPosition (r, 1));
        ++r;