private void OnGUI() { //Version EditorGUILayout.LabelField(versionLabel); //Updater if (UpdateCheck.Enabled) { EditorGUILayout.LabelField(latestVersionLabel); VersionCheckLabelField(); } //Developer info if (!string.IsNullOrEmpty(developerLinkTitle) && !string.IsNullOrEmpty(developerLinkURL)) { CustomGUILayout.URLButton(developerLinkTitle, developerLinkURL, buttonStyle); } }
private void GetMessageBox(Message msg) { GUILayout.BeginHorizontal(); var helpBoxRect = EditorGUILayout.BeginHorizontal(); if (Event.current.type == EventType.MouseUp && helpBoxRect.Contains(Event.current.mousePosition) && msg.issue != null) { EditorGUIUtility.PingObject(msg.issue.target); } EditorGUILayout.HelpBox(msg.message, msg.type, true); EditorGUILayout.EndHorizontal(); if (msg.issue != null && !string.IsNullOrEmpty(msg.issue.solutionURL)) { CustomGUILayout.URLButton("Help", msg.issue.solutionURL, GUILayout.Width(50)); } else { GUILayout.Space(55); } GUILayout.EndHorizontal(); }
private void OnGUI() { EditorGUIUtility.labelWidth = 80; EditorGUILayout.LabelField("Template Loader"); popupIndex = EditorGUILayout.Popup("Template:", popupIndex, templateOptions); if (UnityEngine.GUI.changed) { templateProperty = TemplateLoader.GetTemplateProperty(templateFolders[popupIndex]); replaceStringList = CreateReplaceStringList(templateProperty.replaceList); licenceScroll = new Vector2(); messages = new List <Message>(); } if (templateProperty != null) { //Template Property EditorGUILayout.LabelField("", UnityEngine.GUI.skin.horizontalSlider); EditorGUILayout.LabelField("Description:", templateProperty.description); EditorGUILayout.LabelField("Developer:", templateProperty.developer); if (!string.IsNullOrEmpty(templateProperty.developerUrl)) { CustomGUILayout.URLButton("Open developer website", templateProperty.developerUrl); } if (templateProperty.lisenseFile) { licenceScroll = EditorGUILayout.BeginScrollView(licenceScroll); GUILayout.TextArea(templateProperty.lisenseFile.text); EditorGUILayout.EndScrollView(); } //Replace List EditorGUILayout.LabelField("", UnityEngine.GUI.skin.horizontalSlider); EditorGUI.BeginDisabledGroup(ProductSettings.HideMenuItem); { if (templateProperty.replaceList != null) { foreach (var replace in templateProperty.replaceList) { replaceStringList[replace.ID] = EditorGUILayout.TextField(replace.label, replaceStringList[replace.ID]); } } } EditorGUI.EndDisabledGroup(); EditorGUI.BeginDisabledGroup(!CheckAllReplaceFieldFilled(replaceStringList)); if (GUILayout.Button("Load")) { if (UnityEditor.EditorSettings.serializationMode == SerializationMode.ForceBinary && !EditorUtility.DisplayDialog("Template Loader", LocalizedMessage.Get("TemplateLoaderWindow.ForceBinaryDetected"), LocalizedMessage.Get("TemplateLoaderWindow.ForceBinaryDetected.Continue"), LocalizedMessage.Get("TemplateLoaderWindow.ForceBinaryDetected.Cancel"))) { return; } messages = new List <Message>(); var folderName = templateFolders[popupIndex]; var templateName = templateOptions[popupIndex]; if (TemplateLoader.Load(folderName, replaceStringList)) { messages.Add(new Message(LocalizedMessage.Get("TemplateLoaderWindow.Succeeded", templateName), MessageType.Info)); } else { messages.Add(new Message(LocalizedMessage.Get("TemplateLoaderWindow.Failed", templateName), MessageType.Error)); } } EditorGUI.EndDisabledGroup(); } foreach (var msg in messages) { EditorGUILayout.HelpBox(msg.message, msg.type, true); } }