private readonly PollAgent _pollAgent;
private readonly NetworkAgent _networkAgent;
+ [Import]
+ public Selectives Selectives { get; set; }
private MiniStatusViewModel _miniStatus;
PithosMonitor monitor;
var accountName = account.AccountName;
+ MigrateFolders(account);
+
+ Selectives.SetIsSelectiveEnabled(account.AccountKey, account.SelectiveSyncEnabled);
+
if (Monitors.TryGetValue(account.AccountKey, out monitor))
{
//If the account is active
});
}
+ private void MigrateFolders(AccountSettings account)
+ {
+ var oldOthersFolder=Path.Combine(account.RootPath, FolderConstants.OldOthersFolder);
+ var newOthersFolder = Path.Combine(account.RootPath, FolderConstants.OthersFolder);
+ var oldFolder = new DirectoryInfo(oldOthersFolder);
+ var newFolder = new DirectoryInfo(newOthersFolder);
+
+ if (oldFolder.Exists && !newFolder.Exists)
+ {
+ oldFolder.MoveTo(newOthersFolder);
+ }
+ }
+
- protected override void OnViewLoaded(object view)
+ protected override void OnViewLoaded(object view)
{
UpdateStatus();
var window = (Window)view;
}
}
+ public string TooltipMiniStatus
+ {
+ get
+ {
+ return String.Format("{0}\r\n{1}", "Status Window", "Enable / Disable the status window");
+ }
+ }
+
public string ToggleStatusWindowMessage
{
get
public void ShowPreferences(string currentTab)
{
//Settings.Reload();
+
var preferences = new PreferencesViewModel(_windowManager, _events, this, Settings,currentTab);
_windowManager.ShowDialog(preferences);
#region Event Handlers
public void Handle(SelectiveSynchChanges message)
- {
- PithosMonitor monitor;
- if (Monitors.TryGetValue(message.Account.AccountKey, out monitor))
- {
- monitor.SetSelectivePaths(message.Uris, message.Added, message.Removed);
-
- }
-
- var account = Accounts.FirstOrDefault(acc => acc.AccountKey == message.Account.AccountKey);
- if (account!=null)
- {
- this._pollAgent.SetSelectivePaths(account, message.Added, message.Removed);
- }
-
+ {
+ TaskEx.Run(() =>
+ {
+ PithosMonitor monitor;
+ if (Monitors.TryGetValue(message.Account.AccountKey, out monitor))
+ {
+ Selectives.SetIsSelectiveEnabled(message.Account.AccountKey, message.Enabled);
+ monitor.SetSelectivePaths(message.Uris, message.Added, message.Removed);
+ }
+
+ var account = Accounts.FirstOrDefault(acc => acc.AccountKey == message.Account.AccountKey);
+ if (account != null)
+ {
+ this._pollAgent.SetSelectivePaths(account, message.Added, message.Removed);
+ }
+ });
- }
+ }
private bool _pollStarted;