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); }
/// <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()); } } }
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()); }
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); } } }