public static CreateRootResourceFile ( ) : void | ||
Результат | void |
/// <summary> /// Call this from OnInspectorGUI in your own editor class /// </summary> /// <returns> /// The selected key. /// </returns> /// <param name='currentKey'> /// Current key. /// </param> /// <param name='sort'> /// Set this to true if you only want to show keys of a specific type /// </param> /// <param name='sortType'> /// Sort type. /// </param> public static string SelectKeyGUI(string currentKey, bool sort = false, LocalizedObjectType sortType = LocalizedObjectType.INVALID) { EditorGUILayout.BeginHorizontal(); GUILayout.Label("Smart Localization", EditorStyles.boldLabel); if (GUILayout.Button("Open", GUILayout.Width(50))) { SmartLocalizationWindow.ShowWindow(); } EditorGUILayout.EndHorizontal(); if (autoRefresh || parsedRootValues.Count == 0 || sortType != loadedObjectType) { RefreshList(sort, sortType); } EditorGUILayout.BeginHorizontal(); GUILayout.Label("Sort Mode: ", EditorStyles.miniLabel, GUILayout.Width(55)); if (sort) { GUILayout.Label(sortType.ToString() + " only.", EditorStyles.miniLabel); } else { GUILayout.Label("Showing ALL types", EditorStyles.miniLabel); } EditorGUILayout.EndHorizontal(); if (LocFileUtility.CheckIfRootLanguageFileExists() && !Application.isPlaying) { int index = parsedRootValues.IndexOf(currentKey); index = Mathf.Max(0, index); int newIndex = index; newIndex = EditorGUILayout.Popup(index, parsedRootValues.ToArray()); if (newIndex != index) { currentKey = parsedRootValues[newIndex]; } if (!autoRefresh && GUILayout.Button("Refresh list", GUILayout.Width(80))) { RefreshList(sort, sortType); } } else if (Application.isPlaying) { GUILayout.Label("Feature not available in play mode.", EditorStyles.miniLabel); } else { GUILayout.Label("There is no Smart Localization system created", EditorStyles.miniLabel); //There is no language created if (GUILayout.Button("Create New Localization System")) { LocFileUtility.CreateRootResourceFile(); } } return(currentKey); }
void OnGUI() { if (EditorWindowUtility.ShowWindow()) { GUILayout.Label("Settings", EditorStyles.boldLabel); if (!LocFileUtility.CheckIfRootLanguageFileExists()) { if (GUILayout.Button("Create New Localization System")) { LocFileUtility.CreateRootResourceFile(); } } else { undoManager.CheckUndo(); if (GUILayout.Button("Refresh")) { LocFileUtility.CheckAvailableLanguages(availableLanguages, notAvailableLanguages, notAvailableLanguagesEnglishNames); } EditorGUILayout.BeginHorizontal(); GUILayout.Label("Microsoft Translator Settings", EditorStyles.boldLabel, GUILayout.Width(200)); if (microsoftTranslator.IsInitialized) { GUILayout.Label(" - Authenticated!", EditorStyles.miniLabel); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); GUILayout.Label("Client ID:", GUILayout.Width(70)); mtCliendID = EditorGUILayout.TextField(mtCliendID); GUILayout.Label("Client Secret:", GUILayout.Width(100)); mtCliendSecret = EditorGUILayout.TextField(mtCliendSecret); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("Save", GUILayout.Width(50))) { SaveMicrosoftTranslatorSettings(); if (!microsoftTranslator.IsInitialized) { microsoftTranslator.GetAccessToken(mtCliendID, mtCliendSecret); } } if (!microsoftTranslator.IsInitialized) { if (GUILayout.Button("Authenticate!", GUILayout.Width(150))) { microsoftTranslator.GetAccessToken(mtCliendID, mtCliendSecret); } } keepTranslatorAuthenticated = EditorGUILayout.Toggle("Keep Authenticated", keepTranslatorAuthenticated); EditorGUILayout.EndHorizontal(); GUILayout.Label("Edit Root Language File", EditorStyles.boldLabel); if (GUILayout.Button("Edit")) { ShowRootEditWindow(LocFileUtility.LoadParsedLanguageFile(null)); } GUILayout.Label("Create new language", EditorStyles.boldLabel); chosenCreateNewCultureValue = EditorGUILayout.Popup(chosenCreateNewCultureValue, notAvailableLanguagesEnglishNames.ToArray()); if (GUILayout.Button("Create Language")) { CreateNewLanguage(notAvailableLanguagesEnglishNames[chosenCreateNewCultureValue]); } GUILayout.Label("Translate Languages", EditorStyles.boldLabel); //Start the scroll view scrollPosition = GUILayout.BeginScrollView(scrollPosition); bool languageDeleted = false; foreach (CultureInfo info in availableLanguages) { EditorGUILayout.BeginHorizontal(); if (GUILayout.Button(info.EnglishName + " - " + info.Name)) { //Open language edit window ShowTranslateWindow(info); } if (GUILayout.Button("Delete", GUILayout.Width(60))) { LocFileUtility.DeleteLanguage(info); languageDeleted = true; break; } EditorGUILayout.EndHorizontal(); } if (languageDeleted) //Refresh { LocFileUtility.CheckAvailableLanguages(availableLanguages, notAvailableLanguages, notAvailableLanguagesEnglishNames); } //End the scroll view GUILayout.EndScrollView(); undoManager.CheckDirty(); } } }