private void SetVaultImpl(IVault vault, bool isExternal, bool enableAutoSave) { if (Vault == vault) { return; } else { // this is essential for early catching of possible versioning issues vault.EnsureIsOfLatestStructureVersion(); if (Vault != null) { Views.ForEach(v => { v.Discard(); Views.Pop(); }); if (!_isVaultExternal) { Vault.Dispose(); } DisableAutoSaveTimer(); } Vault = vault; _isVaultExternal = isExternal; _autoSaveEnabled = enableAutoSave; if (Vault != null && _autoSaveEnabled) { EnableAutoSaveTimer(); } ResetHistory(); ValueInClipboard = null; BranchInClipboard = null; _dataVaultEditor.UpdateTitle(); RebuildTreeNodes(); } }
private void SetVaultImpl(IVault vault, bool isExternal, bool enableAutoSave) { if (Vault == vault) { return; } else { // this is essential for early catching of possible versioning issues vault.EnsureIsOfLatestStructureVersion(); if (Vault != null) { Views.ForEach(v => { v.Discard(); Views.Pop(); }); if (!_isVaultExternal) Vault.Dispose(); DisableAutoSaveTimer(); } Vault = vault; _isVaultExternal = isExternal; _autoSaveEnabled = enableAutoSave; if (Vault != null && _autoSaveEnabled) { EnableAutoSaveTimer(); } ResetHistory(); ValueInClipboard = null; BranchInClipboard = null; _dataVaultEditor.UpdateTitle(); RebuildTreeNodes(); } }