From 1bd6e15cae5109bb00ca55e58f6b97c8157c8050 Mon Sep 17 00:00:00 2001 From: patthoyts Date: Thu, 28 Oct 2004 15:18:37 +0000 Subject: * unix/tkUnixScale.c (DisplayHorizontalValue): Backport fix for #220927 by Michael Schlenker to keep the labels within the window. --- ChangeLog | 5 +++++ unix/tkUnixScale.c | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index b84ac4c..8e735d2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-10-28 Pat Thoyts + + * unix/tkUnixScale.c (DisplayHorizontalValue): Backport fix for + #220927 by Michael Schlenker to keep the labels within the window. + 2004-10-28 Donal K. Fellows * doc/*.n: Backport of minor documentation fixes. diff --git a/unix/tkUnixScale.c b/unix/tkUnixScale.c index f8d3313..abc983b 100644 --- a/unix/tkUnixScale.c +++ b/unix/tkUnixScale.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkUnixScale.c,v 1.8 2001/09/21 21:34:10 hobbs Exp $ + * RCS: @(#) $Id: tkUnixScale.c,v 1.8.4.1 2004/10/28 15:18:40 patthoyts Exp $ */ #include "tkScale.h" @@ -500,7 +500,11 @@ DisplayHorizontalValue(scalePtr, drawable, value, top) if (x < (scalePtr->inset + SPACING)) { x = scalePtr->inset + SPACING; } - if (x > (Tk_Width(tkwin) - scalePtr->inset)) { + /* + * Check the right border so use starting point +text width + * for the check. + */ + if (x + width >= (Tk_Width(tkwin) - scalePtr->inset)) { x = Tk_Width(tkwin) - scalePtr->inset - SPACING - width; } Tk_DrawChars(scalePtr->display, drawable, scalePtr->textGC, -- cgit v0.12