Exemple #1
0
        private void DelayRefresh(PackageFilterTab tab)
        {
            if (m_PackageManagerPrefs.numItemsPerPage == null)
            {
                EditorApplication.delayCall += () => DelayRefresh(tab);
                return;
            }

            m_PageManager.Refresh(tab, (int)m_PackageManagerPrefs.numItemsPerPage);
        }
        private void DelayRefresh(PackageFilterTab tab)
        {
            if (m_PackageManagerPrefs.numItemsPerPage == null ||
                tab == PackageFilterTab.AssetStore && !m_UnityConnectProxy.isUserInfoReady)
            {
                EditorApplication.delayCall += () => DelayRefresh(tab);
                return;
            }

            m_PageManager.Refresh(tab, (int)m_PackageManagerPrefs.numItemsPerPage);
        }
        public void OnEnable()
        {
            UpdateStatusMessage();

            m_PageManager.onRefreshOperationStart  += UpdateStatusMessage;
            m_PageManager.onRefreshOperationFinish += OnRefreshOperationFinish;
            m_PageManager.onRefreshOperationError  += OnRefreshOperationError;

            m_PackageFiltering.onFilterTabChanged      += OnFilterTabChanged;
            m_Application.onInternetReachabilityChange += OnInternetReachabilityChange;

            var menu = new GenericMenu();

            menu.AddItem(new GUIContent(L10n.Tr("Refresh list")), false, () =>
            {
                if (!EditorApplication.isPlaying)
                {
                    refreshButton.SetEnabled(false);
                    m_PageManager.Refresh(m_PackageFiltering.currentFilterTab, m_PackageManagerPrefs.numItemsPerPage ?? PageManager.k_DefaultPageSize);
                }
            });
            menu.AddItem(new GUIContent(L10n.Tr("Manual resolve")), false, () =>
            {
                if (!EditorApplication.isPlaying)
                {
                    refreshButton.SetEnabled(false);
                    m_UpmClient.Resolve();
                    refreshButton.SetEnabled(true);
                }
            });
            refreshButton.DropdownMenu       = menu;
            refreshButton.Status             = DropdownStatus.Refresh;
            refreshButton.clickable.clicked += refreshButton.OnDropdownButtonClicked;
            refreshButton.SetEnabled(true);
        }
Exemple #4
0
        private void SetupAdvancedMenu()
        {
            advancedMenu.menu.AppendAction(L10n.Tr("Show dependencies"), a =>
            {
                ToggleDependencies();
                PackageManagerWindowAnalytics.SendEvent("toggleDependencies");
            }, a => m_PackageManagerPrefs.showPackageDependencies ? DropdownMenuAction.Status.Checked : DropdownMenuAction.Status.Normal);

            advancedMenu.menu.AppendSeparator();

            advancedMenu.menu.AppendAction(L10n.Tr("Reset Packages to defaults"), a =>
            {
                EditorApplication.ExecuteMenuItem(k_ResetPackagesMenuPath);
                m_PageManager.Refresh(RefreshOptions.UpmListOffline);
                PackageManagerWindowAnalytics.SendEvent("resetToDefaults");
            }, a => DropdownMenuAction.Status.Normal);

            PackageManagerExtensions.ExtensionCallback(() =>
            {
                foreach (var extension in PackageManagerExtensions.MenuExtensions)
                {
                    extension.OnAdvancedMenuCreate(advancedMenu.menu);
                }
            });
        }