made clearer the reason why TCEOption force EntitiesConnector to update

This commit is contained in:
Basile Burg 2014-12-09 11:32:28 +01:00
parent 4e15bdcd15
commit 8fc973dd99
2 changed files with 12 additions and 2 deletions

View File

@ -316,8 +316,8 @@ begin
checkCompilo;
getCMdParams;
//
EntitiesConnector.endUpdate;
updateMainMenuProviders;
EntitiesConnector.forceUpdate;
fInitialized := true;
end;

View File

@ -14,6 +14,7 @@ type
fSubjPersObservers: TCECustomSubject;
protected
procedure defineProperties(Filer: TFiler); override;
procedure beforeLoad; override;
procedure beforeSave; override;
procedure afterLoad; override;
public
@ -32,7 +33,6 @@ begin
fSubjPersObservers := TCESessionOptionsSubject.create;
//
EntitiesConnector.addSubject(fSubjPersObservers);
EntitiesConnector.endUpdate;
end;
destructor TCEOptions.destroy;
@ -49,6 +49,16 @@ begin
subjSesOptsDeclareProperties(TCESessionOptionsSubject(fSubjPersObservers), Filer);
end;
procedure TCEOptions.beforeLoad;
begin
// ensure that the observers will be know:
// during the app init a bulk update operation is happening,
// cf. ce_observer.pas, initialization section.
if EntitiesConnector.isUpdating then
EntitiesConnector.forceUpdate;
inherited;
end;
procedure TCEOptions.beforeSave;
begin
subjSesOptsBeforeSave(TCESessionOptionsSubject(fSubjPersObservers));