diff options
| author | Avi Levkovich <avi@twine-s.com> | 2018-02-20 16:45:00 +0200 |
|---|---|---|
| committer | Avi Levkovich <avi@twine-s.com> | 2018-02-20 16:45:00 +0200 |
| commit | 6c208c90bc45aff4a7fa214356a42fe7757c5e6f (patch) | |
| tree | 0d77bc6a0ecfbb53cf42c5462ee19212197ee1bd /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Synchronization/ViewModels/LocalSynchronizationViewVM.cs | |
| parent | b0823127f152fe97a6e8fce29e427c7f3db9cf5a (diff) | |
| parent | 1a573aaa346ec4b8bd58a0e35ab9df571a09b855 (diff) | |
| download | Tango-6c208c90bc45aff4a7fa214356a42fe7757c5e6f.tar.gz Tango-6c208c90bc45aff4a7fa214356a42fe7757c5e6f.zip | |
MERGE
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Synchronization/ViewModels/LocalSynchronizationViewVM.cs')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Synchronization/ViewModels/LocalSynchronizationViewVM.cs | 53 |
1 files changed, 52 insertions, 1 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Synchronization/ViewModels/LocalSynchronizationViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Synchronization/ViewModels/LocalSynchronizationViewVM.cs index 9c805cca4..2621f622a 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Synchronization/ViewModels/LocalSynchronizationViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Synchronization/ViewModels/LocalSynchronizationViewVM.cs @@ -1,4 +1,5 @@ -using Microsoft.Win32; +using Microsoft.Practices.ServiceLocation; +using Microsoft.Win32; using System; using System.Collections.Generic; using System.Collections.ObjectModel; @@ -19,6 +20,10 @@ using Tango.Synchronization.Local; namespace Tango.MachineStudio.Synchronization.ViewModels { + /// <summary> + /// Represents the 'Local Synchronization' view model. + /// </summary> + /// <seealso cref="Tango.SharedUI.ViewModel" /> public class LocalSynchronizationViewVM : ViewModel { private SyncNavigationManager _navigation; @@ -27,6 +32,7 @@ namespace Tango.MachineStudio.Synchronization.ViewModels private LocalDBComparer _comparer; private INotificationProvider _notification; private bool _isWorking; + private MainViewVM _mainView; #region Constructors @@ -166,8 +172,26 @@ namespace Tango.MachineStudio.Synchronization.ViewModels #endregion + #region Event Handlers + + private void Comparer_Progress(object sender, string e) + { + if (_mainView == null) + { + _mainView = ServiceLocator.Current.GetInstance<MainViewVM>(); + _mainView.Log = String.Empty; + } + + _mainView.Log += ("[" + DateTime.Now.ToTimeString() + "] " + e + Environment.NewLine); + } + + #endregion + #region Private Methods + /// <summary> + /// Cleans the slave database. + /// </summary> private async void CleanSlave() { if (_notification.ShowQuestion("Are you sure you want to erase all data on slave database?")) @@ -205,9 +229,13 @@ namespace Tango.MachineStudio.Synchronization.ViewModels } } + /// <summary> + /// Compares the master and slave database files. + /// </summary> private void Compare() { _comparer = new LocalDBComparer(new SQLiteDataBase(MasterDBFile), new SQLiteDataBase(SlaveDBFile)); + _comparer.Progress += Comparer_Progress; Task.Factory.StartNew(() => { @@ -248,6 +276,9 @@ namespace Tango.MachineStudio.Synchronization.ViewModels }); } + /// <summary> + /// Commits the selected difference. + /// </summary> private void Commit() { Task.Factory.StartNew(() => @@ -277,6 +308,9 @@ namespace Tango.MachineStudio.Synchronization.ViewModels }); } + /// <summary> + /// Commits all the differences. + /// </summary> private void CommitAll() { Task.Factory.StartNew(() => @@ -314,6 +348,9 @@ namespace Tango.MachineStudio.Synchronization.ViewModels }); } + /// <summary> + /// Browse for slave database file. + /// </summary> private void BrowseSlaveDB() { String file = BrowseForFilePath(); @@ -325,6 +362,9 @@ namespace Tango.MachineStudio.Synchronization.ViewModels } } + /// <summary> + /// Browse for master database file. + /// </summary> private void BrowseMasterDB() { String file = BrowseForFilePath(); @@ -336,6 +376,9 @@ namespace Tango.MachineStudio.Synchronization.ViewModels } } + /// <summary> + /// Browse for database file. + /// </summary> private String BrowseForFilePath() { OpenFileDialog dlg = new OpenFileDialog(); @@ -348,11 +391,19 @@ namespace Tango.MachineStudio.Synchronization.ViewModels return null; } + /// <summary> + /// Displays an error message. + /// </summary> + /// <param name="message">The message.</param> private void ShowError(String message) { InvokeUINow(() => _notification.ShowError(message)); } + /// <summary> + /// Displays an information message. + /// </summary> + /// <param name="message">The message.</param> private void ShowInfo(String message) { InvokeUINow(() => _notification.ShowInfo(message)); |
