Beispiel #1
0
 private void WipeOutSequence()
 {
     if (currentView != null)
     {
         GenericViewController currentViewController = currentView.GetComponent <GenericViewController>();
         while (navigationStack.Count > 1 && currentViewController.viewType == ViewTypes.CONTENT_SEQUENCE)
         {
             Pop();
             currentViewController.Show(false);
             if (allViewsDictionary.ContainsKey(navigationStack.Peek()))
             {
                 currentView           = allViewsDictionary[navigationStack.Peek()];
                 currentViewController = currentView.GetComponent <GenericViewController>();
             }
         }
         Pop();
         currentViewController.Show(false);
         if (navigationStack.Count > 0)
         {
             if (allViewsDictionary.ContainsKey(navigationStack.Peek()))
             {
                 currentView           = allViewsDictionary[navigationStack.Peek()];
                 currentViewController = currentView.GetComponent <GenericViewController>();
             }
         }
         else
         {
             currentView           = null;
             currentViewController = null;
         }
     }
 }
Beispiel #2
0
    public void GoTo(string viewName)
    {
        GenericViewController currentViewController = currentView.GetComponent <GenericViewController>();
        GenericViewController nextViewController    = null;
        GameObject            nextViewGameObject    = null;

        if ((allViewsDictionary.ContainsKey(viewName)) &&
            (currentViewController.viewName != viewName))
        {
            previousViewName = currentViewController.viewName;

            nextViewGameObject = allViewsDictionary[viewName];
            nextViewGameObject.SetActive(true);
            nextViewController = nextViewGameObject.GetComponent <GenericViewController>();

            //Comes from
            if ((currentViewController.viewType == ViewTypes.WHOLE_WINDOW) ||
                (nextViewController.viewType == ViewTypes.CONTENT_PANEL &&
                 currentViewController.viewType == ViewTypes.CONTENT_PANEL))
            {
                Pop();
                currentViewController.Show(false);
            }
            else if (nextViewController.viewType == ViewTypes.CONTENT_SEQUENCE &&
                     (currentViewController.viewType == ViewTypes.CONTENT_PANEL ||
                      currentViewController.viewType == ViewTypes.CONTENT_SEQUENCE))
            {
                currentViewController.Show(false);
            }
            else if (currentViewController.viewType == ViewTypes.CONTENT_SEQUENCE &&
                     nextViewController.viewType == ViewTypes.CONTENT_PANEL)
            {
                WipeOutSequence();
            }

            //Goes to
            ShowViewPanel(viewName);
            currentView = allViewsDictionary[viewName];
            if (!(navigationStack.Count > 0 && navigationStack.Peek() == viewName))
            {
                navigationStack.Push(viewName);
            }
        }
        else
        {
            //GoTo same view = Do nothing or refresh
            //currentView.GetComponent<GenericViewController>().Refresh();
        }

        PrintStack();
    }
Beispiel #3
0
 void RegisterViews()
 {
     if (allViewsDictionary.Count == 0)
     {
         for (int iter = 0; iter < viewList.Length; iter++)
         {
             GenericViewController viewController = viewList[iter].GetComponent("GenericViewController") as GenericViewController;
             allViewsDictionary.Add(viewController.viewName, viewList[iter]);
             //viewController.googleAnalytics = googleAnalytics;
             if (viewController.viewType == ViewTypes.CONTENT_PANEL ||
                 viewController.viewType == ViewTypes.CONTENT_SEQUENCE)
             {
                 contentViewDictionary.Add(viewController.viewName, viewList[iter]);
             }
         }
     }
 }
Beispiel #4
0
    public void GoToRoot()
    {
        for (int iter = 0; iter < viewList.Length; iter++)
        {
            GenericViewController viewController = viewList[iter].GetComponent("GenericViewController") as GenericViewController;
            viewList[iter].SetActive(false);
        }

        string previousViewName = currentView.GetComponent <GenericViewController>().viewName;

        currentView = defaultView;
        GenericViewController currentViewController = defaultView.GetComponent <GenericViewController>();

        navigationStack.Clear();
        navigationStack.Push(currentViewController.viewName);
        currentView.SetActive(true);
        currentViewController.Show(true, previousViewName);
    }
Beispiel #5
0
 public void ShowViewPanel(string value)
 {
     if (allViewsDictionary.ContainsKey(value))
     {
         GameObject            viewGameObject = allViewsDictionary[value];
         GenericViewController viewController = viewGameObject.GetComponent <GenericViewController>();
         if (viewController.viewType == ViewTypes.CONTENT_PANEL)
         {
             ShowContentViewPanel(value);
         }
         else if (viewController.viewType == ViewTypes.SCENE)
         {
             Application.LoadLevel(value);
         }
         else
         {
             viewGameObject.SetActive(true);
             viewController.Show(true, previousViewName);
         }
         currentView = allViewsDictionary[value];
     }
 }