void OnGUI() { drawToolbar(); _scrollViewPosition = EditorGUILayout.BeginScrollView(_scrollViewPosition); { drawHeader(); drawPreferencesDrawers(); } EditorGUILayout.EndScrollView(); if (GUI.changed) { EntitasPreferences.SaveConfig(_config); } }
void OnGUI() { _scrollViewPosition = EditorGUILayout.BeginScrollView(_scrollViewPosition); { var offsetY = EntitasEditorLayout.DrawHeaderTexture(this, _headerTexture); EditorGUILayout.Space(); EditorGUILayout.LabelField("Version: " + _localVersion); GUILayout.Space(offsetY - 24); foreach (var drawer in _preferencesDrawers) { drawer.Draw(_config); EditorGUILayout.Space(); } } EditorGUILayout.EndScrollView(); if (GUI.changed) { EntitasPreferences.SaveConfig(_config); } }
void OnGUI() { var config = EntitasPreferences.LoadConfig(); var types = Assembly.GetAssembly(typeof(IEntitasPreferencesDrawer)).GetTypes(); var preferencesDrawers = types .Where(type => type.GetInterfaces().Contains(typeof(IEntitasPreferencesDrawer))) .OrderBy(type => type.FullName) .Select(type => (IEntitasPreferencesDrawer)Activator.CreateInstance(type)) .ToArray(); _scrollViewPosition = EditorGUILayout.BeginScrollView(_scrollViewPosition); foreach (var drawer in preferencesDrawers) { drawer.Draw(config); EditorGUILayout.Space(); } EditorGUILayout.EndScrollView(); if (GUI.changed) { EntitasPreferences.SaveConfig(config); } }