示例#1
0
        public Viewer(EditorWindow hostWindow)
        {
            Assert.IsNotNull(hostWindow);

            _viewerModeManager = ViewerConst.GetSingletonInstance <V>();
            _healthInfoManager = ViewerConst.GetSingletonInstance <H>();

            _modeInit   = new Dictionary <string, bool>();
            _modeData   = new Dictionary <string, List <object> >();
            _modeHealth = new Dictionary <string, Health>();
            _mode       = _viewerModeManager.GetMode()[0];
            foreach (var key in _viewerModeManager.GetMode())
            {
                _modeInit[key] = false;
                _modeData[key] = new List <object>();
            }

            _dataTable = new TableView(hostWindow, typeof(T));
            _showTable = new TableView(hostWindow, typeof(U));

            _dataTable.OnSelected += OnDataSelected;
            _showTable.OnSelected += OnInfoSelected;

            UpdateDataTableTitle();
            UpdateShowTableTitle();
        }
示例#2
0
        private void LoadHealthConfig()
        {
            string configName = HealthConfigPopup.s_healthConfigs[HealthConfigPopup.s_currentMode];

            HealthConfig.ConfigJson configJson = HealthConfig.Instance().GetConfig(configName);

            // ------------------------------------------------Texture------------------------------------------------
            ViewerConst.GetSingletonInstance <TextureHealthInfoManager>().Clear();
            foreach (string mode in ViewerConst.GetSingletonInstance <TextureViewerModeManager>().GetMode())
            {
                HealthConfig.ModeConfig modeConfig = configJson.GetModeConfig("Texture", mode);
                if (modeConfig != null)
                {
                    ViewerConst.GetSingletonInstance <TextureHealthInfoManager>().AddHealthInfo(mode, modeConfig.Enable, modeConfig.Tip, modeConfig.ConfigValue, modeConfig.Condition);
                }
            }

            // ------------------------------------------------Model------------------------------------------------
            ViewerConst.GetSingletonInstance <ModelHealthInfoManager>().Clear();
            foreach (string mode in ViewerConst.GetSingletonInstance <ModelViewerModeManager>().GetMode())
            {
                HealthConfig.ModeConfig modeConfig = configJson.GetModeConfig("Model", mode);
                if (modeConfig != null)
                {
                    ViewerConst.GetSingletonInstance <ModelHealthInfoManager>().AddHealthInfo(mode, modeConfig.Enable, modeConfig.Tip, modeConfig.ConfigValue, modeConfig.Condition);
                }
            }

            // ------------------------------------------------Particle------------------------------------------------
            ViewerConst.GetSingletonInstance <ParticleHealthInfoManager>().Clear();
            foreach (string mode in ViewerConst.GetSingletonInstance <ParticleViewerModeManager>().GetMode())
            {
                HealthConfig.ModeConfig modeConfig = configJson.GetModeConfig("Particle", mode);
                if (modeConfig != null)
                {
                    ViewerConst.GetSingletonInstance <ParticleHealthInfoManager>().AddHealthInfo(mode, modeConfig.Enable, modeConfig.Tip, modeConfig.ConfigValue, modeConfig.Condition);
                }
            }

            // ------------------------------------------------Shader------------------------------------------------
            ViewerConst.GetSingletonInstance <ShaderHealthInfoManager>().Clear();
            foreach (string mode in ViewerConst.GetSingletonInstance <ShaderViewerModeManager>().GetMode())
            {
                HealthConfig.ModeConfig modeConfig = configJson.GetModeConfig("Shader", mode);
                if (modeConfig != null)
                {
                    ViewerConst.GetSingletonInstance <ShaderHealthInfoManager>().AddHealthInfo(mode, modeConfig.Enable, modeConfig.Tip, modeConfig.ConfigValue, modeConfig.Condition);
                }
            }

            // ------------------------------------------------Audio------------------------------------------------
            ViewerConst.GetSingletonInstance <AudioHealthInfoManager>().Clear();
            foreach (string mode in ViewerConst.GetSingletonInstance <AudioViewerModeManager>().GetMode())
            {
                HealthConfig.ModeConfig modeConfig = configJson.GetModeConfig("Audio", mode);
                if (modeConfig != null)
                {
                    ViewerConst.GetSingletonInstance <AudioHealthInfoManager>().AddHealthInfo(mode, modeConfig.Enable, modeConfig.Tip, modeConfig.ConfigValue, modeConfig.Condition);
                }
            }
        }