Exemplo n.º 1
0
        public void DoDeletedItemsGUI(ASHistoryWindow parentWin, Rect theRect, GUIStyle s, float offset, float endOffset, bool focused)
        {
            Event     current  = Event.current;
            Texture2D textured = EditorGUIUtility.FindTexture(EditorResourcesUtility.folderIconName);

            offset += 3f;
            Rect position = new Rect(this.m_Indent, offset, theRect.width - this.m_Indent, m_RowHeight);

            if ((current.type == EventType.MouseDown) && position.Contains(current.mousePosition))
            {
                GUIUtility.keyboardControl = this.m_FileViewControlID;
                this.SelType = SelectionType.DeletedItemsRoot;
                this.ScrollToDeletedItem(-1);
                parentWin.DoLocalSelectionChange();
            }
            position.width -= position.x;
            position.x      = 0f;
            GUIContent content = new GUIContent("Deleted Assets")
            {
                image = textured
            };
            int baseIndent = (int)this.m_BaseIndent;

            s.padding.left = baseIndent;
            if (current.type == EventType.Repaint)
            {
                s.Draw(position, content, false, false, this.SelType == SelectionType.DeletedItemsRoot, focused);
            }
            Rect rect2 = new Rect(this.m_BaseIndent - this.m_FoldoutSize, offset, this.m_FoldoutSize, m_RowHeight);

            if (!this.m_DeletedItemsInitialized || (this.m_DelPVstate.lv.totalRows != 0))
            {
                this.DeletedItemsToggle = GUI.Toggle(rect2, this.DeletedItemsToggle, GUIContent.none, ms_Styles.foldout);
            }
            offset += m_RowHeight;
            if (this.DeletedItemsToggle)
            {
                int row   = this.m_DelPVstate.lv.row;
                int index = 0;
                int num4  = -1;
                int file  = -1;
                int num6  = 0;
                while ((offset <= endOffset) && (num6 < this.m_DelPVstate.lv.totalRows))
                {
                    if ((offset + m_RowHeight) >= 0f)
                    {
                        if (num4 == -1)
                        {
                            this.m_DelPVstate.IndexToFolderAndFile(num6, ref num4, ref file);
                        }
                        position = new Rect(0f, offset, (float)Screen.width, m_RowHeight);
                        ParentViewFolder folder = this.m_DelPVstate.folders[num4];
                        if ((current.type == EventType.MouseDown) && position.Contains(current.mousePosition))
                        {
                            if (!(((current.button == 1) && (this.SelType == SelectionType.DeletedItems)) && this.m_DelPVstate.selectedItems[index]))
                            {
                                GUIUtility.keyboardControl = this.m_FileViewControlID;
                                this.SelType             = SelectionType.DeletedItems;
                                this.m_DelPVstate.lv.row = index;
                                ListViewShared.MultiSelection(null, row, this.m_DelPVstate.lv.row, ref this.m_DelPVstate.initialSelectedItem, ref this.m_DelPVstate.selectedItems);
                                this.ScrollToDeletedItem(index);
                                parentWin.DoLocalSelectionChange();
                            }
                            if ((current.button == 1) && (this.SelType == SelectionType.DeletedItems))
                            {
                                GUIUtility.hotControl = 0;
                                Rect rect3 = new Rect(current.mousePosition.x, current.mousePosition.y, 1f, 1f);
                                EditorUtility.DisplayCustomMenu(rect3, this.dropDownMenuItems, -1, new EditorUtility.SelectMenuItemFunction(this.ContextMenuClick), null);
                            }
                            Event.current.Use();
                        }
                        if (file != -1)
                        {
                            content.text  = folder.files[file].name;
                            content.image = InternalEditorUtility.GetIconForFile(folder.files[file].name);
                            baseIndent    = (int)(this.m_BaseIndent + (this.m_Indent * 2f));
                        }
                        else
                        {
                            content.text  = folder.name;
                            content.image = textured;
                            baseIndent    = (int)(this.m_BaseIndent + this.m_Indent);
                        }
                        s.padding.left = baseIndent;
                        if (Event.current.type == EventType.Repaint)
                        {
                            s.Draw(position, content, false, false, this.m_DelPVstate.selectedItems[index], focused);
                        }
                        this.m_DelPVstate.NextFileFolder(ref num4, ref file);
                        index++;
                    }
                    num6++;
                    offset += m_RowHeight;
                }
            }
        }
 static public bool MultiSelection(int prevSelected, int currSelected, ref int initialSelected, ref bool[] selectedItems)
 {
     return(ListViewShared.MultiSelection(lvState.ilvState, prevSelected, currSelected, ref initialSelected, ref selectedItems));
 }
