using System; using System.Threading.Tasks; using DTS.Common.Base; using Microsoft.Practices.Prism.Regions; // ReSharper disable InconsistentNaming // ReSharper disable CheckNamespace namespace DTS.Common { public interface IDTSViewRegionManager : IRegionManager { /// /// Adds View to the Main Region. /// /// The View definition. /// The parameter which uses to initialize the View. void AddView(ViewDefinition viewDefinition, object parameter); /// /// Adds View to the Main Region. /// /// The View definition. /// The parameter which uses to initialize the View. /// A value indicating whether to allow to create the multiple views. void AddView(ViewDefinition viewDefinition, object parameter, bool allowMultipleInstances); /// /// Adds View to the Main Region asynchronously. /// /// The View definition. /// The parameter which uses to initialize the service. Task AddViewAsync(ViewDefinition viewDefinition, object parameter); /// /// Adds View to the Main Region asynchronously. /// /// The View definition. /// The parameter which uses to initialize the View. /// A value indicating whether to allow to create the multiple views. Task AddViewAsync(ViewDefinition viewDefinition, object parameter, bool allowMultipleInstances); /// /// Removes View from the Main Region. /// /// The View-model. void RemoveView(IBaseViewModel viewModel); /// /// Removes View from the specified region by name /// /// void RemoveViewByRegionName(string regionName); /// /// Reloads data for the specified View. /// /// Type of the View's interface. /// The parameter which uses to initialize the View. void RefreshView(Type interfaceForView, object parameter); /// /// Reloads data for the specified View asynchronously. /// /// Type of the View's interface. /// The parameter which uses to initialize the View. Task RefreshViewAsync(Type interfaceForView, object parameter); } }