コード例 #1
0
 void DrawGUI()
 {
     using (new GUILayout.VerticalScope(EditorStyles.helpBox)) {
         EditorGUI.BeginChangeCheck();
         gitURL.branchName    = EditorGUILayout.TextField("revision", gitURL.branchName);
         gitURL.enablePackage = EditorGUILayout.Toggle("package.json", gitURL.enablePackage);
         gitURL.packageName   = EditorGUILayout.TextField("packageName", gitURL.packageName);
         //using( new EditorGUI.DisabledGroupScope( true ) ) {
         //	gitURL.version = EditorGUILayout.TextField( "version", gitURL.version );
         //}
         if (EditorGUI.EndChangeCheck())
         {
             E.Save();
         }
     }
     using (new GUILayout.HorizontalScope()) {
         if (!string.IsNullOrEmpty(networkErr))
         {
             GUILayout.Label(networkErr);
         }
         GUILayout.FlexibleSpace();
         //if( gitURL.packageName == string.Empty || gitURL.enablePackage ==false) {
         if (GUILayout.Button("Get from GitHub", GUILayout.ExpandWidth(false)))
         {
             var wc = new WebClient();
             wc.DownloadStringCompleted += (sender, e) => {
                 //networking = false;
                 if (e.Error == null)
                 {
                     var obj = ManifestJson.Deserialize(e.Result);
                     Dictionary <string, object> dictionary = obj as Dictionary <string, object>;
                     gitURL.packageName = dictionary["name"] as string;
                     //gitURL.version = dictionary[ "version" ] as string;
                     gitURL.enablePackage = true;
                     E.Save();
                     Repaint();
                 }
                 else
                 {
                     networkErr           = "package.json: (404) Not Found.";
                     gitURL.packageName   = "";
                     gitURL.enablePackage = false;
                     Repaint();
                 }
             };
             var uu = gitURL.url.Split('/');
             Debug.Log(uu[3]);
             Debug.Log(uu[4]);
             var branch = gitURL.branchName;
             if (string.IsNullOrEmpty(branch))
             {
                 branch = "HEAD";
             }
             wc.DownloadStringAsync(new Uri($"https://raw.githubusercontent.com/{uu[ 3 ]}/{GetFileNameWithoutExtension( uu[ 4 ] )}/{branch}/package.json"));
             networkErr = "";
         }
         //}
     }
 }
コード例 #2
0
        /// <summary>
        ///
        /// </summary>
        static void DrawGUI()
        {
            E.Load();
            if (s_styles == null)
            {
                s_styles = new Styles();
            }

            if (E.i.gitUrls == null)
            {
                E.i.gitUrls = new List <E.GitURL>();
                s_changed   = true;
            }
            //if( s_rl == null ) {
            //	s_rl = MakeRL();
            //}

            EditorGUI.BeginChangeCheck();

            GUILayout.Label("Enter URL");
            using (new GUILayout.HorizontalScope()) {
                EditorGUI.BeginChangeCheck();
                var _t = EditorGUILayout.TextField(E.i.adb_exe);
                if (EditorGUI.EndChangeCheck())
                {
                    E.i.adb_exe = _t;
                }
                var r = GUILayoutUtility.GetRect(new GUIContent(s_styles.ol_plus), GUIHelper.Styles.iconButton);
                r.y += 3;
                if (GUIHelper.IconButton(r, s_styles.ol_plus))
                {
                    var a = CheckURL(E.i.adb_exe);
                    if (!string.IsNullOrEmpty(a))
                    {
                        E.AddURLs(a);
                        GitHubDownloadWindow.Repaint();
                    }
                }
                r    = GUILayoutUtility.GetRect(new GUIContent(s_styles.Favorite), GUIHelper.Styles.iconButton);
                r.y += 3;
                if (GUIHelper.IconButton(r, s_styles.Favorite))
                {
                    OpenFilePanel();
                }
            }

            GUILayout.Space(8);

            int delIndex = -1;

            var    ss   = E.i.gitUrls.Select(x => Helper.ParseURL(x.url)).ToArray();
            string name = string.Empty;

            for (var i = 0; i < ss.Length; i++)
            {
                var s = ss[i];

                if (name != s[0])
                {
                    if (name != string.Empty)
                    {
                        GUILayout.EndVertical();
                    }
                    GUILayout.BeginVertical( );
                    name = s[0];
                    GUILayout.Label(s[0], EditorStyles.boldLabel);
                }

                using (new GUILayout.HorizontalScope(EditorStyles.helpBox)) {
                    GUILayout.Label(s[1]);
                    if (GUIHelper.IconButton(s_styles.IconInfo))
                    {
                        GitHubView.Open($"{Path.GetDirectoryName( E.i.gitUrls[ i ].url )}/{Path.GetFileNameWithoutExtension( E.i.gitUrls[ i ].url )}");
                    }
                    if (GUIHelper.IconButton(s_styles.IconSetting))
                    {
                        GitURLConfig.Open(E.i.gitUrls[i]);
                    }
                    if (GUIHelper.IconButton(s_styles.ol_minus))
                    {
                        delIndex = i;
                    }
                }
            }
            GUILayout.EndVertical();

            if (0 <= delIndex)
            {
                E.i.gitUrls.RemoveAt(delIndex);
                s_changed = true;
            }


            if (EditorGUI.EndChangeCheck() || s_changed)
            {
                E.Save();
            }

            GUILayout.Space(8f);
        }