Fix collection drawer render order bug by jeffcampbellmakesgames · Pull Request #65 · DanielEverland/ScriptableObject-Architecture

@jzapdot

* Renamed the existing method DrawPropertyDrawer to DrawPropertyDrawerLayout to indicate it used the native Unity auto-layout controls and created a new method using the older method name that uses the non-layout controls. Added method documentation to both explaining their usage.
* Changed BaseVariableEditor to use the new DrawPropertyDrawerLayout method name.
* Cleaned up CollectionEditor and removed several redundant calls to modify the rect, redundant callbacks, etc..
* Fixed a bug in CollectionEditor where the ReorderableList elements were being drawn by EditorGUILayout methods. These elements act similarly to PropertyDrawers in that they do not respect the auto-layout system methods and need to drawn using the non-layout methods that accept a Rect. I have added usage of callback `elementHeightCallback` so that the height of the element rect can vary depending on the generic T type element's property drawer and changed the element drawing logic to use a non-layout version of the same method from GenericPropertyDrawer. The end result is that these elements are now drawn inline with the reorderable list element instead of below the entire list.