Beispiel #1
0
        static void DoDateFilter(
            IRefreshableView refreshableView,
            DateFilter dateFilter,
            bool isOperationRunning)
        {
            GUI.enabled = !isOperationRunning;

            EditorGUI.BeginChangeCheck();

            dateFilter.FilterType = (DateFilter.Type)
                                    EditorGUILayout.EnumPopup(
                dateFilter.FilterType,
                EditorStyles.toolbarDropDown,
                GUILayout.Width(100));

            if (EditorGUI.EndChangeCheck())
            {
                EnumPopupSetting <DateFilter.Type> .Save(
                    dateFilter.FilterType,
                    UnityConstants.CHANGESETS_DATE_FILTER_SETTING_NAME);

                refreshableView.Refresh();
            }

            GUI.enabled = true;
        }
Beispiel #2
0
        void InitIgnoreRulesAndRefreshView(
            string wkPath, IRefreshableView view)
        {
            IThreadWaiter waiter = ThreadWaiter.GetWaiter(10);

            waiter.Execute(
                /*threadOperationDelegate*/ delegate
            {
                AddIgnoreRules.WriteRules(
                    wkPath, UnityConditions.GetMissingIgnoredRules(wkPath));
            },
                /*afterOperationDelegate*/ delegate
            {
                mAreIgnoreRulesInitialized = true;

                view.Refresh();

                if (waiter.Exception == null)
                {
                    return;
                }

                mLog.ErrorFormat(
                    "Error adding ignore rules for Unity: {0}",
                    waiter.Exception);

                mLog.DebugFormat(
                    "Stack trace: {0}",
                    waiter.Exception.StackTrace);
            });
        }
        internal void RefreshSelectedView()
        {
            IRefreshableView view = GetRefreshableViewBasedOnSelectedTab(mSelectedTab);

            if (view == null)
            {
                return;
            }

            view.Refresh();
        }
        internal void RefreshView(ViewType viewType)
        {
            IRefreshableView view = GetRefreshableView(viewType);

            if (view == null)
            {
                return;
            }

            view.Refresh();
        }
Beispiel #5
0
        static void DoRefreshButton(
            IRefreshableView refreshableView,
            bool isOperationRunning)
        {
            EditorGUI.BeginDisabledGroup(isOperationRunning);

            if (GUILayout.Button(new GUIContent(
                                     Images.GetRefreshIcon()), EditorStyles.toolbarButton))
            {
                refreshableView.Refresh();
            }

            EditorGUI.EndDisabledGroup();
        }
        internal static void ChangeOptions(
            WorkspaceInfo wkInfo,
            bool isGluonMode,
            IRefreshableView view,
            IAutorefreshView autorefreshView,
            EditorWindow window)
        {
            PendingChangesOptionsDialog dialog = Build(wkInfo, isGluonMode);

            autorefreshView.DisableAutorefresh();

            bool isDialogDirty = false;

            try
            {
                if (dialog.RunModal(window) != ResponseType.Ok)
                {
                    return;
                }

                PendingChangesOptions currentOptions = dialog.GetOptions();
                isDialogDirty = dialog.IsDirty(currentOptions);

                if (!isDialogDirty)
                {
                    return;
                }

                currentOptions.SavePreferences();
            }
            finally
            {
                autorefreshView.EnableAutorefresh();

                if (isDialogDirty)
                {
                    view.Refresh();
                }
            }
        }