mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-15 00:39:23 +02:00
Merged revision(s) 43482-43483 #b99a80c49f-#b99a80c49f from trunk:
LCL: New method ForceFilter for FilterEdit. Issue #25258, patch from Cyrax. ........ Clear the filter edit when leaving package editor. Issue #25258, patch from Cyrax. ........ git-svn-id: branches/fixes_1_2@43516 -
This commit is contained in:
parent
7c476745db
commit
47f777f294
@ -365,6 +365,7 @@ type
|
||||
constructor Create(AOwner: TComponent); override;
|
||||
destructor Destroy; override;
|
||||
procedure InvalidateFilter;
|
||||
function ForceFilter(AFilter : String = '') : String;
|
||||
procedure StoreSelection; virtual; abstract;
|
||||
procedure RestoreSelection; virtual; abstract;
|
||||
public
|
||||
@ -1830,6 +1831,13 @@ begin
|
||||
IdleConnected:=true;
|
||||
end;
|
||||
|
||||
function TCustomControlFilterEdit.ForceFilter(AFilter: String): String;
|
||||
begin
|
||||
Result := FFilter;
|
||||
FFilter := AFilter;
|
||||
ApplyFilter(True);
|
||||
end;
|
||||
|
||||
function TCustomControlFilterEdit.GetDefaultGlyphName: String;
|
||||
begin
|
||||
Result := ResBtnListFilter;
|
||||
|
@ -1773,8 +1773,10 @@ var
|
||||
FilesBranch, RemovedBranch: TTreeFilterBranch;
|
||||
Filename: String;
|
||||
NodeData: TPENodeData;
|
||||
OldFilter : String;
|
||||
begin
|
||||
if LazPackage=nil then exit;
|
||||
OldFilter := FilterEdit.ForceFilter;
|
||||
|
||||
// files belonging to package
|
||||
FilesBranch:=FilterEdit.GetBranch(FFilesNode);
|
||||
@ -1816,17 +1818,18 @@ begin
|
||||
FreeAndNil(FRemovedFilesNode);
|
||||
end;
|
||||
end;
|
||||
FilterEdit.InvalidateFilter; // Data is shown by FilterEdit.
|
||||
FilterEdit.Filter := OldFilter; // This triggers ApplyFilter
|
||||
end;
|
||||
|
||||
procedure TPackageEditorForm.UpdateRequiredPkgs;
|
||||
var
|
||||
CurDependency: TPkgDependency;
|
||||
RequiredBranch, RemovedBranch: TTreeFilterBranch;
|
||||
CurNodeText, aFilename: String;
|
||||
CurNodeText, aFilename, OldFilter: String;
|
||||
NodeData: TPENodeData;
|
||||
begin
|
||||
if LazPackage=nil then exit;
|
||||
OldFilter := FilterEdit.ForceFilter;
|
||||
|
||||
// required packages
|
||||
RequiredBranch:=FilterEdit.GetBranch(FRequiredPackagesNode);
|
||||
@ -1870,6 +1873,7 @@ begin
|
||||
end;
|
||||
end;
|
||||
FNextSelectedPart:=nil;
|
||||
FilterEdit.ForceFilter(OldFilter);
|
||||
end;
|
||||
|
||||
procedure TPackageEditorForm.UpdateSelectedFile;
|
||||
@ -2406,6 +2410,7 @@ destructor TPackageEditorForm.Destroy;
|
||||
var
|
||||
nt: TPENodeType;
|
||||
begin
|
||||
FilterEdit.ForceFilter;
|
||||
for nt:=Low(TPENodeType) to High(TPENodeType) do
|
||||
FreeNodeData(nt);
|
||||
if PackageEditorMenuRoot.MenuItem=FilesPopupMenu.Items then
|
||||
|
Loading…
Reference in New Issue
Block a user