Exemplo n.º 3
0
 public static bool MultiSelection(int prevSelected, int currSelected, ref int initialSelected, ref bool[] selectedItems)
 {
     return(ListViewShared.MultiSelection((ListViewShared.InternalListViewState)ListViewGUILayout.lvState.ilvState, prevSelected, currSelected, ref initialSelected, ref selectedItems));
 }
Exemplo n.º 4
0
        private void DeletedItemsKeyboard(ASHistoryWindow parentWin)
        {
            int row          = this.m_DelPVstate.lv.row;
            int currSelected = row;

            if (this.DeletedItemsToggle)
            {
                switch (Event.current.keyCode)
                {
                case KeyCode.UpArrow:
                    if (currSelected <= 0)
                    {
                        this.SelType = SelectionType.DeletedItemsRoot;
                        this.ScrollToDeletedItem(-1);
                        parentWin.DoLocalSelectionChange();
                    }
                    else
                    {
                        currSelected--;
                    }
                    goto Label_01AE;

                case KeyCode.DownArrow:
                    if (currSelected < (this.m_DelPVstate.lv.totalRows - 1))
                    {
                        currSelected++;
                    }
                    goto Label_01AE;

                case KeyCode.Home:
                    currSelected = 0;
                    goto Label_01AE;

                case KeyCode.End:
                    currSelected = this.m_DelPVstate.lv.totalRows - 1;
                    goto Label_01AE;

                case KeyCode.PageUp:
                    if (!OSX)
                    {
                        currSelected -= (int)(this.m_ScreenRect.height / m_RowHeight);
                        if (currSelected < 0)
                        {
                            currSelected = 0;
                        }
                    }
                    else
                    {
                        this.m_ScrollPosition.y -= this.m_ScreenRect.height;
                        if (this.m_ScrollPosition.y < 0f)
                        {
                            this.m_ScrollPosition.y = 0f;
                        }
                    }
                    goto Label_01AE;

                case KeyCode.PageDown:
                    if (!OSX)
                    {
                        currSelected += (int)(this.m_ScreenRect.height / m_RowHeight);
                        if (currSelected > (this.m_DelPVstate.lv.totalRows - 1))
                        {
                            currSelected = this.m_DelPVstate.lv.totalRows - 1;
                        }
                    }
                    else
                    {
                        this.m_ScrollPosition.y += this.m_ScreenRect.height;
                    }
                    goto Label_01AE;
                }
            }
            return;

Label_01AE:
            Event.current.Use();
            if (currSelected != row)
            {
                this.m_DelPVstate.lv.row = currSelected;
                ListViewShared.MultiSelection(null, row, currSelected, ref this.m_DelPVstate.initialSelectedItem, ref this.m_DelPVstate.selectedItems);
                this.ScrollToDeletedItem(currSelected);
                parentWin.DoLocalSelectionChange();
            }
        }
