@@ -1961,7 +1961,8 @@   TPythonInterface=class(TDynamicDll)
19611961  DEFAULT_DATETIME_CONVERSION_MODE = dcmToTuple;
19621962type 
19631963  TEngineClient = class ;
1964-   TSysPathInitEvent = procedure ( Sender : TObject; PathList : PPyObject ) of  Object ;
1964+   TSysPathInitEvent = procedure(Sender: TObject; PathList: PPyObject) of  object ;
1965+   TConfigInitEvent = procedure(Sender: TObject; var  Config: PyConfig) of  object ;
19651966  TPythonFlag = (pfDebug, pfInteractive, pfNoSite, pfOptimize, pfVerbose,
19661967                 pfFrozenFlag, pfIgnoreEnvironmentFlag, pfIsolated);
19671968  TPythonFlags = set  of  TPythonFlag;
@@ -2013,6 +2014,7 @@   TPythonEngine = class(TPythonInterface)
20132014    FPythonHome:                 UnicodeString;
20142015    FPythonPath:                 UnicodeString;
20152016    FOnSysPathInit:              TSysPathInitEvent;
2017+     FOnConfigInit:               TConfigInitEvent;
20162018    FTraceback:                  TPythonTraceback;
20172019    FUseWindowsConsole:          Boolean;
20182020    FGlobalVars:                 PPyObject;
@@ -2163,6 +2165,8 @@   TPythonEngine = class(TPythonInterface)
21632165    property  UseWindowsConsole: Boolean read FUseWindowsConsole write FUseWindowsConsole default False;
21642166    property  OnAfterInit: TNotifyEvent read FOnAfterInit write FOnAfterInit;
21652167    property  OnSysPathInit: TSysPathInitEvent read FOnSysPathInit write FOnSysPathInit;
2168+     property  OnConfigInit: TConfigInitEvent read FOnConfigInit write FOnConfigInit;
2169+ 
21662170  end ;
21672171
21682172
@@ -4789,6 +4793,10 @@ procedure TPythonEngine.Initialize;
47894793      //  PythonPath
47904794      SetPythonPath(Config);
47914795
4796+       //  Fine tune Config
4797+       if  Assigned(FOnConfigInit) then 
4798+         FOnConfigInit(Self, Config);
4799+ 
47924800      Py_InitializeFromConfig(Config);
47934801    finally 
47944802      PyConfig_Clear(Config);
0 commit comments