Exemple #1
0
        protected override void OnDrawElement()
        {
            Rect render = RenderRectInfo;

            //绘制背景
            EditorGUI.DrawRect(render, EGUITools.GetColor(0.3f));

            //绘制帧显示
            int highIndex = 0;

            for (int i = 0; i <= _minOffsetX + render.width; i++)
            {
                int index = i - _minOffsetX;
                if ((index) % _timeInvert == 0)
                {
                    highIndex++;
                    if (highIndex > _highInvert)
                    {
                        highIndex = 0;
                        if (i >= _minOffsetX)
                        {
                            EditorGUI.DrawRect(new Rect(render.x + index, render.y + 15, 2, 15),
                                               EGUITools.GetColor(0.7f));
                        }
                    }
                    else
                    {
                        if (i >= _minOffsetX)
                        {
                            EditorGUI.DrawRect(new Rect(render.x + index, render.y + 20, 1, 10),
                                               EGUITools.GetColor(0.5f));
                        }
                    }

                    if (i >= _minOffsetX)
                    {
                        EditorGUI.LabelField(new Rect(render.x + index - 2, render.y + 2, _timeInvert, 10),
                                             ConvertPositionToIndex(i).ToString());
                    }
                }
            }


            float x = ((int)(_cursorOffsetX / (float)_timeInvert)) * _timeInvert;

            //绘制指针
            EditorGUI.DrawRect(new Rect(x + render.x, render.y, 2, 30),
                               EGUITools.GetColor(0.8f));


            if (_autoMove != 0)
            {
                _minOffsetX += (int)_autoMove;
                if (_minOffsetX < 0)
                {
                    _minOffsetX = 0;
                }
            }
        }
 protected override void OnDrawElement()
 {
     EditorGUI.DrawRect(RenderRectInfo, EGUITools.GetColor(0.15f));
 }