public override void OnInspectorGUI() { GUILayout.Label("Relations inspector settings", EditorStyles.boldLabel); EditorGUILayout.Space(); settings.cacheLayouts = EditorGUILayout.Toggle("Cache layouts", settings.cacheLayouts); settings.maxGraphNodes = EditorGUILayout.IntField("Max graph nodes", settings.maxGraphNodes); EditorGUI.BeginChangeCheck(); settings.treeRootLocation = (TreeRootLocation)EditorGUILayout.EnumPopup("Tree root location", settings.treeRootLocation); if (EditorGUI.EndChangeCheck() && api != null) { api.Relayout(); } EditorGUI.BeginChangeCheck(); settings.showMinimap = EditorGUILayout.Toggle("Show minimap", settings.showMinimap); settings.minimapLocation = (MinimapLocation)EditorGUILayout.EnumPopup("Minimap location", settings.minimapLocation); if (EditorGUI.EndChangeCheck() && api != null) { api.Repaint(); } settings.logToConsole = EditorGUILayout.Toggle("Log to console", settings.logToConsole); settings.invertZoom = EditorGUILayout.Toggle("Invert zoom", settings.invertZoom); #if DEBUG settings.repaintEachFrame = EditorGUILayout.Toggle("Repaint each frame", settings.repaintEachFrame); ShowGraphLayoutParams(settings.graphLayoutParameters); ShowLayoutTweenParams(settings.layoutTweenParameters); #endif if (GUI.changed) { EditorUtility.SetDirty(settings); } }
public void OnToolbarGUI() { EditorGUI.BeginChangeCheck(); if (graph != null && GUILayout.Button("Relayout", EditorStyles.toolbarButton, GUILayout.ExpandWidth(false))) { Exec(() => api.Relayout()); } // let user pick a layout type (iff tree layout is an option) if (graph != null && graph.IsTree()) { layoutType = (LayoutType)GUIUtil.EnumToolbar("", layoutType, (t) => layoutButtonContent[(LayoutType)t], EditorStyles.miniButton); if (EditorGUI.EndChangeCheck()) { GUIUtil.SetPrefsInt(GetPrefsKeyLayout(), (int)layoutType); adjustTransformMode = AdjustTransformMode.Smooth; Exec(DoAutoLayout); } } #if DEBUG if (GUILayout.Button("DumpTopo", EditorStyles.toolbarButton, GUILayout.ExpandWidth(false))) { TopologySerializer <T, P> .DumpTopology(graph); } #endif // draw view controls if (view != null) { GUILayout.FlexibleSpace(); view.OnToolbarGUI(); } }