Example #1
0
 /// <summary>
 /// Creates a new instance of <see cref="SectionsNavigatorRequest"/>.
 /// </summary>
 /// <param name="requestType">The type of request.</param>
 /// <param name="sectionName">The sections name associated to this request.</param>
 /// <param name="modalName">The modal name associated to this request.</param>
 /// <param name="modalPriority">The modal priority associated to this request.</param>
 /// <param name="newModalStackNavigationRequest">The <see cref="StackNavigatorRequest"/> associated to this request.</param>
 /// <param name="transitionInfo">The transition info of this request.</param>
 /// <param name="newModalClosingTransitionInfo">The default transiton info of the future close modal request.</param>
 public SectionsNavigatorRequest(SectionsNavigatorRequestType requestType, string sectionName, string modalName, int?modalPriority, StackNavigatorRequest newModalStackNavigationRequest, SectionsTransitionInfo transitionInfo, SectionsTransitionInfo newModalClosingTransitionInfo)
 {
     RequestType   = requestType;
     SectionName   = sectionName;
     ModalName     = modalName;
     ModalPriority = modalPriority;
     NewModalStackNavigationRequest = newModalStackNavigationRequest;
     TransitionInfo = transitionInfo;
 }
Example #2
0
        /// <summary>
        /// Creates a new instance of <see cref="SectionStackNavigator"/>.
        /// </summary>
        /// <param name="inner">The decorated stack navigator.</param>
        /// <param name="name">The name of this section.</param>
        /// <param name="isModal">Flag indicating whether this section is a modal.</param>
        /// <param name="priority">The priority of the section.</param>
        /// <param name="closeModalTransitionInfo">The default transition info for the close modal operation. This is only relevant for modals.</param>
        public SectionStackNavigator(IStackNavigator inner, string name, bool isModal, int priority, SectionsTransitionInfo closeModalTransitionInfo = null)
        {
            _inner   = inner;
            Name     = name;
            IsModal  = isModal;
            Priority = priority;
            CloseModalTransitionInfo = closeModalTransitionInfo;

            _inner.StateChanged += OnInnerStateChanged;
        }
Example #3
0
 /// <summary>
 /// Create a new instance of <see cref="SectionsNavigatorRequest"/> of type <see cref="SectionsNavigatorRequestType.OpenModal"/>.
 /// </summary>
 /// <param name="newModalStackNavigationRequest">The initial <see cref="StackNavigatorRequest"/> for the new <see cref="IModalStackNavigator"/>.</param>
 /// <param name="modalName">The optional modal name.</param>
 /// <param name="modalPriority">The optional modal priority.</param>
 /// <param name="transitionInfo">The optional transition info.</param>
 /// <param name="newModalClosingTransitionInfo">The optional transition info for the future close modal request.</param>
 /// <returns>The newly created request.</returns>
 public static SectionsNavigatorRequest GetOpenModalRequest(StackNavigatorRequest newModalStackNavigationRequest, string modalName = null, int?modalPriority = null, SectionsTransitionInfo transitionInfo = null, SectionsTransitionInfo newModalClosingTransitionInfo = null) => new SectionsNavigatorRequest(
     SectionsNavigatorRequestType.OpenModal,
     sectionName: null,
     modalName: modalName,
     modalPriority: modalPriority,
     newModalStackNavigationRequest: newModalStackNavigationRequest,
     transitionInfo: transitionInfo,
     newModalClosingTransitionInfo: newModalClosingTransitionInfo
     );
Example #4
0
 /// <summary>
 /// Create a new instance of <see cref="SectionsNavigatorRequest"/> of type <see cref="SectionsNavigatorRequestType.SetActiveSection"/>.
 /// </summary>
 /// <param name="sectionName">The section name.</param>
 /// <param name="transitionInfo">The optional transition info.</param>
 /// <returns>The newly created request.</returns>
 public static SectionsNavigatorRequest GetSetActiveSectionRequest(string sectionName, SectionsTransitionInfo transitionInfo = null) => new SectionsNavigatorRequest(
     SectionsNavigatorRequestType.SetActiveSection,
     sectionName: sectionName,
     modalName: null,
     modalPriority: null,
     newModalStackNavigationRequest: null,
     transitionInfo: transitionInfo,
     newModalClosingTransitionInfo: null
     );
 /// <inheritdoc/>
 protected override Task InnerSetActiveSection(ISectionStackNavigator previousSection, ISectionStackNavigator nextsection, SectionsTransitionInfo transitionInfo)
 {
     // Don't do anything.
     return(Task.CompletedTask);
 }
 /// <inheritdoc/>
 protected override Task InnerCloseModal(IModalStackNavigator modalToClose, SectionsTransitionInfo transitionInfo)
 {
     // Don't do anything.
     return(Task.CompletedTask);
 }
 /// <inheritdoc/>
 protected override Task InnerOpenModal(IModalStackNavigator navigator, bool isTopModal, SectionsTransitionInfo transitionInfo)
 {
     // Don't do anything.
     return(Task.CompletedTask);
 }
 /// <inheritdoc/>
 protected override Task <IStackNavigator> CreateStackNavigator(string name, int priority, SectionsTransitionInfo transitionInfo)
 {
     return(Task.FromResult <IStackNavigator>(new BlindStackNavigator()));
 }