public override void OnInspectorGUI() { bold = new GUIStyle(GUI.skin.label); bold.fontStyle = FontStyle.Bold; if (keyEditInfo.editing == false) { if (Rebind.defaultKeys.Dictionary.Count > 0) { //Show collumn labels GUILayout.BeginHorizontal(); GUILayout.Space(5); GUILayout.Label("Action Name", bold); GUILayout.FlexibleSpace(); GUILayout.Label("Primary", bold, GUILayout.Width(105)); GUILayout.Label("Secondary", bold, GUILayout.Width(110)); GUILayout.Space(40); GUILayout.EndHorizontal(); } foreach (KeyValuePair<string, List<InputCode>> pair in Rebind.defaultKeys.Dictionary) { GUILayout.BeginHorizontal(); GUILayout.Label(pair.Key); GUILayout.FlexibleSpace(); if (GUILayout.Button(pair.Value[0].ToString(), GUILayout.Width(115))) { keyEditInfo = new KeyEditInfo(pair.Key, 0); keyEditInfo.editing = true; } if (pair.Value.Count > 1) { if (GUILayout.Button(pair.Value[1].ToString(), GUILayout.Width(115))) { keyEditInfo = new KeyEditInfo(pair.Key, 1); keyEditInfo.editing = true; } } else { if (GUILayout.Button("Add", GUILayout.Width(115))) { keyEditInfo = new KeyEditInfo(pair.Key, 1); keyEditInfo.editing = true; } } if (GUILayout.Button("Delete")) { deleteDictionaryEntry(pair); break; } GUILayout.EndHorizontal(); } if (!create) { if (GUILayout.Button("New")) { create = true; } } else { GUILayout.BeginHorizontal(); actionName = GUILayout.TextField(actionName, GUILayout.Width(150)); GUILayout.FlexibleSpace(); if (GUILayout.Button("Create", GUILayout.Width(137))) { createDictionaryEntry(); } if (GUILayout.Button("Cancel", GUILayout.Width(76))) { create = false; } GUILayout.EndHorizontal(); } } else { GUILayout.Space(10); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.Label("Press any key", bold); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.Space(10); if (GUILayout.Button("Reset")) { resetInputCode(); } } if (keyEditInfo.editing) { keyEditInfo.editing = pollForInput(); } }
public override void OnInspectorGUI() { bold = new GUIStyle(GUI.skin.label); bold.fontStyle = FontStyle.Bold; if (keyEditInfo.editing == false) { if (Rebind.defaultKeys.Dictionary.Count > 0) { //Show collumn labels GUILayout.BeginHorizontal(); GUILayout.Space(5); GUILayout.Label("Action Name", bold); GUILayout.FlexibleSpace(); GUILayout.Label("Primary", bold, GUILayout.Width(105)); GUILayout.Label("Secondary", bold, GUILayout.Width(110)); GUILayout.Space(40); GUILayout.EndHorizontal(); } foreach (KeyValuePair <string, List <InputCode> > pair in Rebind.defaultKeys.Dictionary) { GUILayout.BeginHorizontal(); GUILayout.Label(pair.Key); GUILayout.FlexibleSpace(); if (GUILayout.Button(pair.Value[0].ToString(), GUILayout.Width(115))) { keyEditInfo = new KeyEditInfo(pair.Key, 0); keyEditInfo.editing = true; } if (pair.Value.Count > 1) { if (GUILayout.Button(pair.Value[1].ToString(), GUILayout.Width(115))) { keyEditInfo = new KeyEditInfo(pair.Key, 1); keyEditInfo.editing = true; } } else { if (GUILayout.Button("Add", GUILayout.Width(115))) { keyEditInfo = new KeyEditInfo(pair.Key, 1); keyEditInfo.editing = true; } } if (GUILayout.Button("Delete")) { deleteDictionaryEntry(pair); break; } GUILayout.EndHorizontal(); } if (!create) { if (GUILayout.Button("New")) { create = true; } } else { GUILayout.BeginHorizontal(); actionName = GUILayout.TextField(actionName, GUILayout.Width(150)); GUILayout.FlexibleSpace(); if (GUILayout.Button("Create", GUILayout.Width(137))) { createDictionaryEntry(); } if (GUILayout.Button("Cancel", GUILayout.Width(76))) { create = false; } GUILayout.EndHorizontal(); } } else { GUILayout.Space(10); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.Label("Press any key", bold); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); GUILayout.Space(10); if (GUILayout.Button("Reset")) { resetInputCode(); } } if (keyEditInfo.editing) { keyEditInfo.editing = pollForInput(); } }