diff layer/TimeValueLayer.cpp @ 735:1640a7c753cc tonioni

Short-circuit test for enough space for label -- drastically reduces lag on os/x with qt4
author Chris Cannam
date Thu, 06 Mar 2014 09:43:18 +0000
parents 15b5c679b909
children 56ba2b03508e
line wrap: on
line diff
--- a/layer/TimeValueLayer.cpp	Wed Mar 05 18:10:33 2014 +0000
+++ b/layer/TimeValueLayer.cpp	Thu Mar 06 09:43:18 2014 +0000
@@ -1184,7 +1184,10 @@
         }
 
 	if (label != "") {
-            bool haveRoom = nx > x + 6 + paint.fontMetrics().width(label);
+            // Quick test for 20px before we do the slower test using metrics
+            bool haveRoom = (nx > x + 20);
+            haveRoom = (haveRoom &&
+                        (nx > x + 6 + paint.fontMetrics().width(label)));
             if (haveRoom ||
                 (!haveNext &&
                  (pointCount == 0 || !italic))) {