コード例 #1
0
        //----- method -----

        /// <summary> 初期化. </summary>
        public virtual void Initialize()
        {
            if (initialized)
            {
                return;
            }

            var srDebug = SRDebug.Instance;

            var sendReportManager = SendReportManager.Instance;

            VisibilityChangedDelegate onPanelVisibilityChanged = visible =>
            {
                if (visible && gameObject.activeInHierarchy)
                {
                    UpdateView();
                }
            };

            srDebug.PanelVisibilityChanged += onPanelVisibilityChanged;

            UpdateView();

            sendReportManager.OnRequestReportAsObservable()
            .Subscribe(_ =>
            {
                AddReportTitle();
                UpdateView();
            })
            .AddTo(this);

            sendReportManager.OnReportCompleteAsObservable()
            .Subscribe(x => OnReportComplete(x))
            .AddTo(this);

            sendReportButton.OnClickAsObservable()
            .Subscribe(_ =>
            {
                if (sendReportDisposable != null)
                {
                    PostCancel();
                }
                else
                {
                    sendReportDisposable = Observable.FromCoroutine(() => SendReport())
                                           .Subscribe(__ => sendReportDisposable = null)
                                           .AddTo(this);
                }
            })
            .AddTo(this);

            initialized = true;
        }
コード例 #2
0
        //----- method -----

        /// <summary> 初期化. </summary>
        public virtual void Initialize()
        {
            if (initialized)
            {
                return;
            }

            aesManaged = CreateAesManaged();
            reportForm = new List <IMultipartFormSection>();

            var srDebug = SRDebug.Instance;

            VisibilityChangedDelegate onPanelVisibilityChanged = visible =>
            {
                if (visible && gameObject.activeInHierarchy)
                {
                    UpdateContents();
                }
            };

            srDebug.PanelVisibilityChanged += onPanelVisibilityChanged;

            UpdateView();

            sendReportButton.OnClickAsObservable()
            .Subscribe(_ =>
            {
                if (sendReportDisposable != null)
                {
                    PostCancel();
                }
                else
                {
                    sendReportDisposable = Observable.FromCoroutine(() => PostReport())
                                           .Subscribe(__ =>
                    {
                        sendReportDisposable = null;
                    })
                                           .AddTo(this);
                }
            })
            .AddTo(this);

            titleInputField.ObserveEveryValueChanged(x => x.text)
            .Subscribe(x => UnityUtility.SetActive(sendReportButton, !string.IsNullOrEmpty(x)))
            .AddTo(this);

            titleInputField.text   = string.Empty;
            commentInputField.text = string.Empty;

            initialized = true;
        }
コード例 #3
0
ファイル: SRDiagnosis.cs プロジェクト: xmshaka/UnityFramework
        public void Initialize()
        {
            if (!initialized && IsEnable())
            {
                SRDebug.Init();

                var srDebug = SRDebug.Instance;

                UnityUtility.SetActive(blockCollider, srDebug.IsDebugPanelVisible);

                VisibilityChangedDelegate onPanelVisibilityChanged = visible =>
                {
                    if (visible)
                    {
                        background.color = defaultColor;
                        currentLogType   = null;
                        lastShowLogTime  = Time.realtimeSinceStartup;
                    }

                    UnityUtility.SetActive(blockCollider, visible);
                };

                srDebug.PanelVisibilityChanged += onPanelVisibilityChanged;

                button.OnClickAsObservable()
                .Subscribe(_ => srDebug.ShowDebugPanel())
                .AddTo(this);

                ApplicationLogHandler.Instance.OnLogReceiveAsObservable()
                .Subscribe(x => OnLogReceive(x))
                .AddTo(this);

                #if ENABLE_SRDEBUGGER
                SRTrackLogService.Initialize();
                #endif

                UnityUtility.SetActive(blockCollider, false);

                background.color = defaultColor;

                initialized = true;
            }
        }
コード例 #4
0
        //----- method -----

        public void Initialize()
        {
            if (!initialized && IsEnable)
            {
                SRDebug.Init();

                var srDebug               = SRDebug.Instance;
                var logTracker            = UnityLogTracker.Instance;
                var applicationLogHandler = ApplicationLogHandler.Instance;

                SetTouchBlock(touchBlock);

                VisibilityChangedDelegate onPanelVisibilityChanged = visible =>
                {
                    if (visible)
                    {
                        background.color = defaultColor;
                        currentLogType   = null;
                        lastShowLogTime  = Time.realtimeSinceStartup;
                    }

                    UnityUtility.SetActive(touchBlock, visible);
                };

                srDebug.PanelVisibilityChanged += onPanelVisibilityChanged;

                button.OnClickAsObservable()
                .Subscribe(_ => srDebug.ShowDebugPanel())
                .AddTo(this);

                applicationLogHandler.OnReceivedThreadedAllAsObservable()
                .ObserveOnMainThread()
                .Subscribe(x => OnLogReceive(x))
                .AddTo(this);

                logTracker.Initialize();

                background.color = defaultColor;

                initialized = true;
            }
        }