Selection in TMSFMXGrid

Hi! I entered a Feature Request for this some months ago (1222, Excel-type selection for TMSFMXGrid), sorry to be a nuisance about it!
 
I need an option for the usual selection method in spreadsheets, i.e. to select columns by clicking on the fixed column cells (incl. shift-click and ctrl-click), and rows by clicking on fixed row cells. When clicking inside the spreadsheet, the whole row or column should not be selected, but only the clicked cell or shift-clicked range.
 
I have just released a new Firemonkey version of a program with more than 4,000 registered users: http://folk.uio.no/ohammer/past/past3.html.  I get very positive feedback, but many complaints about the fact that I had to put in buttons for switching selection mode. It looks a bit stupid and unusual.
 
Has anyone managed to get around this? I tried to capture mouse clicks in the grid to achieve the effect, but little luck so far.
 
Regards from a happy customer!

I finally managed to do this using the available callbacks, so the feature request is not critical to me anymore. Something like this:


procedure TmainForm.MainGridFixedCellClick(Sender: TObject; ACol,
  ARow: Integer);
begin
  if (maingrid.SelectionMode=smcellRange) and (Acol=0) and (Arow>0) then begin
    maingrid.SelectionMode:=smrowRange;
    maingrid.Selectrows(Arow,Arow);
  end else if (maingrid.SelectionMode=smcellRange) and (Acol>0) and (Arow=0) then begin
    maingrid.SelectionMode:=smcolumnRange;
    maingrid.Selectcolumns(Acol,Acol);
  end;
end;

procedure TmainForm.MainGridCellClick(Sender: TObject; ACol, ARow: Integer);
begin
  if ((maingrid.selectionmode=smcolumnRange) or (maingrid.SelectionMode=smrowRange))
  and (Acol>0) and (Arow>0) then begin
    maingrid.SelectionMode:=smcellRange;
    maingrid.Selection:=cellrange(Acol,Arow,Acol,Arow);
  end else if (maingrid.selectionmode=smcolumnRange) and (Acol=0) and (Arow>0) then begin
    maingrid.SelectionMode:=smrowRange;
    maingrid.Selectrows(Arow,Arow);
  end else if (maingrid.selectionmode=smrowRange) and (Acol>0) and (Arow=0) then begin
    maingrid.SelectionMode:=smcolumnRange;
    maingrid.Selectcolumns(Acol,Acol);
  end
end;

... except:


Why does grid.Options.Mouse.FixedCellSelection not have any 'fcsdisjunctRow' or 'fcsdisjunctColumn' value? This omission prevents me from implementing disjunct selection when clicking on the fixed cells.

Hi, 


We have added this now, and the next version will have this included.

Kind Regards, 
Pieter

Fantastic, thanks!

 
Oyvind