public static void FolderPathField(string label, string text, string title, Action <string> onValueChanged) { using (new EditorGUILayout.HorizontalScope()) { EditorGUI.BeginChangeCheck(); var value = EditorGUILayout.TextField(label, text); if (EditorGUI.EndChangeCheck()) { onValueChanged.Invoke(value); } if (GUILayout.Button("...", GUILayout.Width(30))) { onValueChanged(FolderUtil.GetSaveFolderPath(title)); } } }