anchor.diff:  
   const
     AllAnchors = [anLeft, anRight, anTop, anBottom];
  +  TextFlagsDflt = [txtLeft, txtTop];
   
     // Used for the internal message queue
     cMessageQueueSize = 512;
  
positive.code:     procedure   DrawDirectionArrow(x, y, w, h: TfpgCoord; direction: integer);
      procedure   DrawDirectionArrow(r: TfpgRect; direction: integer);
      procedure   DrawFocusRect(r: TfpgRect);
      function    DrawText(x, y, w, h: TfpgCoord; AText: string; AFlags: TFTextFlags; ALineSpace: integer = 2): integer;
      function    DrawText(x, y: TfpgCoord; AText: string; ALineSpace: integer = 2): integer;
      function    DrawText(r: TfpgRect; AText: string; AFlags: TFTextFlags = [txtLeft, txtTop]; ALineSpace: integer = 2): integer;
    end;
  
  
  
negative.code:   fpgStyle.DrawFocusRect(self, r);
  end;
  
  function TfpgCanvas.DrawText(x, y, w, h: TfpgCoord; AText: TfpgString; AFlags: TFTextFlags;
                  ALineSpace: integer): integer;
  var
    wtxt, htxt, i, wt, l: integer;
    wraptxt: TfpgString;
    wraplst: TStringList;
  begin
    if (txtWrap in AFlags) then
  