Multiple selection of contiguous cells, cols, rows

I am a new user of tmssoftware tadvcolumngrid. I have trouble to do the following selection operations:

1. multiple select contiguous cells (disjunct cell selection is not allowed)
2. multiple select contiguous columns (disjunct column selection is not allowed)
3. multiple select contiguous rows (disjunct rows selection is not allowed). 

The multiple selection of contiguous cells/rows/columns is done by keeping the left click of the mouse down on multiple cells/cols/rows. 
I have:
Grid1.FixedRows := 1;
Grid1.FixedCols := 1;
Grid1.MouseActions.ColSelect:=true;
Grid1.MouseActions.RowSelect::=true; 
 
I can't use Grid1.MouseActions.DisjunctCellSelect:=true as I don't want to allow user on select disjunct cells. 

The above setting of  Grid1.MouseActions.RowSelect::=true make the whole grid selected as soon as the user clicks on any row!

Please help. I need to be able to allow multiple selection of contiguous cells, columns or rows when the user keeps the left button of the mouse down while traversing multiple contiguous cells, columns or rows. 

Thanks a lot for your help

Dropping a default TAdvColumnGrid on the form and just setting:

Grid1.MouseActions.ColSelect:=true;
Grid1.MouseActions.RowSelect::=true; 
allows selecting a range of columns or rows by dragging over the fixed cells.
If you want continuous selection of normal cells, set
Grid1.MouseActions.RangeSelectAndEdit = true

Thanks, it works for multiple selecting contiguous cells. But since I also have Grid1.Options := Grid1.Options + [goColMoving, goRowSizing, goColSizing], when I drag over the fixed col cells, it moves the col where the left click mouse button starts. How do I support both: multiple col selection and col moving? 

Thanks a lot for your help.

A possible option is to use a key that indicates whether the mouse drag is doing column moving or column selection. You could have the requirement for example that a column move is done with Shift-key drag and to do this add the code:

procedure TForm4.Grid1ColumnMove(Sender: TObject; ACol: Integer;
  var Allow: Boolean);
begin
  Allow := GetKeyState(VK_SHIFT) and $8000 = $8000;
end;

Thank you very much, it works now.