}
_film = film;
- _film_change_connection = _film->Change.connect (boost::bind(&Controls::film_change, this, _1, _2));
+
+ if (_film) {
+ _film_change_connection = _film->Change.connect (boost::bind(&Controls::film_change, this, _1, _2));
+ }
setup_sensitivity ();
void
Controls::film_change (ChangeType type, Film::Property p)
{
- if (type == CHANGE_TYPE_DONE && p == Film::CONTENT) {
- setup_sensitivity ();
- update_position_label ();
- update_position_slider ();
+ if (type == CHANGE_TYPE_DONE) {
+ if (p == Film::CONTENT) {
+ setup_sensitivity ();
+ update_position_label ();
+ update_position_slider ();
+ } else if (p == Film::THREE_D) {
+ setup_sensitivity ();
+ }
}
}