anchor.diff:      end;
   end;
   
  +procedure TCustomVisualGrid.SearchKindPopupMenuClick(Sender: TObject);
  +var
  +  i: Integer;
  +  LIsMultiSearch: boolean;
  +begin
  +  TMenuItem(Sender).Checked:=true;
  +  LIsMultiSearch := Sender = FMultiSearchMenuItem;
  +
  +  // LIsMultiSearch
  +  //   true: check almost all (except expression)
  +  //   false: check only expression
  +  for i := 0 to FMultiSearchCheckComboBox.Items.Count - 2 do
  +    FMultiSearchCheckComboBox.Checked[i] := LIsMultiSearch;
  +  FMultiSearchCheckComboBox.Checked[FMultiSearchCheckComboBox.Items.Count-1] := not LIsMultiSearch;
  +end;
  +
   procedure TCustomVisualGrid.GridSelection(Sender: TObject; aCol, aRow: Integer);
   begin
     if (SelectionType <> stNone) and Assigned(FOnSelection) then
  
positive.code:   FPanel.Visible := AValue;
  end;
  
  constructor TCustomVisualGrid.TSearchEdit.Create(AParent: TWinControl);
  begin
    FPanel := TPanel.Create(nil);
    FPanel.Parent := AParent;
    FPanel.BevelOuter := bvNone;
    FEdit := TEdit.Create(FPanel);
    FPanel.Height:=FEdit.Height;
    FEdit.Parent := FPanel;
    FEdit.Align:=alClient;
    {FButton := TButton.Create(FPanel);
    FButton.Width:=25;
  
negative.code:   { component layout }
  
    ControlStyle := ControlStyle - [csAcceptsControls] + [csOwnedChildrenNotSelectable];
  
    FSearchKindPopupMenu := TPopupMenu.Create(Self);
    FSingleSearchMenuItem := TMenuItem.Create(Self);
    FSingleSearchMenuItem.RadioItem:=True;
    FSingleSearchMenuItem.Caption:='Standard Search';
    FSingleSearchMenuItem.OnClick:=SearchKindPopupMenuClick;
    FMultiSearchMenuItem := TMenuItem.Create(Self);
    FMultiSearchMenuItem.RadioItem:=True;
    FMultiSearchMenuItem.Caption:='Multi-Column Search';
    FMultiSearchMenuItem.OnClick:=SearchKindPopupMenuClick;
  
    FSearchKindPopupMenu.Items.Add([FSingleSearchMenuItem, FMultiSearchMenuItem]);
  
    FMainPanel := TPanel.Create(Self);
    FMainPanel.Parent := Self;
  