예제 #1
0
    /// <summary>
    /// 初始化
    /// </summary>
    public override void Initialize()
    {
        UICompositeViewMounts mounts = GetTransform().GetComponent <UICompositeViewMounts>();

        if (mounts)
        {
            BackBox   = mounts.BackBox;
            TitleBox  = mounts.TitleBox;
            ListBox   = mounts.ListBox;
            TipBox    = mounts.TipBox;
            PageBox   = mounts.PageBox;
            SortBox   = mounts.SortBox;
            OtherBox  = mounts.OtherBox;
            ModelBox  = mounts.ModelBox;
            HotkeyBox = mounts.HotkeyBox;
        }

        Root = FindComponent <Transform>("Content");
        AnimatorController = GetTransform().GetComponent <UIAnimationEvent>();

        //初始化页面状态
        CfgEternityProxy cfg      = Facade.RetrieveProxy(ProxyName.CfgEternityProxy) as CfgEternityProxy;
        UiConfig?        uiConfig = cfg.GetUIConfig((uint)Name);

        if (uiConfig.HasValue && !m_ViewStates.ContainsKey(Name))
        {
            UIViewState state = new UIViewState();
            state.UIConfig = uiConfig;
            state.Initialize();

            m_ViewStates.Add(Name, state);
        }
    }
예제 #2
0
        public void OnShowView(UIViewState state, UIView.UIViewDelegate handler)
        {
            if (state == UIViewState.OPENED)
            {
                isActionTermsOfServiceView = true;
                Debug.Log("[NMGPlayMode.UIViewManager] OPENED");
            }
            else if (state == UIViewState.FAILED)
            {
                isActionTermsOfServiceView = false;
                Debug.Log("[NMGPlayMode.UIViewManager] FAILED");
            }
            else if (state == UIViewState.CLOSED)
            {
                isActionTermsOfServiceView = false;
                Debug.Log("[NMGPlayMode.UIViewManager] CLOSED");
                NMGPlayerPrefs.SetTermsOfServiceViewShowed("True");
            }
            else if (state == UIViewState.REWARDED)
            {
                isActionTermsOfServiceView = false;
                Debug.Log("[NMGPlayMode.UIViewManager] REWARDED");
            }

            if (handler != null)
            {
                handler(state);
            }
        }
예제 #3
0
 /// <summary>
 /// 应用到指定状态
 /// </summary>
 /// <param name="State"></param>
 public void ApplyTo(UIViewState State)
 {
     State.SetPageIndex(PageIndex);
     State.SetPageCategoryIndex(PageIndex, CategoryIndex);
     State.SetPageSortIndex(PageIndex, SortIndex);
     State.GetPage(PageIndex).ListLayoutMode      = LayoutMode;
     State.GetPage(PageIndex).ListSelection       = SelectionIndex;
     State.GetPage(PageIndex).ListSelectionOffset = SelectionOffset;
     State.SetCompareMode(CompareMode);
     State.SetCompareIndex(CompareIndex);
 }
예제 #4
0
    public void EnterLoadingAppState()
    {
        viewState = UIViewState.LoadingApp;

        VideoBrowser.instance.Show(false);
        VideoDetails.instance.Show(false);
        VideoControls.instance.Show(false);

        // Geometry
        GeometryManager.instance.Show(false);
    }
예제 #5
0
    public void EnterVideoDetailsState(string videoProjectID)
    {
        viewState = UIViewState.VideoDetails;

        VideoBrowser.instance.Show(false);
        VideoDetails.instance.Show(true, videoProjectID);
        VideoControls.instance.Show(false);

        // Selection is required
        CustomCursor.instance.Show(true);

        // Geometry
        GeometryManager.instance.Show(true);
    }
예제 #6
0
    //被隐藏
    public virtual void OnHide()
    {
        //if (ViewState == UIViewState.Visible)
        //{
        //从相机的视域体内推出
        Vector3 pos = transform.localPosition;

        pos.z = -99999;
        transform.localPosition = pos;

        ViewState = UIViewState.Nonvisible;
        this.gameObject.SetActive(false);
        //}
        //去掉背景
        Destroy(bgObj);
    }
예제 #7
0
    public void EnterPlayingVideoState()
    {
        // Wait 25 frames before accepting any input from this state.
        delayInput = 25;

        viewState = UIViewState.PlayingVideo;

        VideoBrowser.instance.Show(false);
        VideoDetails.instance.Show(false);
        VideoControls.instance.Show(false);

        //Initially no selection required
        CustomCursor.instance.Show(false);

        // Geometry
        GeometryManager.instance.Show(false);
    }