Exemplo n.º 5
0
        public void DoDeletedItemsGUI(ASHistoryWindow parentWin, Rect theRect, GUIStyle s, float offset, float endOffset, bool focused)
        {
            Event     current = Event.current;
            Texture2D texture = EditorGUIUtility.FindTexture(EditorResourcesUtility.folderIconName);

            offset += 3f;
            Rect position1 = new Rect(this.m_Indent, offset, theRect.width - this.m_Indent, ASHistoryFileView.m_RowHeight);

            if (current.type == EventType.MouseDown && position1.Contains(current.mousePosition))
            {
                GUIUtility.keyboardControl = this.m_FileViewControlID;
                this.SelType = ASHistoryFileView.SelectionType.DeletedItemsRoot;
                this.ScrollToDeletedItem(-1);
                parentWin.DoLocalSelectionChange();
            }
            position1.width -= position1.x;
            position1.x      = 0.0f;
            GUIContent content = new GUIContent("Deleted Assets");

            content.image = (Texture)texture;
            int baseIndent = (int)this.m_BaseIndent;

            s.padding.left = baseIndent;
            if (current.type == EventType.Repaint)
            {
                s.Draw(position1, content, false, false, this.SelType == ASHistoryFileView.SelectionType.DeletedItemsRoot, focused);
            }
            Rect position2 = new Rect(this.m_BaseIndent - this.m_FoldoutSize, offset, this.m_FoldoutSize, ASHistoryFileView.m_RowHeight);

            if (!this.m_DeletedItemsInitialized || this.m_DelPVstate.lv.totalRows != 0)
            {
                this.DeletedItemsToggle = GUI.Toggle(position2, this.DeletedItemsToggle, GUIContent.none, ASHistoryFileView.ms_Styles.foldout);
            }
            offset += ASHistoryFileView.m_RowHeight;
            if (!this.DeletedItemsToggle)
            {
                return;
            }
            int row     = this.m_DelPVstate.lv.row;
            int index1  = 0;
            int folder1 = -1;
            int file    = -1;
            int index2  = 0;

            while ((double)offset <= (double)endOffset && index2 < this.m_DelPVstate.lv.totalRows)
            {
                if ((double)offset + (double)ASHistoryFileView.m_RowHeight >= 0.0)
                {
                    if (folder1 == -1)
                    {
                        this.m_DelPVstate.IndexToFolderAndFile(index2, ref folder1, ref file);
                    }
                    position1 = new Rect(0.0f, offset, (float)Screen.width, ASHistoryFileView.m_RowHeight);
                    ParentViewFolder folder2 = this.m_DelPVstate.folders[folder1];
                    if (current.type == EventType.MouseDown && position1.Contains(current.mousePosition))
                    {
                        if (current.button != 1 || this.SelType != ASHistoryFileView.SelectionType.DeletedItems || !this.m_DelPVstate.selectedItems[index1])
                        {
                            GUIUtility.keyboardControl = this.m_FileViewControlID;
                            this.SelType             = ASHistoryFileView.SelectionType.DeletedItems;
                            this.m_DelPVstate.lv.row = index1;
                            ListViewShared.MultiSelection((ListViewShared.InternalListViewState)null, row, this.m_DelPVstate.lv.row, ref this.m_DelPVstate.initialSelectedItem, ref this.m_DelPVstate.selectedItems);
                            this.ScrollToDeletedItem(index1);
                            parentWin.DoLocalSelectionChange();
                        }
                        if (current.button == 1 && this.SelType == ASHistoryFileView.SelectionType.DeletedItems)
                        {
                            GUIUtility.hotControl = 0;
                            EditorUtility.DisplayCustomMenu(new Rect(current.mousePosition.x, current.mousePosition.y, 1f, 1f), this.dropDownMenuItems, -1, new EditorUtility.SelectMenuItemFunction(this.ContextMenuClick), (object)null);
                        }
                        Event.current.Use();
                    }
                    int num;
                    if (file != -1)
                    {
                        content.text  = folder2.files[file].name;
                        content.image = (Texture)InternalEditorUtility.GetIconForFile(folder2.files[file].name);
                        num           = (int)((double)this.m_BaseIndent + (double)this.m_Indent * 2.0);
                    }
                    else
                    {
                        content.text  = folder2.name;
                        content.image = (Texture)texture;
                        num           = (int)((double)this.m_BaseIndent + (double)this.m_Indent);
                    }
                    s.padding.left = num;
                    if (Event.current.type == EventType.Repaint)
                    {
                        s.Draw(position1, content, false, false, this.m_DelPVstate.selectedItems[index1], focused);
                    }
                    this.m_DelPVstate.NextFileFolder(ref folder1, ref file);
                    ++index1;
                }
                ++index2;
                offset += ASHistoryFileView.m_RowHeight;
            }
        }
