X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ftimecode.cc;h=0230d665d10cc8bc29cf917ab280522255f75311;hb=01e979c79f7d0aa20fac1bb24c699e0636168294;hp=70aa116ddd2b4c858117943ca4c70ca2fd3cde0e;hpb=671b037338fa6bc09dc0795191a23ff2999f027c;p=dcpomatic.git diff --git a/src/wx/timecode.cc b/src/wx/timecode.cc index 70aa116dd..0230d665d 100644 --- a/src/wx/timecode.cc +++ b/src/wx/timecode.cc @@ -105,7 +105,7 @@ TimecodeBase::clear () void TimecodeBase::changed () { - if (_set_button) { + if (_set_button && !_ignore_changed) { _set_button->Enable (true); } } @@ -117,6 +117,21 @@ TimecodeBase::set_clicked () if (_set_button) { _set_button->Enable (false); } + + _ignore_changed = true; + if (_hours->GetValue().IsEmpty()) { + _hours->SetValue(wxT("0")); + } + if (_minutes->GetValue().IsEmpty()) { + _minutes->SetValue(wxT("0")); + } + if (_seconds->GetValue().IsEmpty()) { + _seconds->SetValue(wxT("0")); + } + if (_frames->GetValue().IsEmpty()) { + _frames->SetValue(wxT("0")); + } + _ignore_changed = false; } void @@ -131,7 +146,11 @@ wxSize TimecodeBase::size (wxWindow* parent) { wxClientDC dc (parent); +#ifdef DCPOMATIC_OSX + auto size = dc.GetTextExtent(wxT("999")); +#else auto size = dc.GetTextExtent(wxT("99999")); +#endif size.SetHeight (-1); return size; }