anchor.diff:  
   {@VFD_NEWFORM_IMPL}
   
  +procedure TProjectOptionsForm.CellEditKeypressed(Sender: TObject;
  +  var KeyCode: word; var ShiftState: TShiftState; var Consumed: boolean);
  +begin
  +  if KeyCode = keyReturn then
  +  begin
  +    FLastGrid.Cells[FLastGrid.FocusCol, FLastGrid.FocusRow] := FCellEdit.Text;
  +    FCellEdit.Visible := False;
  +    FLastGrid.SetFocus;
  +  end;
  +end;
  +
  +procedure TProjectOptionsForm.grdCompilerDirsDrawCell(Sender: TObject;
  +  const ARow, ACol: Integer; const ARect: TfpgRect;
  +  const AFlags: TfpgGridDrawState; var ADefaultDrawing: boolean);
  +begin
  +  if ACol = 5 then
  +  begin
  +    grdCompilerDirs.Canvas.Color := clMedGray;
  +    grdCompilerDirs.Canvas.DrawLine(ARect.Right-1, ARect.Top, ARect.Right-1, ARect.Bottom);
  +  end
  +  else if ACol = 6 then
  +  begin
  +    grdCompilerDirs.Canvas.Color := clMedGray;
  +    grdCompilerDirs.Canvas.DrawLine(ARect.Left, ARect.Top, ARect.Left, ARect.Bottom);
  +  end;
  +
  +  if (gdSelected in AFlags) and (ACol = 10) then
  +  begin
  +    FFocusRect := ARect;
  +  end;
  +end;
  +
  +procedure TProjectOptionsForm.grdCompilerDirsKeyPressed(Sender: TObject;
  +  var KeyCode: word; var ShiftState: TShiftState; var Consumed: boolean);
  +begin
  +  if TfpgStringGrid(Sender).FocusCol < 10 then
  +    Exit;
  +  if (KeyCode = keyF2) or (KeyCode = keyReturn) then
  +  begin
  +    // we need to edit the cell contents
  +    SetupCellEdit(TfpgStringGrid(Sender));
  +  end;
  +end;
  +
  +procedure TProjectOptionsForm.grdCompilerMakeOptionsKeyPressed(Sender: TObject;
  +  var KeyCode: word; var ShiftState: TShiftState; var Consumed: boolean);
  +begin
  +  if TfpgStringGrid(Sender).FocusCol < 6 then
  +    Exit;
  +  if (KeyCode = keyF2) or (KeyCode = keyReturn) then
  +  begin
  +    // we need to edit the cell contents
  +    SetupCellEdit(TfpgStringGrid(Sender));
  +  end;
  +end;
  +
  +procedure TProjectOptionsForm.grdCompilerMakeOptionsDrawCell(Sender: TObject;
  +  const ARow, ACol: Integer; const ARect: TfpgRect;
  +  const AFlags: TfpgGridDrawState; var ADefaultDrawing: boolean);
  +begin
  +  if (gdSelected in AFlags) and (ACol = 6) then
  +  begin
  +    FFocusRect := ARect;
  +  end;
  +end;
  +
  +procedure TProjectOptionsForm.grdCompilerMakeOptionsClicked(Sender: TObject);
  +var
  +  r, c: integer;
  +begin
  +  r := grdCompilerMakeOptions.FocusRow;
  +  c := grdCompilerMakeOptions.FocusCol;
  +  if c < 6 then   // checkbox area
  +  begin
  +    if TfpgStringGrid(Sender).Cells[c, r] = '' then
  +      TfpgStringGrid(Sender).Cells[c, r] := 'x'
  +    else
  +      TfpgStringGrid(Sender).Cells[c, r] := '';
  +  end;
  +end;
  +
  +procedure TProjectOptionsForm.grdCompilerDirsClicked(Sender: TObject);
  +var
  +  r, c: integer;
  +begin
  +  r := TfpgStringGrid(Sender).FocusRow;
  +  c := TfpgStringGrid(Sender).FocusCol;
  +  if c < 10 then   // checkbox area
  +  begin
  +    if TfpgStringGrid(Sender).Cells[c, r] = '' then
  +      TfpgStringGrid(Sender).Cells[c, r] := 'x'
  +    else
  +      TfpgStringGrid(Sender).Cells[c, r] := '';
  +  end;
  +end;
  +
   procedure TProjectOptionsForm.LoadSettings;
   var
     i: integer;
  
positive.code:     TabSheet7: TfpgTabSheet;
      grdDebugSrcDirs: TfpgStringGrid;
      {@VFD_HEAD_END: ProjectOptionsForm}
      procedure LoadSettings;
      procedure SaveSettings;
    public
      procedure AfterCreate; override;
    end;
  
negative.code:     FontDesc := '#Grid';
      HeaderFontDesc := '#GridHeader';
      Hint := '';
      RowCount := 4;
      RowSelect := False;
      TabOrder := 1;
      OnClick := @grdCompilerDirsClicked;
      OnDrawCell := @grdCompilerDirsDrawCell;
      OnKeyPress :=@grdCompilerDirsKeyPressed;
    end;
  
    Label11 := TfpgLabel.Create(TabSheet2);
  