void Awake() { shortcutPath = Application.dataPath + "/Tools/ShortcutKeyTool/Editor/ShortcutKeyEditor.cs"; shortcutSavePath = Application.dataPath + "/Tools/ShortcutKeyTool/Res/ShortcutKeyData.xml"; ski = new ShortcutKeyItem(); mSkiList = new List <ShortcutKeyItem> (); mSkiList = LoadShortcutKeyFromFile(shortcutSavePath); scrollPositon = new Vector2(300, 500); }
void OnGUI() { //绘制标题 GUILayout.Space(10); GUI.skin.label.fontSize = 24; GUI.skin.label.alignment = TextAnchor.MiddleCenter; GUILayout.Label("Shortcut Style"); GUI.skin.label.fontSize = 12; GUILayout.Space(10); //tips EditorGUILayout.LabelField(tipsLabelText); GUILayout.Space(10); folderOut = EditorGUILayout.Foldout(folderOut, "File"); if (folderOut) { //show scrollPositon = EditorGUILayout.BeginScrollView(scrollPositon); if (mSkiList != null && mSkiList.Count > 0) { for (int i = 0; i < mSkiList.Count; i++) { ShowItem(mSkiList[i]); } } EditorGUILayout.EndScrollView(); } //button EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("add")) { ski = new ShortcutKeyItem("Editor1/Editor2/Editor3", ""); Debug.LogFormat("add {0} {1} {2} {3} ", ski.TargetName, ski.ShortKeyName, ski.MenuItemName, ski.FuncName); if (mSkiList == null) { mSkiList = new List <ShortcutKeyItem>(); } mSkiList.Add(ski); } if (GUILayout.Button("save")) { //TODO: save to disk! //save to script SaveShortcutKey2File(shortcutSavePath, mSkiList); SaveShortcutKey2EditorCode(shortcutPath, mSkiList); Debug.Log("Save!"); } EditorGUILayout.EndHorizontal(); GUILayout.Space(10); }
void ShowItem(ShortcutKeyItem item) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("TargetName:", GUILayout.Width(85)); item.TargetName = EditorGUILayout.TextField(item.TargetName, GUILayout.Width(200)); EditorGUILayout.LabelField("ShortcutName:", GUILayout.Width(85)); item.ShortKeyName = EditorGUILayout.TextField(item.ShortKeyName, GUILayout.Width(85)); if (GUILayout.Button("delete", GUILayout.Width(70), GUILayout.Height(20))) { if (mSkiList.Contains(item)) { mSkiList.Remove(item); } } EditorGUILayout.EndHorizontal(); }