anchor.diff:  
       fTextSize := gRes.Fonts[fFont].GetTextSize(fText);
     end;
  +
   begin
     Reformat;
     // Automatically cut text symbol by symbol until it will fit into given sizes (width and height)
  
positive.code: ﻿unit KM_Controls;
  {$I KaM_Remake.inc}
  interface
  uses
  
negative.code:     //Paint column
      if Rows[aIndex].Cells[I].Pic.ID <> 0 then
        TKMRenderUI.WritePicture(X + COL_PAD_X + fHeader.Columns[I].Offset - hiddenColumnsTotalWidth, Y + 1,
                                 availWidth, fItemHeight, [],
                                 Rows[aIndex].Cells[I].Pic.RX,
                                 Rows[aIndex].Cells[I].Pic.ID,
                                 Rows[aIndex].Cells[I].Enabled,
                                 Rows[aIndex].Cells[I].Color,
                                 0.4*Byte(IsHighlightOverCell(I) or (HighlightOnMouseOver and (csOver in State) and (fMouseOverRow = aIndex))));
  
      if Rows[aIndex].Cells[I].Caption <> '' then
        if Rows[aIndex].Cells[I].SubTxt <> '' then
        begin
          textSize := gRes.Fonts[fFont].GetTextSize(Rows[aIndex].Cells[I].Caption);
          TKMRenderUI.WriteText(X + COL_PAD_X + fHeader.Offset[I] - hiddenColumnsTotalWidth,
                                Y + 4,
                                availWidth,
                                Rows[aIndex].Cells[I].Caption,
                                fColumns[I].Font, fColumns[I].TextAlign, Rows[aIndex].Cells[I].Color);
          TKMRenderUI.WriteText(X + COL_PAD_X + fHeader.Offset[I] - hiddenColumnsTotalWidth,
                                Y + 1 + fItemHeight div 2,
                                availWidth,
                                Rows[aIndex].Cells[I].SubTxt,
                                fColumns[I].HintFont, fColumns[I].TextAlign, $FFB0B0B0);
        end else
        begin
          textSize := gRes.Fonts[fFont].GetTextSize(Rows[aIndex].Cells[I].Caption);
  