anchor.diff:  
   procedure TfpgBaseCheckBox.SetChecked(const AValue: boolean);
   begin
  +  if ReadOnly then
  +    Exit; //==>
     if FChecked = AValue then
       Exit; //==>
     FChecked := AValue;
  
positive.code:     property    Checked: boolean read FChecked write SetChecked default False;
      property    FontDesc: string read GetFontDesc write SetFontDesc;
      property    BoxLayout: TBoxLayout read GetBoxLayout write SetBoxLayout default tbLeftBox;
      property    Text: string read FText write SetText;
      property    OnChange: TNotifyEvent read FOnChange write FOnChange;
    public
  
negative.code:     procedure   SetBoxLayout(const AValue: TBoxLayout);
      procedure   SetChecked(const AValue: boolean);
      procedure   SetFontDesc(const AValue: string);
      procedure   SetReadOnly(const AValue: Boolean);
      procedure   SetText(const AValue: string);
      procedure   DoOnChange;
    protected
  