예제 #8
0
    public void EnterBrowseVideoState()
    {
        VRInput.Confirm.Pressed = false;
        viewState = UIViewState.BrowsingVideos;

        VideoBrowser.instance.Show(true);
        VideoDetails.instance.Show(false);
        VideoControls.instance.Show(false);

        // Selection is required
        CustomCursor.instance.Show(true);

        // Geometry
        GeometryManager.instance.Show(true);

        //We re-entered the video browser so we need to refresh the list (maybe not always?)
        VideoBrowser.instance.RefreshVideoList();
    }
예제 #9
0
    //被显示时
    public virtual void OnShow()
    {
        if (!gameObject.activeSelf)
        {
            gameObject.SetActive(true);
        }

        if (ViewState != UIViewState.Visible)
        {
            //将z坐标归0
            Vector3 pos = transform.localPosition;
            pos.z = 0;
            transform.localPosition = pos;

            ViewState = UIViewState.Visible;
            InitBG();
        }

        UpdateView();
    }
예제 #10
0
    public void EnterPausedVideoState(bool pause = false)
    {
        //Pause the video if it is playing
        if (pause)
        {
            App.Player.Pause();
        }

        VideoControls.instance.SetPauseResumeIcon(App.Player.IsPlaying);

        viewState = UIViewState.PausedVideo;

        VideoBrowser.instance.Show(false);
        VideoDetails.instance.Show(false);
        VideoControls.instance.Show(true);

        // Selection required
        CustomCursor.instance.Show(true);

        // Geometry
        GeometryManager.instance.Show(false);
    }
예제 #11
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="tipBox"></param>
 public StandaloneTip(RectTransform tipBox)
 {
     m_TipBox = tipBox;
     m_State  = new UIViewState();
 }
예제 #12
0
 public UIViewAction(string id, UIViewState state)
 {
     m_ID    = id;
     m_State = state;
 }
예제 #13
0
        private void SetUIVisibility(UIViewState uiState)
        {
            // Stop all UI animation first to prevent concurrency issues.
            this.ItineraryViewAnimation.Pause();
            this.TransitOptionsViewAnimation.Pause();
            this.OnlyStartEndInputViewAnimation.Pause();
            this.MapViewOnlyAnimation.Pause();

            switch (uiState)
            {
                case UIViewState.ItineraryView:
                    this.ItineraryViewAnimation.Begin();
                    this.ApplicationBar.IsVisible = true;
                    if (this._viewModel.SelectedTransitTrip != null)
                    {
                        if (this.directionsStepView.SelectedItem == -1)
                        {
                            this.mainMap.SetView(this._viewModel.SelectedTransitTrip.MapView);

                            // set zoom a little lower so endpoints don't underlap overlays
                            this.mainMap.ZoomLevel = this.mainMap.TargetZoomLevel - 0.4;
                        }
                    }

                    break;
                case UIViewState.TransitOptionsView:
                    this.ApplicationBar.IsVisible = false;
                    this.bottomGrid.Height = 800 - this.topGrid.ActualHeight - 32;
                    this.TransitOptionsViewAnimation.Begin();
                    break;
                case UIViewState.OnlyStartEndInputsView:
                    this.ApplicationBar.IsVisible = false;
                    this.OnlyStartEndInputViewAnimation.Completed += (s, a) => this.endingInput.Focus();
                    this.OnlyStartEndInputViewAnimation.Begin();
                    break;
                case UIViewState.MapViewOnly:
                    this.MapViewOnlyAnimation.Begin();
                    this.ApplicationBar.IsVisible = true;
                    break;
            }

            var appbarmenuDirections = (ApplicationBarMenuItem)this.ApplicationBar.MenuItems[(int)AppBarMenuItemOrder.Directions];
            appbarmenuDirections.IsEnabled = this._viewModel.SelectedTransitTrip != null;

            var appbariconResults = (ApplicationBarIconButton)this.ApplicationBar.Buttons[(int)AppBarIconOrder.Results];
            appbariconResults.IsEnabled = this._viewModel.TransitDescriptionCollection != null
                                       && this._viewModel.TransitDescriptionCollection.Count != 0;

            var appbariconSteps = (ApplicationBarIconButton)this.ApplicationBar.Buttons[(int)AppBarIconOrder.Steps];
            appbariconSteps.IsEnabled = this._viewModel.SelectedTransitTrip != null;

            this.CurrentViewState = uiState;
        }