public override void OnGUI(LocalizedTablePropertyDrawerPropertyData data, Rect position, SerializedProperty property, GUIContent label)
        {
            var dropDownPosition = EditorGUI.PrefixLabel(position, label);

            if (EditorGUI.DropdownButton(dropDownPosition, data.FieldLabel, FocusType.Passive))
            {
                var treeSelection = new TableTreeView(typeof(TCollection) == typeof(StringTableCollection) ? typeof(StringTable) : typeof(AssetTable), collection =>
                {
                    data.SelectedTableCollection = collection as TCollection;

                    // Will be called outside of OnGUI so we need to call ApplyModifiedProperties.
                    data.serializedObject.ApplyModifiedProperties();
                });

                PopupWindow.Show(dropDownPosition, new TreeViewPopupWindow(treeSelection)
                {
                    Width = dropDownPosition.width
                });
            }
        }
 public override float GetPropertyHeight(LocalizedTablePropertyDrawerPropertyData data, SerializedProperty property, GUIContent label) => EditorGUIUtility.singleLineHeight;