anchor.diff:  begin
     Assert(aIndex < fCount, 'Can''t SetItemVisible for index ' + IntToStr(aIndex));
     fItems[aIndex].Visible := aEnabled;
  +end;
  +
  +
  +procedure TKMRadioGroup.CheckFirstCheckable;
  +var
  +  I: Integer;
  +begin
  +  if fItemIndex <> -1 then Exit;
  +
  +  for I := 0 to fCount - 1 do
  +    if fItems[I].Enabled and fItems[I].Visible then
  +    begin
  +      fItemIndex := I;
  +      Exit;
  +    end;
   end;
   
   
  
positive.code:     procedure Add(const aText, aHint: String; aEnabled: Boolean = True); overload;
      procedure Clear;
      property Count: Integer read fCount;
      property VisibleCount: Integer read GetVisibleCount;
      property ItemIndex: Integer read fItemIndex write fItemIndex;
      property OnChange: TNotifyEvent read fOnChange write fOnChange;
      property Item[aIndex: Integer]: TKMRadioGroupItem read GetItem;
      procedure SetItemEnabled(aIndex: Integer; aEnabled: Boolean);
      procedure SetItemVisible(aIndex: Integer; aEnabled: Boolean);
      property LineHeight: Single read GetLineHeight;
      procedure MouseUp(X,Y: Integer; Shift: TShiftState; Button: TMouseButton); override;
      procedure MouseMove(X,Y: Integer; Shift: TShiftState); override;
  
negative.code:     procedure Add(const aItem: UnicodeString; aTag: Integer = 0);
      procedure SelectByName(const aText: UnicodeString);
      procedure SelectByTag(aTag: Integer);
      function HasTag(aTag: Integer): Boolean;
      function GetTag(aIndex: Integer): Integer;
      function GetSelectedTag: Integer;
      function IsSelected: Boolean;
  