fix, projects group, upstream, cases where widgets did not reset their ptr to the FSP

This commit is contained in:
Basile Burg 2016-09-04 15:38:06 +02:00
parent b22b13d008
commit 6f5cc9ce1e
No known key found for this signature in database
GPG Key ID: 1868039F415CB8CF
5 changed files with 12 additions and 6 deletions

View File

@ -72,7 +72,9 @@ procedure TDDHandler.projFocused(project: ICECommonProject);
begin begin
fProj := project; fProj := project;
if not fProj.inGroup then if not fProj.inGroup then
fFreeProj := fProj; fFreeProj := fProj
else if fFreeProj = project then
fFreeProj := nil;
end; end;
procedure TDDHandler.projCompiling(project: ICECommonProject); procedure TDDHandler.projCompiling(project: ICECommonProject);

View File

@ -145,7 +145,9 @@ procedure TCELibManEditorWidget.projFocused(project: ICECommonProject);
begin begin
fProj := project; fProj := project;
if not project.inGroup then if not project.inGroup then
fFreeProj := project; fFreeProj := project
else if project = fFreeProj then
fFreeProj := nil;
updateButtonsState; updateButtonsState;
end; end;

View File

@ -1987,7 +1987,7 @@ begin
end; end;
if not fProject.inGroup then if not fProject.inGroup then
fFreeProj := project fFreeProj := project
else if (fProject = fFreeProj) and (fProject.inGroup) then else if project = fFreeProj then
fFreeProj := nil; fFreeProj := nil;
showProjTitle; showProjTitle;

View File

@ -334,7 +334,9 @@ procedure TCEMiniExplorerWidget.projFocused(project: ICECommonProject);
begin begin
fProj := project; fProj := project;
if not project.inGroup then if not project.inGroup then
fFreeProj := project; fFreeProj := project
else if fFreeProj = project then
fFreeProj := nil;
if visible and project.fileName.fileExists and fContextExpand then if visible and project.fileName.fileExists and fContextExpand then
expandPath(project.fileName.extractFilePath); expandPath(project.fileName.extractFilePath);
end; end;

View File

@ -503,7 +503,7 @@ begin
fFreeProj := project; fFreeProj := project;
updateList; updateList;
end end
else if (project = fFreeProj) and (project.inGroup) then else if project = fFreeProj then
begin begin
fFreeProj := nil; fFreeProj := nil;
updateList; updateList;
@ -674,7 +674,7 @@ var
const const
typeStr: array[TCEProjectFormat] of string = ('CE','DUB'); typeStr: array[TCEProjectFormat] of string = ('CE','DUB');
begin begin
lstProj.Clear; lstProj.Items.Clear;
for i := 0 to projectGroup.projectCount-1 do for i := 0 to projectGroup.projectCount-1 do
begin begin
with lstProj.Items.Add do with lstProj.Items.Add do