anchor.diff:  //    FCheckBox: TfpgCheckbox;
       FChecked: boolean;
       FCheckBoxRect: TfpgRect;
  +    FCheckboxChanged: TfpgOnCheckboxChangedEvent;
       procedure   InternalCheckBoxChanged(Sender: TObject);
       procedure   SetChecked(const AValue: Boolean);
  +    procedure   DoCheckboxChanged;
     protected
       procedure   DoDrawText(const ARect: TfpgRect); override;
       procedure   InternalOnValueSet(Sender: TObject; const ADate: TDateTime); override;
       procedure   HandleKeyPress(var keycode: word; var shiftstate: TShiftState; var consumed: boolean); override;
       procedure   HandlePaint; override;
  +    procedure   HandleResize(AWidth, AHeight: TfpgCoord); override;
  +    procedure   HandleLMouseDown(x, y: integer; shiftstate: TShiftState); override;
  +    procedure   HandleLMouseUp(x, y: integer; shiftstate: TShiftState); override;
     public
       constructor Create(AOwner: TComponent); override;
     published
       property    Checked: Boolean read FChecked write SetChecked;
  +    property    OnCheckboxChanged: TfpgOnCheckboxChangedEvent read FCheckboxChanged write FCheckboxChanged;
       property    OnKeyPress;
     end;
   
  
positive.code:   begin
      consumed := True;
      Checked := False;
    end;
    inherited HandleKeyPress(keycode, shiftstate, consumed);
  end;
  
  procedure TfpgCalendarCheckCombo.HandlePaint;
  var
    r: TfpgRect;
    img: TfpgImage;
    ix: integer;
  begin
    inherited HandlePaint;
  
    r := FCheckBoxRect;
    OffsetRect(r, 2, 2);
  //  r.SetRect(4, 4, 17, 17);
  //  PrintRect(r);
  
    // calculate which image to paint.
    if Enabled then
    begin
      ix := Ord(FChecked);
      //if FIsPressed then
        //Inc(ix, 2);
    end
    else
      ix := (2 + (Ord(FChecked) * 2)) - Ord(FChecked);
  
    // paint the check (in this case a X)
  //  tx := r.right + 8;
    img := fpgImages.GetImage('sys.checkboxes');    // Do NOT localize
    Canvas.DrawImagePart(r.Left, r.Top, img, ix*13, 0, 13, 13);
  end;
  
  constructor TfpgCalendarCheckCombo.Create(AOwner: TComponent);
  begin
    inherited Create(AOwner);
    FChecked := True;
    FCheckBoxRect.SetRect(2, 2, 17, 17);
  {
    FCheckBox := TfpgCheckBox.Create(self);
    with FCheckbox do
  
negative.code:   InternalCheckBoxChanged(nil);
  end;
  
  procedure TfpgCalendarCheckCombo.DoCheckboxChanged;
  begin
    if Assigned(FCheckboxChanged) then
      FCheckboxChanged(self, FChecked);
  end;
  
  procedure TfpgCalendarCheckCombo.DoDrawText(const ARect: TfpgRect);
  var
    lRect: TfpgRect;
  