protected void PropertyListField(string relativePropName, bool showOrder = true, params HeaderMenuInfo[] menus)
        {
            var m_DrawRect = GUILayoutUtility.GetRect(1f, 17f);
            var height     = 0f;
            var prop       = FindProperty(relativePropName);

            prop.isExpanded = ChartEditorHelper.MakeListWithFoldout(ref m_DrawRect, ref height,
                                                                    prop, prop.isExpanded, showOrder, true, menus);
            if (prop.isExpanded)
            {
                GUILayoutUtility.GetRect(1f, height - 17);
            }
        }
        protected void PropertyListField(SerializedProperty prop, string relativePropName, bool showOrder = true)
        {
            if (IngorePropertys.Contains(relativePropName))
            {
                return;
            }
            var height        = m_Heights[m_KeyName];
            var toggleKeyName = m_KeyName + relativePropName;

            m_DataToggles[toggleKeyName] = ChartEditorHelper.MakeListWithFoldout(ref m_DrawRect, ref height,
                                                                                 prop.FindPropertyRelative(relativePropName),
                                                                                 m_DataToggles.ContainsKey(toggleKeyName) && m_DataToggles[toggleKeyName], showOrder, true);
            m_Heights[m_KeyName] = height;
        }