Exemplo n.º 1
0
        private VisualElement RenderPackage(string name, PackageLock.Dependency package)
        {
            Box row = new Box();

            row.style.borderTopWidth    = new StyleFloat(0f);
            row.style.borderRightWidth  = new StyleFloat(0f);
            row.style.borderBottomWidth = new StyleFloat(0f);
            row.style.borderLeftWidth   = new StyleFloat(0f);
            row.style.flexDirection     = FlexDirection.Row;
            row.style.minHeight         = new StyleLength(25f);
            TextElement packageName = new TextElement();

            packageName.text                 = name != "com.rellfy.gupu" ? name : "Git Package Updater";
            packageName.style.width          = new StyleLength(new Length(50, LengthUnit.Percent));
            packageName.style.unityTextAlign = new StyleEnum <TextAnchor>(
                TextAnchor.MiddleCenter
                );
            packageName.style.unityFontStyleAndWeight = new StyleEnum <FontStyle>(FontStyle.Bold);
            row.Add(packageName);
            VisualElement status;

            if (IsPackageUpdated(package, out string hash))
            {
                TextElement updatedText = new TextElement();
                updatedText.text = "latest";
                updatedText.style.unityTextAlign = new StyleEnum <TextAnchor>(
                    TextAnchor.MiddleCenter
                    );
                status = updatedText;
            }
            else
            {
                Button update = new Button();
                update.text = "Update";
                update.clickable.clicked += () => UpdatePackage(name, hash);
                status = update;
            }
            status.style.width = new StyleLength(new Length(50, LengthUnit.Percent));
            row.Add(status);
            return(row);
        }
Exemplo n.º 2
0
 private bool IsPackageUpdated(PackageLock.Dependency package, out string hash)
 {
     hash = Updater.GetLastCommitHash(package.version);
     return(package.hash == hash);
 }