Beispiel #1
0
        protected override void ShowFirstView(UIViewController viewController)
        {
            Trc.Mn();

            // Creates our top level UINavigationController as standard
            base.ShowFirstView(viewController);

            // So lets push our JaSidePanels viewController and then our first viewController in the centre panel to start things off
            // We will let our initial viewmodel load up the panels as required
            MasterNavigationController.NavigationBarHidden = true;
            MasterNavigationController.PushViewController(_jaSidePanelController, false);
            _jaSidePanelController.CenterPanel = new UINavigationController(viewController);
        }
Beispiel #2
0
        /// <summary>
        /// Logs all inputs to the log file
        /// </summary>
        public void LogInputs()
        {
            InputParameter inputParameter = null;

            foreach (String parameter in parameterList)
            {
                inputParameter = this.FindItem(parameter);
                if (inputParameter.Valid && inputParameter.CanLogToFile)
                {
                    Trc.Log(Microsoft.VirtualManager.SetupFramework.LogLevel.Always, parameter);
                    Trc.Log(Microsoft.VirtualManager.SetupFramework.LogLevel.Always, inputParameter.InputValue.ToString());
                }
            }
        }
Beispiel #3
0
 public override int GetHashCode()
 {
     return(17 + 31 * Btc.GetHashCode() + 31 * Ltc.GetHashCode() + 31 * Nmc.GetHashCode() +
            31 * Nvc.GetHashCode() + 31 * Trc.GetHashCode() + 31 * Ppc.GetHashCode() +
            31 * Ftc.GetHashCode() + 31 * Usd.GetHashCode() + 31 * Eur.GetHashCode());
 }
Beispiel #4
0
        public override void Show(IMvxIosView view)
        {
            Trc.Mn("IMvxTouchView");

            // Handle modal first
            // This will use our TopLevel UINavigation Controller, to present over the top of the Panels UX
            if (view is IMvxModalIosView)
            {
                if (_currentModalViewController != null)
                {
                    throw new MvxException("Only one modal view controller at a time supported");
                }

                _currentModalViewController = view as UIViewController;
                PresentModalViewController(view as UIViewController, true);
                return;
            }

            // Then handle panels
            UIViewController viewController = view as UIViewController;

            if (viewController == null)
            {
                throw new MvxException("Passed in IMvxTouchView is not a UIViewController");
            }

            if (MasterNavigationController == null)
            {
                ShowFirstView(viewController);
            }
            else
            {
                // here we need to get the Presentation Panel attribute details from the custom attribute
                var panelAttribute = viewController.GetType().GetCustomAttributes(typeof(PanelPresentationAttribute), true).FirstOrDefault() as PanelPresentationAttribute;
                if (panelAttribute != null)
                {
                    switch (panelAttribute.HintType)
                    {
                    case PanelHintType.ActivePanel:
                        ChangePresentation(new ActivePanelPresentationHint(panelAttribute.Panel, panelAttribute.ShowPanel));
                        break;

                    case PanelHintType.PopToRoot:
                        ChangePresentation(new PanelPopToRootPresentationHint(panelAttribute.Panel));
                        break;

                    case PanelHintType.ResetRoot:
                        ChangePresentation(new PanelResetRootPresentationHint(panelAttribute.Panel));
                        break;
                    }
                }

                if (GetActivePanelUiNavigationController == null)
                {
                    // If we have cleared down our panel completely, then we will be setting a new root view
                    // this is perfect for Menu items
                    switch (_activePanel)
                    {
                    case PanelEnum.Center:
                        _jaSidePanelController.CenterPanel = new UINavigationController(viewController);
                        break;

                    case PanelEnum.Left:
                        _jaSidePanelController.LeftPanel = new UINavigationController(viewController);
                        break;

                    case PanelEnum.Right:
                        _jaSidePanelController.RightPanel = new UINavigationController(viewController);
                        break;
                    }
                }
                else
                {
                    // Otherwise we just want to push to the designated panel
                    GetActivePanelUiNavigationController.PushViewController(viewController, true);
                }
            }
        }