Exemplo n.º 6
0
        private void DeletedItemsKeyboard(ASHistoryWindow parentWin)
        {
            int row = this.m_DelPVstate.lv.row;
            int num = row;

            if (!this.DeletedItemsToggle)
            {
                return;
            }
            switch (Event.current.keyCode)
            {
            case KeyCode.UpArrow:
                if (num > 0)
                {
                    --num;
                    break;
                }
                this.SelType = ASHistoryFileView.SelectionType.DeletedItemsRoot;
                this.ScrollToDeletedItem(-1);
                parentWin.DoLocalSelectionChange();
                break;

            case KeyCode.DownArrow:
                if (num < this.m_DelPVstate.lv.totalRows - 1)
                {
                    ++num;
                    break;
                }
                break;

            case KeyCode.RightArrow:
                return;

            case KeyCode.LeftArrow:
                return;

            case KeyCode.Insert:
                return;

            case KeyCode.Home:
                num = 0;
                break;

            case KeyCode.End:
                num = this.m_DelPVstate.lv.totalRows - 1;
                break;

            case KeyCode.PageUp:
                if (ASHistoryFileView.OSX)
                {
                    this.m_ScrollPosition.y -= this.m_ScreenRect.height;
                    if ((double)this.m_ScrollPosition.y < 0.0)
                    {
                        this.m_ScrollPosition.y = 0.0f;
                        break;
                    }
                    break;
                }
                num -= (int)((double)this.m_ScreenRect.height / (double)ASHistoryFileView.m_RowHeight);
                if (num < 0)
                {
                    num = 0;
                    break;
                }
                break;

            case KeyCode.PageDown:
                if (ASHistoryFileView.OSX)
                {
                    this.m_ScrollPosition.y += this.m_ScreenRect.height;
                    break;
                }
                num += (int)((double)this.m_ScreenRect.height / (double)ASHistoryFileView.m_RowHeight);
                if (num > this.m_DelPVstate.lv.totalRows - 1)
                {
                    num = this.m_DelPVstate.lv.totalRows - 1;
                    break;
                }
                break;

            default:
                return;
            }
            Event.current.Use();
            if (num == row)
            {
                return;
            }
            this.m_DelPVstate.lv.row = num;
            ListViewShared.MultiSelection((ListViewShared.InternalListViewState)null, row, num, ref this.m_DelPVstate.initialSelectedItem, ref this.m_DelPVstate.selectedItems);
            this.ScrollToDeletedItem(num);
            parentWin.DoLocalSelectionChange();
        }
Exemplo n.º 7
0
 public static bool MultiSelection(int prevSelected, int currSelected, ref int initialSelected, ref bool[] selectedItems) =>
 ListViewShared.MultiSelection(ilvState, prevSelected, currSelected, ref initialSelected, ref selectedItems);
Exemplo n.º 8
0
        public void DoDeletedItemsGUI(ASHistoryWindow parentWin, Rect theRect, GUIStyle s, float offset, float endOffset, bool focused)
        {
            Event     current = Event.current;
            Texture2D image   = EditorGUIUtility.FindTexture(EditorResourcesUtility.folderIconName);

            offset += 3f;
            Rect position = new Rect(this.m_Indent, offset, theRect.width - this.m_Indent, ASHistoryFileView.m_RowHeight);

            if (current.type == EventType.MouseDown && position.Contains(current.mousePosition))
            {
                GUIUtility.keyboardControl = this.m_FileViewControlID;
                this.SelType = ASHistoryFileView.SelectionType.DeletedItemsRoot;
                this.ScrollToDeletedItem(-1);
                parentWin.DoLocalSelectionChange();
            }
            position.width -= position.x;
            position.x      = 0f;
            GUIContent gUIContent = new GUIContent("Deleted Assets");

            gUIContent.image = image;
            int left = (int)this.m_BaseIndent;

            s.padding.left = left;
            if (current.type == EventType.Repaint)
            {
                s.Draw(position, gUIContent, false, false, this.SelType == ASHistoryFileView.SelectionType.DeletedItemsRoot, focused);
            }
            Rect position2 = new Rect(this.m_BaseIndent - this.m_FoldoutSize, offset, this.m_FoldoutSize, ASHistoryFileView.m_RowHeight);

            if (!this.m_DeletedItemsInitialized || this.m_DelPVstate.lv.totalRows != 0)
            {
                this.DeletedItemsToggle = GUI.Toggle(position2, this.DeletedItemsToggle, GUIContent.none, ASHistoryFileView.ms_Styles.foldout);
            }
            offset += ASHistoryFileView.m_RowHeight;
            if (this.DeletedItemsToggle)
            {
                int row  = this.m_DelPVstate.lv.row;
                int num  = 0;
                int num2 = -1;
                int num3 = -1;
                int num4 = 0;
                while (offset <= endOffset && num4 < this.m_DelPVstate.lv.totalRows)
                {
                    if (offset + ASHistoryFileView.m_RowHeight >= 0f)
                    {
                        if (num2 == -1)
                        {
                            this.m_DelPVstate.IndexToFolderAndFile(num4, ref num2, ref num3);
                        }
                        position = new Rect(0f, offset, (float)Screen.width, ASHistoryFileView.m_RowHeight);
                        ParentViewFolder parentViewFolder = this.m_DelPVstate.folders[num2];
                        if (current.type == EventType.MouseDown && position.Contains(current.mousePosition))
                        {
                            if (current.button != 1 || this.SelType != ASHistoryFileView.SelectionType.DeletedItems || !this.m_DelPVstate.selectedItems[num])
                            {
                                GUIUtility.keyboardControl = this.m_FileViewControlID;
                                this.SelType             = ASHistoryFileView.SelectionType.DeletedItems;
                                this.m_DelPVstate.lv.row = num;
                                ListViewShared.MultiSelection(null, row, this.m_DelPVstate.lv.row, ref this.m_DelPVstate.initialSelectedItem, ref this.m_DelPVstate.selectedItems);
                                this.ScrollToDeletedItem(num);
                                parentWin.DoLocalSelectionChange();
                            }
                            if (current.button == 1 && this.SelType == ASHistoryFileView.SelectionType.DeletedItems)
                            {
                                GUIUtility.hotControl = 0;
                                Rect position3 = new Rect(current.mousePosition.x, current.mousePosition.y, 1f, 1f);
                                EditorUtility.DisplayCustomMenu(position3, this.dropDownMenuItems, -1, new EditorUtility.SelectMenuItemFunction(this.ContextMenuClick), null);
                            }
                            Event.current.Use();
                        }
                        if (num3 != -1)
                        {
                            gUIContent.text  = parentViewFolder.files[num3].name;
                            gUIContent.image = InternalEditorUtility.GetIconForFile(parentViewFolder.files[num3].name);
                            left             = (int)(this.m_BaseIndent + this.m_Indent * 2f);
                        }
                        else
                        {
                            gUIContent.text  = parentViewFolder.name;
                            gUIContent.image = image;
                            left             = (int)(this.m_BaseIndent + this.m_Indent);
                        }
                        s.padding.left = left;
                        if (Event.current.type == EventType.Repaint)
                        {
                            s.Draw(position, gUIContent, false, false, this.m_DelPVstate.selectedItems[num], focused);
                        }
                        this.m_DelPVstate.NextFileFolder(ref num2, ref num3);
                        num++;
                    }
                    num4++;
                    offset += ASHistoryFileView.m_RowHeight;
                }
            }
        }
