コード例 #1
0
ファイル: DiffPanel.cs プロジェクト: shuwithu/Faces
        void DoSkipMergeTrackingButton(
            List <ClientDiff> diffs,
            bool isSkipMergeTrackingButtonChecked,
            DiffTreeView diffTreeView)
        {
            bool wasChecked = isSkipMergeTrackingButtonChecked;

            GUIContent buttonContent = new GUIContent(
                PlasticLocalization.GetString(
                    PlasticLocalization.Name.SkipDiffMergeTracking));

            GUIStyle buttonStyle = EditorStyles.toolbarButton;

            float buttonWidth = buttonStyle.CalcSize(buttonContent).x + 10;

            Rect toggleRect = GUILayoutUtility.GetRect(
                buttonContent, buttonStyle, GUILayout.Width(buttonWidth));

            bool isChecked = GUI.Toggle(
                toggleRect, wasChecked, buttonContent, buttonStyle);

            if (wasChecked == isChecked)
            {
                return;
            }

            UpdateDiffTreeView(diffs, isChecked, diffTreeView);

            mIsSkipMergeTrackingButtonChecked = isChecked;
        }
コード例 #2
0
ファイル: DiffPanel.cs プロジェクト: shuwithu/Faces
        static void ClearDiffTreeView(
            DiffTreeView diffTreeView)
        {
            diffTreeView.ClearModel();

            diffTreeView.Reload();
        }
コード例 #3
0
ファイル: DiffPanel.cs プロジェクト: shuwithu/Faces
        void BuildComponents()
        {
            mSearchField = new SearchField();
            mSearchField.downOrUpArrowKeyPressed += SearchField_OnDownOrUpArrowKeyPressed;

            mDiffTreeView = new DiffTreeView(
                new DiffTreeViewMenu(this, this));
            mDiffTreeView.Reload();
        }
コード例 #4
0
ファイル: DiffSelection.cs プロジェクト: shuwithu/Faces
        internal static ClientDiffInfo GetSelectedDiff(
            DiffTreeView treeView)
        {
            if (!treeView.HasSelection())
            {
                return(null);
            }

            return(treeView.GetSelectedDiffs(false)[0]);
        }
コード例 #5
0
ファイル: DiffPanel.cs プロジェクト: shuwithu/Faces
        static void DoDiffTreeViewArea(
            DiffTreeView diffTreeView,
            bool isOperationRunning)
        {
            GUI.enabled = !isOperationRunning;

            Rect rect = GUILayoutUtility.GetRect(0, 100000, 0, 100000);

            diffTreeView.OnGUI(rect);

            GUI.enabled = true;
        }
コード例 #6
0
ファイル: DiffPanel.cs プロジェクト: shuwithu/Faces
        static void UpdateDiffTreeView(
            List <ClientDiff> diffs,
            bool skipMergeTracking,
            DiffTreeView diffTreeView)
        {
            diffTreeView.BuildModel(
                diffs, skipMergeTracking);

            diffTreeView.Refilter();

            diffTreeView.Sort();

            diffTreeView.Reload();
        }
コード例 #7
0
ファイル: DiffPanel.cs プロジェクト: shuwithu/Faces
        void DoActionsToolbar(
            List <ClientDiff> diffs,
            ProgressControlsForViews progressControls,
            string headerLabelText,
            bool isSkipMergeTrackingButtonVisible,
            bool isSkipMergeTrackingButtonChecked,
            SearchField searchField,
            DiffTreeView diffTreeView)
        {
            EditorGUILayout.BeginHorizontal(EditorStyles.toolbar);

            GUILayout.Label(headerLabelText,
                            UnityStyles.DiffPanel.HeaderLabel);

            if (progressControls.IsOperationRunning())
            {
                DrawProgressForViews.ForIndeterminateProgress(
                    progressControls.ProgressData);
            }

            GUILayout.FlexibleSpace();

            if (isSkipMergeTrackingButtonVisible)
            {
                DoSkipMergeTrackingButton(
                    diffs,
                    isSkipMergeTrackingButtonChecked,
                    diffTreeView);
            }

            DrawSearchField.For(
                searchField,
                diffTreeView,
                UnityConstants.SEARCH_FIELD_WIDTH);

            EditorGUILayout.EndHorizontal();
        }
コード例 #8
0
ファイル: DiffSelection.cs プロジェクト: shuwithu/Faces
 internal static List <ClientDiffInfo> GetSelectedDiffs(
     DiffTreeView treeView)
 {
     return(treeView.GetSelectedDiffs(true));
 }
コード例 #9
0
ファイル: DiffSelection.cs プロジェクト: shuwithu/Faces
 internal static List <ClientDiffInfo> GetSelectedDiffsWithoutMeta(
     DiffTreeView treeView)
 {
     return(treeView.GetSelectedDiffs(false));
 }