/// <summary> /// Update AccessToken and check Sheets. /// </summary> public void Refresh() { if (data == null) { return; } if (string.IsNullOrEmpty(OAuthClientId) || string.IsNullOrEmpty(OAuthClientSecret) || string.IsNullOrEmpty(RefreshToken) || string.IsNullOrEmpty(Id)) { return; } EditorUtility.DisplayProgressBar("Refreshing SpreadSheet...", "", 0); try{ var webRequest = data.GetWebRequest(); Sheets = EditorAPIUtility.GetSheetName(webRequest); AccessToken = webRequest.GetAccessToken(); }catch (System.Exception ex) { Debug.LogError("GoogleSpreadSheetConfig Error: " + ex); } EditorUtility.ClearProgressBar(); }
private void Header() { EditorGUILayout.BeginHorizontal(); { Undo.IncrementCurrentGroup(); UndoHelper.SpreadSheetUndo(data, UndoHelper.UNDO_SS_EDIT); GUILayout.Label("Name", GUILayout.Width(100)); Name = EditorGUILayout.TextField(Name); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); { Undo.IncrementCurrentGroup(); UndoHelper.SpreadSheetUndo(data, UndoHelper.UNDO_SS_EDIT); GUILayout.Label("SpreadSheet Id", GUILayout.Width(100)); Id = EditorGUILayout.TextField(Id); } EditorGUILayout.EndHorizontal(); GUILayout.Space(5); EditorGUILayout.BeginHorizontal(); { var usetoken = GUILayout.Toggle(UseDefaultAccessToken, "Use Default OAuth Config"); if (usetoken != UseDefaultAccessToken) { Undo.IncrementCurrentGroup(); UndoHelper.SpreadSheetUndo(data, UndoHelper.UNDO_SS_EDIT); if (usetoken) { OAuthClientId = GoogleAPIOAuthEditorConfig.Instance.OAuthClientId; OAuthClientSecret = GoogleAPIOAuthEditorConfig.Instance.OAuthClientSecret; RefreshToken = GoogleAPIOAuthEditorConfig.Instance.RefreshToken; } UseDefaultAccessToken = usetoken; } } EditorGUILayout.EndHorizontal(); var defaultWidth = EditorGUIUtility.labelWidth; EditorGUIUtility.labelWidth = 100; if (!UseDefaultAccessToken) { OAuthClientId = EditorGUILayout.TextField("ClientID", OAuthClientId, GUIHelper.Styles.TextFieldWordWrap); OAuthClientSecret = EditorGUILayout.TextField("ClientSecret", OAuthClientSecret, GUIHelper.Styles.TextFieldWordWrap); RefreshToken = EditorGUILayout.TextField("RefreshToken", RefreshToken, GUIHelper.Styles.TextFieldWordWrap); EditorGUILayout.BeginHorizontal(); { GUILayout.FlexibleSpace(); if (GUILayout.Button("Check Config", new GUILayoutOption[] { GUILayout.Width(120), GUILayout.Height(20) })) { try { EditorUtility.DisplayProgressBar("Spread Sheet Converter", "Checking Config...", 0f); var webRequest = data.GetWebRequest(); Sheets = EditorAPIUtility.GetSheetName(webRequest); EditorUtility.DisplayDialog("Spread Sheet Converter", "The setting is correct.", "ok"); AccessToken = webRequest.GetAccessToken(); } catch (Exception ex) { Debug.LogError("SpreadSheetConfig Error: " + ex); } EditorUtility.ClearProgressBar(); } } EditorGUILayout.EndHorizontal(); } EditorGUIUtility.labelWidth = defaultWidth; }