X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ftimeline_reels_view.cc;h=fa89c60a7c82fdf7cda862d87856a83ad8b87b3c;hb=07daa6dc99c7b0a0fc00e51f80b5fff6e870732d;hp=6013c60a7ec875ed6ed5a2b769a450c6adf801cf;hpb=7bc94f069f011a1a7e8554aa5cc88167e409c1f8;p=dcpomatic.git diff --git a/src/wx/timeline_reels_view.cc b/src/wx/timeline_reels_view.cc index 6013c60a7..fa89c60a7 100644 --- a/src/wx/timeline_reels_view.cc +++ b/src/wx/timeline_reels_view.cc @@ -1,19 +1,20 @@ /* - Copyright (C) 2015 Carl Hetherington + Copyright (C) 2015-2016 Carl Hetherington - This program is free software; you can redistribute it and/or modify + This file is part of DCP-o-matic. + + DCP-o-matic is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, + DCP-o-matic is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + along with DCP-o-matic. If not, see . */ @@ -24,6 +25,8 @@ #include using std::min; +using std::list; +using namespace dcpomatic; TimelineReelsView::TimelineReelsView (Timeline& tl, int y) : TimelineView (tl) @@ -46,7 +49,7 @@ TimelineReelsView::set_y (int y) } void -TimelineReelsView::do_paint (wxGraphicsContext* gc) +TimelineReelsView::do_paint (wxGraphicsContext* gc, list >) { if (!_timeline.pixels_per_second()) { return; @@ -86,7 +89,10 @@ TimelineReelsView::do_paint (wxGraphicsContext* gc) wxDouble str_leading; gc->GetTextExtent (str, &str_width, &str_height, &str_descent, &str_leading); - int const tx = time_x (DCPTime((i.from.get() + i.to.get()) / 2)); - gc->DrawText (str, tx - str_width / 2, _y + 4); + int const available_width = time_x (DCPTime (i.to.get())) - time_x (DCPTime (i.from.get())); + + if (available_width > str_width) { + gc->DrawText (str, time_x (DCPTime (i.from.get())) + (available_width - str_width) / 2, _y + 4); + } } }