Build fixes for Boost >= 1.73
[dcpomatic.git] / src / wx / dcp_panel.cc
index 0841ad3995f8e3c7ccb588030d3297cc94e29211..5046c51048ddfac577b977e70655609a6477e36d 100644 (file)
@@ -59,6 +59,9 @@ using std::make_pair;
 using boost::lexical_cast;
 using boost::shared_ptr;
 using boost::weak_ptr;
+#if BOOST_VERSION >= 106100
+using namespace boost::placeholders;
+#endif
 using dcp::locale_convert;
 
 DCPPanel::DCPPanel (wxNotebook* n, shared_ptr<Film> film, weak_ptr<FilmViewer> viewer)
@@ -451,6 +454,7 @@ DCPPanel::film_changed (int p)
                break;
        case Film::CONTENT:
                setup_dcp_name ();
+               setup_sensitivity ();
                break;
        default:
                break;
@@ -594,16 +598,30 @@ DCPPanel::setup_sensitivity ()
        _reel_length->Enable            (_generally_sensitive && _film && _film->reel_type() == REELTYPE_BY_LENGTH);
        _markers->Enable                (_generally_sensitive && _film && !_film->interop());
        _metadata->Enable               (_generally_sensitive);
-       _frame_rate_choice->Enable      (_generally_sensitive && _film && !_film->references_dcp_video());
-       _frame_rate_spin->Enable        (_generally_sensitive && _film && !_film->references_dcp_video());
-       _audio_channels->Enable         (_generally_sensitive && _film && !_film->references_dcp_audio());
+       _frame_rate_choice->Enable      (_generally_sensitive && _film && !_film->references_dcp_video() && !_film->contains_atmos_content());
+       _frame_rate_spin->Enable        (_generally_sensitive && _film && !_film->references_dcp_video() && !_film->contains_atmos_content());
+       _audio_channels->Enable         (_generally_sensitive && _film && !_film->references_dcp_audio() && !_film->contains_atmos_content());
        _audio_processor->Enable        (_generally_sensitive && _film && !_film->references_dcp_audio());
        _j2k_bandwidth->Enable          (_generally_sensitive && _film && !_film->references_dcp_video());
        _container->Enable              (_generally_sensitive && _film && !_film->references_dcp_video());
-       _best_frame_rate->Enable        (_generally_sensitive && _film && _film->best_video_frame_rate () != _film->video_frame_rate ());
+       _best_frame_rate->Enable (
+               _generally_sensitive &&
+               _film &&
+               _film->best_video_frame_rate () != _film->video_frame_rate() &&
+               !_film->references_dcp_video() &&
+               !_film->contains_atmos_content()
+               );
        _resolution->Enable             (_generally_sensitive && _film && !_film->references_dcp_video());
        _three_d->Enable                (_generally_sensitive && _film && !_film->references_dcp_video());
-       _standard->Enable               (_generally_sensitive && _film && !_film->references_dcp_video() && !_film->references_dcp_audio());
+
+       _standard->Enable (
+               _generally_sensitive &&
+               _film &&
+               !_film->references_dcp_video() &&
+               !_film->references_dcp_audio() &&
+               !_film->contains_atmos_content()
+               );
+
        _reencode_j2k->Enable           (_generally_sensitive && _film);
        _show_audio->Enable             (_generally_sensitive && _film);
 }
@@ -706,8 +724,6 @@ DCPPanel::setup_frame_rate_widget ()
                _frame_rate_choice->Show ();
                _frame_rate_spin->Hide ();
        }
-
-       _frame_rate_sizer->Layout ();
 }
 
 wxPanel *
@@ -728,13 +744,9 @@ DCPPanel::make_video_panel ()
 
        _frame_rate_label = create_label (panel, _("Frame Rate"), true);
        _frame_rate_choice = new wxChoice (panel, wxID_ANY);
-       _frame_rate_sizer = new wxBoxSizer (wxHORIZONTAL);
-       _frame_rate_sizer->Add (_frame_rate_choice, 1, wxALIGN_CENTER_VERTICAL);
        _frame_rate_spin = new wxSpinCtrl (panel, wxID_ANY);
-       _frame_rate_sizer->Add (_frame_rate_spin, 1, wxALIGN_CENTER_VERTICAL);
        setup_frame_rate_widget ();
        _best_frame_rate = new Button (panel, _("Use best"));
-       _frame_rate_sizer->Add (_best_frame_rate, 1, wxALIGN_CENTER_VERTICAL);
 
        _three_d = new CheckBox (panel, _("3D"));
 
@@ -799,7 +811,7 @@ DCPPanel::add_video_panel_to_grid ()
                _frame_rate_sizer = new wxBoxSizer (wxHORIZONTAL);
                _frame_rate_sizer->Add (_frame_rate_choice, 1, wxALIGN_CENTER_VERTICAL);
                _frame_rate_sizer->Add (_frame_rate_spin, 1, wxALIGN_CENTER_VERTICAL);
-               _frame_rate_sizer->Add (_best_frame_rate, 1, wxALIGN_CENTER_VERTICAL);
+               _frame_rate_sizer->Add (_best_frame_rate, 1, wxLEFT | wxALIGN_CENTER_VERTICAL, DCPOMATIC_SIZER_X_GAP);
                _video_grid->Add (_frame_rate_sizer, wxGBPosition (r, 1));
                ++r;
        }