diff --git a/components/tvplanit/source/vpweekviewpainter.pas b/components/tvplanit/source/vpweekviewpainter.pas index cabda4232..7a7575444 100644 --- a/components/tvplanit/source/vpweekviewpainter.pas +++ b/components/tvplanit/source/vpweekviewpainter.pas @@ -525,6 +525,8 @@ end; procedure TVpWeekViewPainter.DrawEvent(AEvent: TVpEvent; TextRect: TRect; ADayIndex: Integer); +const + GUTTER_WIDTH = 6; var dayStr: String; todayStartTime: TDateTime; @@ -532,6 +534,7 @@ var strLen: Integer; oldFontColor: TColor; eventCat: TVpCategoryInfo; + R: TRect; begin oldFontColor := RenderCanvas.Font.Color; @@ -562,13 +565,22 @@ begin begin RenderCanvas.Brush.Color := eventCat.BackgroundColor; TPSFillRect(RenderCanvas, Angle, RenderIn, TextRect); + R := TextRect; + {$IF VP_LCL_SCALING > 0} + R.Right := R.Left + FWeekView.Scale96ToFont(GUTTER_WIDTH); + {$ELSE} + R.Right := R.Left + ScaleX(GUTTER_WIDTH, DesignTimeDPI); + {$IFEND} + TextRect.Left := R.Right; + RenderCanvas.Brush.Color := eventCat.Color; + TPSFillRect(RenderCanvas, Angle, RenderIn, R); end; end; { Build the event text } dayStr := FWeekView.BuildEventString(AEvent, todayStartTime, todayEndTime, false); strLen := RenderCanvas.TextWidth(dayStr); - if (strLen > WidthOf(TextRect) - TextMargin) then // wp: shouldn't this be 2*TextMargin ? + if (strLen > WidthOf(TextRect) - 2*TextMargin) then dayStr := GetDisplayString(RenderCanvas, dayStr, 0, WidthOf(TextRect) - TextMargin * 2); { Write the event text }