mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-06 00:20:13 +02:00
+ TCustomListbox.ClearSelection
git-svn-id: trunk@13682 -
This commit is contained in:
parent
be879539ca
commit
20dee3aee0
@ -323,14 +323,17 @@ procedure TCustomListBox.SetSelected(Index : integer; Val : boolean);
|
||||
begin
|
||||
CheckIndex(Index);
|
||||
|
||||
if not MultiSelect then begin
|
||||
if not MultiSelect then
|
||||
begin
|
||||
if Val then
|
||||
ItemIndex:=Index
|
||||
else if Index=ItemIndex then
|
||||
ItemIndex:=-1;
|
||||
end else begin
|
||||
ItemIndex := Index
|
||||
else
|
||||
if Index = ItemIndex then
|
||||
ItemIndex := -1;
|
||||
end else
|
||||
begin
|
||||
if HandleAllocated
|
||||
then SendItemSelected(Index,Val)
|
||||
then SendItemSelected(Index, Val)
|
||||
else PCustomListBoxItemRecord(GetCachedData(Index))^.Selected := Val;
|
||||
end;
|
||||
end;
|
||||
@ -555,6 +558,17 @@ begin
|
||||
FItems.Clear;
|
||||
end;
|
||||
|
||||
procedure TCustomListBox.ClearSelection;
|
||||
var
|
||||
i: integer;
|
||||
begin
|
||||
if MultiSelect then
|
||||
for i := 0 to Items.Count - 1 do
|
||||
Selected[i] := False
|
||||
else
|
||||
ItemIndex := -1; // no need to traverse all items - look at SetSelected
|
||||
end;
|
||||
|
||||
procedure TCustomListBox.LockSelectionChange;
|
||||
begin
|
||||
inc(FLockSelectionChange);
|
||||
|
@ -524,6 +524,7 @@ type
|
||||
procedure MakeCurrentVisible;
|
||||
procedure MeasureItem(Index: Integer; var TheHeight: Integer); virtual;
|
||||
procedure Clear; virtual;
|
||||
procedure ClearSelection;
|
||||
procedure LockSelectionChange;
|
||||
procedure UnlockSelectionChange;
|
||||
procedure Click; override; // make it public
|
||||
|
Loading…
Reference in New Issue
Block a user