More changes to support BollingerBands.

This commit is contained in:
2025-06-15 13:56:48 -04:00
parent 9bbfc9831f
commit 9b1135b5ec
18 changed files with 631 additions and 221 deletions

View File

@@ -5,6 +5,7 @@ using System.Collections.Specialized;
using System.Runtime.CompilerServices;
using System.Text;
using Avalonia.Threading;
using Axiom.Utils;
using MarketData.Cache;
using MarketData.DataAccess;
using PortfolioManager.Command;
@@ -31,6 +32,23 @@ namespace PortfolioManager.ViewModels
Dispatcher.UIThread.InvokeAsync(() => LoadViewStateThreadProc());
}
protected override void OnDispose()
{
MDTrace.WriteLine(LogLevel.DEBUG, "[MainWindowViewModel:OnDispose] ");
WorkspacePersistenceHelper.Save(WorkspacePersistenceHelper.PARAMS_FILE, this.Workspaces);
foreach (WorkspaceViewModel workspaceViewModel in this.Workspaces)
{
workspaceViewModel.Dispose();
}
try { LocalPriceCache.GetInstance().Dispose(); } catch (Exception) {; }
try { GBPriceCache.GetInstance().Dispose(); } catch (Exception) {; }
//try{PriceCache.GetInstance().Dispose();}catch(Exception){;}
// try{SymbolCache.GetInstance().Dispose();}catch(Exception){;}
base.OnDispose();
MDTrace.WriteLine(LogLevel.DEBUG, "[MainWindowViewModel:OnDispose] LEAVE");
}
private static String GetTitle()
{
DataSourceEx dataSource = MainDataSource.Instance.LocateDataSource("market_data");
@@ -46,24 +64,6 @@ namespace PortfolioManager.ViewModels
WorkspacePersistenceHelper.Load(WorkspacePersistenceHelper.PARAMS_FILE, this.Workspaces, InstantiateWorkspace);
}
protected override void OnDispose()
{
WorkspacePersistenceHelper.Save(WorkspacePersistenceHelper.PARAMS_FILE, this.Workspaces);
foreach (WorkspaceViewModel workspaceViewModel in this.Workspaces)
{
workspaceViewModel.Dispose();
}
try { LocalPriceCache.GetInstance().Dispose(); } catch (Exception) {; }
try { GBPriceCache.GetInstance().Dispose(); } catch (Exception) {; }
// try{PriceCache.GetInstance().Dispose();}catch(Exception){;}
// try{SymbolCache.GetInstance().Dispose();}catch(Exception){;}
base.OnDispose();
}
public override bool CanPersist()
{
return false;
@@ -264,10 +264,11 @@ namespace PortfolioManager.ViewModels
}
}
public void InstantiateWorkspace(SaveParameters saveParameters)
{
WorkspaceViewModel workspaceViewModel = WorkspacePersistenceHelper.Load(saveParameters, workspaces, InstantiateWorkspace);
public void InstantiateWorkspace(SaveParameters saveParameters)
{
WorkspaceViewModel workspaceViewModel = WorkspacePersistenceHelper.Load(saveParameters, workspaces, InstantiateWorkspace);
SetActiveWorkspace(workspaceViewModel);
// AddMenuItem(workspaceViewModel);
}
}
}
}