Example #1
0
            private static string MakeRowCaption(KitRowData rowData)
            {
                if (KitStatus.Available != rowData.Status && !rowData.IsUpToDate)
                {
                    string updateText = String.Format("Update available: v{0}", rowData.LatestVersion);
                    return(Separate(rowData.Name, Stylize(updateText, "orange")));
                }

                string stateString = String.Empty;

                switch (rowData.Status)
                {
                case KitStatus.Installed:
                    stateString = String.Format("v{0} Installed", rowData.CurrentVersion);
                    break;

                case KitStatus.Configured:
                    stateString = String.Format("v{0} Configured - waiting for app launch", rowData.CurrentVersion);
                    break;

                case KitStatus.Imported:
                    stateString = String.Format("Click to configure v{0}", rowData.CurrentVersion);
                    break;

                case KitStatus.Available:
                    stateString = String.Format("Click to install v{0}", rowData.LatestVersion);
                    break;
                }

                return(Separate(rowData.Name, Stylize(stateString)));
            }
Example #2
0
        public override void RenderImpl(Rect position)
        {
            if (isUpdateAvailable())
            {
                RenderBanner("Fabric plugin update available", viewUpdateClickHandler);
            }

            RenderHeader("Please select a kit to install");

            importedKits = importedKits == null?listImportedKits() : importedKits;

            availableKits = listAvailableKits();

            if (availableKits == null)
            {
                return;
            }

            List <KitRowData> kitRowDataList = new List <KitRowData> ();

            bool hasConfiguredKits = false;
            bool hasInstalledKits  = false;

            foreach (var availableKit in availableKits)
            {
                ImportedKit importedKit = (importedKits == null) ? null : importedKits.Find((ImportedKit k) => {
                    return(k.Name.Equals(availableKit.Name, StringComparison.OrdinalIgnoreCase));
                });

                KitRowData kitRowData = new KitRowData(availableKit, importedKit);

                hasConfiguredKits |= kitRowData.Status == KitStatus.Configured;
                hasInstalledKits  |= kitRowData.Status == KitStatus.Installed;

                kitRowDataList.Add(kitRowData);
            }

            if (hasConfiguredKits)
            {
                checkKitActivation();
            }

            bool shouldDisableBack = EditorApplication.isCompiling || hasConfiguredKits || hasInstalledKits;

            if (shouldDisableBack)
            {
                RenderFooter(null, null);
            }
            else
            {
                RenderFooter(back, null);
            }

            Components.RenderKitList(
                kitRowDataList,
                onKitSelected,
                clearKitLists,
                EditorApplication.isCompiling
                );
        }
Example #3
0
        public override void RenderImpl(Rect position)
        {
            if (isUpdateAvailable ()) {
                RenderBanner ("Fabric plugin update available", viewUpdateClickHandler);
            }

            RenderHeader ("Please select a kit to install");

            importedKits = importedKits == null ? listImportedKits () : importedKits;
            availableKits = listAvailableKits ();

            if (availableKits == null) {
                return;
            }

            List<KitRowData> kitRowDataList = new List<KitRowData> ();

            bool hasConfiguredKits = false;
            bool hasInstalledKits = false;

            foreach (var availableKit in availableKits) {
                ImportedKit importedKit = (importedKits == null) ? null : importedKits.Find ((ImportedKit k) => {
                    return k.Name.Equals (availableKit.Name, StringComparison.OrdinalIgnoreCase);
                });

                KitRowData kitRowData = new KitRowData (availableKit, importedKit);

                hasConfiguredKits |= kitRowData.Status == KitStatus.Configured;
                hasInstalledKits |= kitRowData.Status == KitStatus.Installed;

                kitRowDataList.Add (kitRowData);
            }

            if (hasConfiguredKits) {
                checkKitActivation ();
            }

            bool shouldDisableBack = EditorApplication.isCompiling || hasConfiguredKits || hasInstalledKits;
            if (shouldDisableBack) {
                RenderFooter (null, null);
            } else {
                RenderFooter (back, null);
            }

            Components.RenderKitList (
                kitRowDataList,
                onKitSelected,
                clearKitLists,
                EditorApplication.isCompiling
            );
        }
Example #4
0
            private static string MakeRowCaption(KitRowData rowData)
            {
                if (KitStatus.Available != rowData.Status && !rowData.IsUpToDate) {
                    string updateText = String.Format ("Update available: v{0}", rowData.LatestVersion);
                    return Separate (rowData.Name, Stylize (updateText, "orange"));
                }

                string stateString = String.Empty;
                switch (rowData.Status) {
                case KitStatus.Installed:
                    stateString = String.Format ("v{0} Installed", rowData.CurrentVersion);
                    break;
                case KitStatus.Configured:
                    stateString = String.Format ("v{0} Configured - waiting for app launch", rowData.CurrentVersion);
                    break;
                case KitStatus.Imported:
                    stateString = String.Format ("Click to configure v{0}", rowData.CurrentVersion);
                    break;
                case KitStatus.Available:
                    stateString = String.Format ("Click to install v{0}", rowData.LatestVersion);
                    break;
                }

                return Separate (rowData.Name, Stylize (stateString));
            }