public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
    {
        Rect colorFieldPos = new Rect(position.x, position.y, position.width - mLabelWidth, position.height);

        EditorGUI.PropertyField(colorFieldPos, property, label, true);

        GUI.SetNextControlName("Encoded Color");
        Rect stringFieldPos = new Rect(position.x + position.width - mLabelWidth, position.y, mLabelWidth, position.height);

        mEncodedColor = EditorGUI.TextField(stringFieldPos, "", mEncodedColor);
        if (GUI.GetNameOfFocusedControl() == "Encoded Color")
        {
            if (Event.current.keyCode == KeyCode.Return && Event.current.type == EventType.Used)
            {
                property.colorValue = ConvertExt.ParseColor24(mEncodedColor, 0);
            }
        }
        else
        {
            mEncodedColor = ConvertExt.EncodeColor24(property.colorValue);
        }
    }