void OnGUI() { if (data == null) { return; } var lbw = EditorGUIUtility.labelWidth; EditorGUIUtility.labelWidth = data.titleWidth; for (var i = 0; i < data.fields.Count; i++) { DrawField(data.fields[i]); } EditorGUIUtility.labelWidth = lbw; GUILayout.BeginHorizontal(); if (GUILayout.Button("OK")) { if (data.onSubmit != null) { data.onSubmit(data.ToDictionary()); } Close(); } if (GUILayout.Button("Cancel")) { data = null; Close(); } GUILayout.EndHorizontal(); }
public static vlbFormData Show(string title, Action <Dictionary <string, object> > onSubmit) { data = new vlbFormData { onSubmit = onSubmit }; var window = GetWindow <vlbForm>(title, true); window.Show(true); return(data); }