mirror of https://gitlab.com/basile.b/dexed.git
project inspector use updateDelayed()
This commit is contained in:
parent
bd9cc5cbdf
commit
f6fe94fe62
|
@ -28,7 +28,8 @@ type
|
||||||
procedure TreeKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
|
procedure TreeKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
|
||||||
procedure TreeSelectionChanged(Sender: TObject);
|
procedure TreeSelectionChanged(Sender: TObject);
|
||||||
protected
|
protected
|
||||||
procedure UpdateByEvent; override;
|
procedure updateImperative; override;
|
||||||
|
procedure updateDelayed; override;
|
||||||
procedure SetVisible(Value: boolean); override;
|
procedure SetVisible(Value: boolean); override;
|
||||||
private
|
private
|
||||||
fActOpenFile: TAction;
|
fActOpenFile: TAction;
|
||||||
|
@ -113,7 +114,7 @@ end;
|
||||||
procedure TCEProjectInspectWidget.SetVisible(Value: boolean);
|
procedure TCEProjectInspectWidget.SetVisible(Value: boolean);
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
if Value then UpdateByEvent;
|
if Value then updateImperative;
|
||||||
end;
|
end;
|
||||||
{$ENDREGION}
|
{$ENDREGION}
|
||||||
|
|
||||||
|
@ -147,7 +148,7 @@ end;
|
||||||
procedure TCEProjectInspectWidget.projNew(aProject: TCEProject);
|
procedure TCEProjectInspectWidget.projNew(aProject: TCEProject);
|
||||||
begin
|
begin
|
||||||
fProject := aProject;
|
fProject := aProject;
|
||||||
if Visible then UpdateByEvent;
|
if Visible then updateImperative;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEProjectInspectWidget.projClosing(aProject: TCEProject);
|
procedure TCEProjectInspectWidget.projClosing(aProject: TCEProject);
|
||||||
|
@ -155,19 +156,19 @@ begin
|
||||||
if fProject <> aProject then
|
if fProject <> aProject then
|
||||||
exit;
|
exit;
|
||||||
fProject := nil;
|
fProject := nil;
|
||||||
UpdateByEvent;
|
updateImperative;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEProjectInspectWidget.projFocused(aProject: TCEProject);
|
procedure TCEProjectInspectWidget.projFocused(aProject: TCEProject);
|
||||||
begin
|
begin
|
||||||
fProject := aProject;
|
fProject := aProject;
|
||||||
if Visible then UpdateByEvent;
|
if Visible then beginDelayedUpdate;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEProjectInspectWidget.projChanged(aProject: TCEProject);
|
procedure TCEProjectInspectWidget.projChanged(aProject: TCEProject);
|
||||||
begin
|
begin
|
||||||
if fProject <> aProject then exit;
|
if fProject <> aProject then exit;
|
||||||
if Visible then UpdateByEvent;
|
if Visible then beginDelayedUpdate;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEProjectInspectWidget.projCompiling(aProject: TCEProject);
|
procedure TCEProjectInspectWidget.projCompiling(aProject: TCEProject);
|
||||||
|
@ -209,7 +210,7 @@ begin
|
||||||
begin
|
begin
|
||||||
i := Tree.Selected.Index;
|
i := Tree.Selected.Index;
|
||||||
fProject.ConfigurationIndex := i;
|
fProject.ConfigurationIndex := i;
|
||||||
UpdateByEvent;
|
beginDelayedUpdate;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -229,8 +230,11 @@ begin
|
||||||
with TOpenDialog.Create(nil) do
|
with TOpenDialog.Create(nil) do
|
||||||
try
|
try
|
||||||
filter := DdiagFilter;
|
filter := DdiagFilter;
|
||||||
if execute then
|
if execute then begin
|
||||||
|
fProject.beginUpdate;
|
||||||
fProject.addSource(filename);
|
fProject.addSource(filename);
|
||||||
|
fProject.endUpdate;
|
||||||
|
end;
|
||||||
finally
|
finally
|
||||||
free;
|
free;
|
||||||
end;
|
end;
|
||||||
|
@ -288,7 +292,6 @@ begin
|
||||||
if extractFilePath(fProject.getAbsoluteSourceName(i)) = dir then
|
if extractFilePath(fProject.getAbsoluteSourceName(i)) = dir then
|
||||||
fProject.Sources.Delete(i);
|
fProject.Sources.Delete(i);
|
||||||
fProject.endUpdate;
|
fProject.endUpdate;
|
||||||
UpdateByEvent;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEProjectInspectWidget.btnRemFileClick(Sender: TObject);
|
procedure TCEProjectInspectWidget.btnRemFileClick(Sender: TObject);
|
||||||
|
@ -303,8 +306,11 @@ begin
|
||||||
begin
|
begin
|
||||||
fname := Tree.Selected.Text;
|
fname := Tree.Selected.Text;
|
||||||
i := fProject.Sources.IndexOf(fname);
|
i := fProject.Sources.IndexOf(fname);
|
||||||
if i > -1 then fProject.Sources.Delete(i);
|
if i > -1 then begin
|
||||||
UpdateByEvent;
|
fProject.beginUpdate;
|
||||||
|
fProject.Sources.Delete(i);
|
||||||
|
fProject.endUpdate;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -319,11 +325,18 @@ begin
|
||||||
if FileExists(fname) then
|
if FileExists(fname) then
|
||||||
begin
|
begin
|
||||||
multidoc.openDocument(fname);
|
multidoc.openDocument(fname);
|
||||||
|
fProject.beginUpdate;
|
||||||
fProject.addSource(fname);
|
fProject.addSource(fname);
|
||||||
|
fProject.endUpdate;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCEProjectInspectWidget.UpdateByEvent;
|
procedure TCEProjectInspectWidget.updateDelayed;
|
||||||
|
begin
|
||||||
|
updateImperative;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCEProjectInspectWidget.updateImperative;
|
||||||
var
|
var
|
||||||
src, fold, conf: string;
|
src, fold, conf: string;
|
||||||
lst: TStringList;
|
lst: TStringList;
|
||||||
|
|
Loading…
Reference in New Issue