private void OnCommandSetFolderSyncSetting(object sender, System.EventArgs e) { ITeamFoldersView view = base._view as ITeamFoldersView; ITeamFoldersModel model = base._model as ITeamFoldersModel; IMainPresenter presenter = SimpleResolver.Instance.Get <IMainPresenter>(); TeamFoldersModel teamModel = view.GetTeamFolderIds(); bool syncSetting = view.SyncSetting; if (SyncContext != null) { SyncContext.Post(delegate { presenter.EnableControl(false); presenter.ActivateSpinner(true); presenter.UpdateProgressInfo("Processing..."); }, null); } Thread setfoldersyncsetting = new Thread(() => { if (string.IsNullOrEmpty(model.AccessToken)) { SyncContext.Post(delegate { presenter.EnableControl(true); presenter.ActivateSpinner(false); presenter.UpdateProgressInfo(""); }, null); } else { foreach (TeamFoldersListViewItemModel lvItem in teamModel.TeamFolders) { this.SetDefaultSyncSetting(model, lvItem.TeamFolderId, syncSetting, presenter); } if (SyncContext != null) { SyncContext.Post(delegate { // update result and update view. PresenterBase.SetViewPropertiesFromModel <ITeamFoldersView, ITeamFoldersModel>( ref view, model ); // update result and update view. view.RenderTeamFoldersList(); presenter.ActivateSpinner(false); presenter.EnableControl(true); //presenter.UpdateProgressInfo("Completed."); }, null); } } }); setfoldersyncsetting.Start(); }
private void OnCommandCreateTeamFolder(object sender, System.EventArgs e) { ITeamFoldersView view = base._view as ITeamFoldersView; ITeamFoldersModel model = base._model as ITeamFoldersModel; IMainPresenter presenter = SimpleResolver.Instance.Get <IMainPresenter>(); string teamFolderName = view.TeamFolderName; bool syncSetting = view.SyncSetting; if (SyncContext != null) { SyncContext.Post(delegate { presenter.EnableControl(false); presenter.ActivateSpinner(true); presenter.UpdateProgressInfo("Processing..."); }, null); } Thread createteamfolder = new Thread(() => { if (string.IsNullOrEmpty(model.AccessToken)) { SyncContext.Post(delegate { presenter.EnableControl(true); presenter.ActivateSpinner(false); presenter.UpdateProgressInfo(""); }, null); } else { this.CreateTeamFolder(model, teamFolderName, presenter); if (SyncContext != null) { SyncContext.Post(delegate { // update result and update view. PresenterBase.SetViewPropertiesFromModel <ITeamFoldersView, ITeamFoldersModel>( ref view, model ); // update result and update view. view.RenderTeamFoldersList(); presenter.ActivateSpinner(false); presenter.EnableControl(true); presenter.UpdateProgressInfo("Completed."); }, null); } } }); createteamfolder.Start(); }