Exemple #1
0
        public void ClosePopup(object parameter)
        {
            App.AppLogger.Logger.Log(devoctomy.DFramework.Logging.Interfaces.LoggerMessageType.Information | devoctomy.DFramework.Logging.Interfaces.LoggerMessageType.VerboseHigh, "AppController ClosePopup.");

            BurgerMenuPopupViewItem popupItem = _mainPageInstance.SelectedPopupItem;

            if (popupItem != null)
            {
                PageNavigationAwareView view = (PageNavigationAwareView)popupItem.PopupViewInstance;
                view.OnNavigateFrom();

                _mainPageInstance.ClosePopup();

                if (_mainPageInstance.PopupsVisible)
                {
                    PageNavigationAwareView selectedPopup = _mainPageInstance.SelectedPopupItem.PopupViewInstance as PageNavigationAwareView;
                    selectedPopup.OnClosePopup(popupItem.PopupViewInstance, parameter);
                }
                else
                {
                    PageNavigationAwareView selectedView = _mainPageInstance.SelectedItem.PageViewInstance as PageNavigationAwareView;
                    selectedView.OnClosePopup(popupItem.PopupViewInstance, parameter);
                }
            }
        }
Exemple #2
0
        public void GoBack()
        {
            App.AppLogger.Logger.Log(devoctomy.DFramework.Logging.Interfaces.LoggerMessageType.Information, "AppController GoBack.");

            BurgerMenuViewItem prevItem = NavigationManager.Instance.GoBack();

            if (prevItem != null)
            {
                _mainPageInstance.SelectItem(prevItem);
                PageNavigationAwareView view = (PageNavigationAwareView)prevItem.PageViewInstance;
                view.OnGoBack();
            }
        }
Exemple #3
0
        public PageNavigationAwareView CreateViewInstance(Type viewType)
        {
            App.AppLogger.Logger.Log(devoctomy.DFramework.Logging.Interfaces.LoggerMessageType.Information | devoctomy.DFramework.Logging.Interfaces.LoggerMessageType.VerboseHigh, "AppController CreateViewInstance of type '{0}'.", viewType.Name);

            PageNavigationAwareView viewInstance = null;

            if (viewType.IsSubclassOf(typeof(PageNavigationAwareView)))
            {
                viewInstance = CreateInstance <PageNavigationAwareView>(viewType);
            }
            else
            {
                throw new NotImplementedException(String.Format("View type of '{0}' is not supported.", viewType.Name));
            }
            return(viewInstance);
        }
Exemple #4
0
        public void ShowPopup(string key, params KeyValuePair <String, Object>[] parameters)
        {
            App.AppLogger.Logger.Log(devoctomy.DFramework.Logging.Interfaces.LoggerMessageType.Information | devoctomy.DFramework.Logging.Interfaces.LoggerMessageType.VerboseHigh, "AppController ShowPopup '{0}'.", key);

            BurgerMenuPopupViewItem item;

            _mainPageInstance.DisplayPopup(key, out item);
            if (item != null)
            {
                PageNavigationAwareView view = (PageNavigationAwareView)item.PopupViewInstance;
                view.InitialiseBindingContext();
                if (parameters != null && parameters.Length > 0)
                {
                    view.SetParameters(parameters);
                }
                view.OnNavigateTo(_mainPageInstance.SelectedItem, false);
            }
        }