public override void Initialize(PropertiesModel.Property property)
        {
            base.Initialize(property);

            m_info = property.EditorAdditionalData<CurveInfo>();
            if (m_info != null && m_info.Curves != null && m_info.Curves.Length > 0)
            {
                PlayCanvas.CurveSet curveSet = PropertyModel.Data<PlayCanvas.CurveSet>();
                if (curveSet == null)
                    curveSet = new PlayCanvas.CurveSet();
                if (curveSet.CurvesList.Count < m_info.Curves.Length)
                    for (int i = curveSet.CurvesList.Count; i < m_info.Curves.Length; ++i)
                        curveSet.CurvesList.Add(new PlayCanvas.Curve(new float[] { 0.0f, 0.0f }));
                PropertyModel.Data<PlayCanvas.CurveSet>(curveSet);
            }

            m_curvePictureBox = new PictureBox();
            m_curvePictureBox.Cursor = Cursors.Hand;
            m_curvePictureBox.Width = 0;
            m_curvePictureBox.Height = 48;
            m_curvePictureBox.BackColor = Color.FromArgb(255, 64, 64, 64);
            m_curvePictureBox.Dock = DockStyle.Top;
            m_curvePictureBox.Click += m_curvePictureBox_Click;
            m_curvePictureBox.Resize += m_curvePictureBox_Resize;
            m_curvePictureBox.Paint += m_curvePictureBox_Paint;
            Content.Controls.Add(m_curvePictureBox);

            UpdateEditor();
        }
예제 #2
0
        public override void Initialize(PropertiesModel.Property property)
        {
            base.Initialize(property);

            m_info = property.EditorAdditionalData<NumberInfo>();

            m_textBox = new MetroTextBox();
            MetroSkinManager.ApplyMetroStyle(m_textBox);
            m_textBox.Width = 0;
            m_textBox.Dock = DockStyle.Top;
            m_textBox.TextChanged += m_textBox_TextChanged;
            m_textBox.CustomPaintForeground += m_textBox_CustomPaintForeground;
            m_textBox.Leave += m_textBox_Leave;
            Content.Controls.Add(m_textBox);

            UpdateEditor();
            m_textBox.Refresh();
        }
        public override void Initialize(PropertiesModel.Property property)
        {
            ColorCurveInfo colorCurveInfo = property.EditorAdditionalData<ColorCurveInfo>();
            CurveInfo curveInfo = new CurveInfo();
            if (colorCurveInfo.Type == ColorCurveType.R)
                curveInfo.Curves = new string[] { "Red" };
            else if (colorCurveInfo.Type == ColorCurveType.G)
                curveInfo.Curves = new string[] { "Green" };
            if (colorCurveInfo.Type == ColorCurveType.B)
                curveInfo.Curves = new string[] { "Blue" };
            else if (colorCurveInfo.Type == ColorCurveType.RGB)
                curveInfo.Curves = new string[] { "Red", "Green", "Blue" };
            else if (colorCurveInfo.Type == ColorCurveType.RGBA)
                curveInfo.Curves = new string[] { "Red", "Green", "Blue", "Alpha" };
            PropertiesModel.Property p = new PropertiesModel.Property(property.Name, property.Editor, property.Value.DeepClone());
            p.EditorAdditionalData<CurveInfo>(curveInfo);

            base.Initialize(p);
        }