Exemplo n.º 9
0
        private void DeletedItemsKeyboard(ASHistoryWindow parentWin)
        {
            int row = this.m_DelPVstate.lv.row;
            int num = row;

            if (this.DeletedItemsToggle)
            {
                switch (Event.current.keyCode)
                {
                case KeyCode.UpArrow:
                    if (num > 0)
                    {
                        num--;
                    }
                    else
                    {
                        this.SelType = ASHistoryFileView.SelectionType.DeletedItemsRoot;
                        this.ScrollToDeletedItem(-1);
                        parentWin.DoLocalSelectionChange();
                    }
                    goto IL_1C9;

                case KeyCode.DownArrow:
                    if (num < this.m_DelPVstate.lv.totalRows - 1)
                    {
                        num++;
                    }
                    goto IL_1C9;

                case KeyCode.Home:
                    num = 0;
                    goto IL_1C9;

                case KeyCode.End:
                    num = this.m_DelPVstate.lv.totalRows - 1;
                    goto IL_1C9;

                case KeyCode.PageUp:
                    if (ASHistoryFileView.OSX)
                    {
                        this.m_ScrollPosition.y = this.m_ScrollPosition.y - this.m_ScreenRect.height;
                        if (this.m_ScrollPosition.y < 0f)
                        {
                            this.m_ScrollPosition.y = 0f;
                        }
                    }
                    else
                    {
                        num -= (int)(this.m_ScreenRect.height / ASHistoryFileView.m_RowHeight);
                        if (num < 0)
                        {
                            num = 0;
                        }
                    }
                    goto IL_1C9;

                case KeyCode.PageDown:
                    if (ASHistoryFileView.OSX)
                    {
                        this.m_ScrollPosition.y = this.m_ScrollPosition.y + this.m_ScreenRect.height;
                    }
                    else
                    {
                        num += (int)(this.m_ScreenRect.height / ASHistoryFileView.m_RowHeight);
                        if (num > this.m_DelPVstate.lv.totalRows - 1)
                        {
                            num = this.m_DelPVstate.lv.totalRows - 1;
                        }
                    }
                    goto IL_1C9;
                }
                return;

IL_1C9:
                Event.current.Use();
                if (num != row)
                {
                    this.m_DelPVstate.lv.row = num;
                    ListViewShared.MultiSelection(null, row, num, ref this.m_DelPVstate.initialSelectedItem, ref this.m_DelPVstate.selectedItems);
                    this.ScrollToDeletedItem(num);
                    parentWin.DoLocalSelectionChange();
                }
            }
        }