symlist, fix, re-apply filter on refresh

This commit is contained in:
Basile Burg 2015-12-11 04:44:20 +01:00
parent e2765665eb
commit 95b11b821d
2 changed files with 7 additions and 3 deletions

View File

@ -24,7 +24,7 @@ inherited CESymbolListWidget: TCESymbolListWidget
Width = 302 Width = 302
Align = alClient Align = alClient
BorderSpacing.Around = 4 BorderSpacing.Around = 4
DefaultItemHeight = 18 DefaultItemHeight = 16
HideSelection = False HideSelection = False
Images = imgList Images = imgList
ReadOnly = True ReadOnly = True

View File

@ -441,7 +441,7 @@ end;
procedure TCESymbolListWidget.actAutoRefreshExecute(Sender: TObject); procedure TCESymbolListWidget.actAutoRefreshExecute(Sender: TObject);
begin begin
autoRefresh := fActAutoRefresh.Checked; autoRefresh := fActAutoRefresh.Checked;
fOptions.Assign(self); //fOptions.Assign(self);
end; end;
procedure TCESymbolListWidget.actRefreshOnChangeExecute(Sender: TObject); procedure TCESymbolListWidget.actRefreshOnChangeExecute(Sender: TObject);
@ -735,6 +735,7 @@ end;
// //
var var
i: Integer; i: Integer;
flt: string;
begin begin
if ndAlias = nil then exit; if ndAlias = nil then exit;
clearTree; clearTree;
@ -747,6 +748,8 @@ begin
if fToolProc.OutputStack.Size = 0 then exit; if fToolProc.OutputStack.Size = 0 then exit;
fSyms.LoadFromTool(fToolProc.OutputStack); fSyms.LoadFromTool(fToolProc.OutputStack);
// //
flt := TreeFilterEdit1.Filter;
TreeFilterEdit1.Text := '';
tree.BeginUpdate; tree.BeginUpdate;
for i := 0 to fSyms.symbols.Count-1 do for i := 0 to fSyms.symbols.Count-1 do
symbolToTreeNode(nil, fSyms.symbols[i]); symbolToTreeNode(nil, fSyms.symbols[i]);
@ -761,10 +764,11 @@ begin
for i:= 0 to tree.Items.Count-1 do for i:= 0 to tree.Items.Count-1 do
if Tree.Items[i].Count > 0 then if Tree.Items[i].Count > 0 then
tree.Items[i].CustomSort(nil); tree.Items[i].CustomSort(nil);
if fSmartExpander then if fSmartExpander then
smartExpand; smartExpand;
tree.EndUpdate; tree.EndUpdate;
if flt <> '' then
TreeFilterEdit1.Text := flt;
end; end;
procedure TCESymbolListWidget.smartExpand; procedure TCESymbolListWidget.smartExpand;