protected override bool CanChangeSet(UserResourceSetInfo setInfo) { // Show validation messagebox. return MessageBox.Show(NavigationActor.Instance.ActiveWindow, string.Format("Please be aware that modifying the SRS level set may block " + "some existing SRS items in the case where the new level set has less " + "levels than the previous one.{0}Also, please note that the current " + "scheduled review dates will not be affected.", Environment.NewLine), "SRS level set change warning", MessageBoxButton.OKCancel, MessageBoxImage.Warning, MessageBoxResult.Cancel) == MessageBoxResult.OK; }
/// <summary> /// In a subclass, determines if switching to the given set is possible. /// </summary> /// <param name="setInfo">Target set.</param> /// <returns>True if the change is confirmed. False otherwise.</returns> protected abstract bool CanChangeSet(UserResourceSetInfo setInfo);
/// <summary> /// Command callback. /// Called to browse a given set. /// </summary> /// <param name="setInfo">Set to browse.</param> private void OnBrowseSet(UserResourceSetInfo setInfo) { try { Process.Start(setInfo.Path); } catch (Exception ex) { LogHelper.GetLogger(GetType().Name) .Error(string.Format( "Could not open folder (path=\"{0}\") in explorer.", setInfo.Path), ex); } }
/// <summary> /// Command callback. /// Called to select a given set. /// </summary> /// <param name="setInfo">Set to select.</param> private void OnSelectSet(UserResourceSetInfo setInfo) { if (CanChangeSet(setInfo)) { SelectedSetName = setInfo.Name; RaiseSettingValueChanged(); } }