Summary description for CollapseItem.
Example #1
0
        /// <summary>
        /// Detaches the item from the CollapseListBox.
        /// </summary>
        /// <remarks>
        /// This method will keep all children of the detached item in tact so that the item can simply
        /// be reattached again.
        /// </remarks>
        /// <param name="itemToRemove"></param>
        /// <returns></returns>
        public CollapseItem DetachItem(string itemToRemove)
        {
            CollapseItem tempItem = GetItemByName(itemToRemove);

            if (tempItem.parentItem != null)
            {
                tempItem.parentItem.mItems.Remove(tempItem);
                tempItem.parentItem.FixCollapseIcon();
            }
            else
            {
                this.Items.Remove(tempItem);
            }

            int numOfCollapsedItems = GetNumCollapsed();

            if (mStartAt + mScaleY - 1 > numOfCollapsedItems)
            {
                mStartAt = numOfCollapsedItems - (int)(mScaleY - 1);
            }
            if (mStartAt < 0)
            {
                mStartAt = 0;
            }
            AdjustScrollSize();
            return(tempItem);
        }
Example #2
0
        public CollapseItem AddItemToItem(string stringToAdd, object ReferenceObject, CollapseItem itemToAddTo)
        {
            CollapseItem itemToReturn = itemToAddTo.AddItem(stringToAdd, ReferenceObject);

            AdjustScrollSize();
            return(itemToReturn);
        }
Example #3
0
 internal void RaiseIconClick(CollapseItem collapseItem, ListBoxBase listBoxBase)
 {
     if (IconClick != null)
     {
         IconClick(collapseItem, listBoxBase, this);
     }
 }
Example #4
0
        public CollapseItem AttachItemToThis(CollapseItem itemToAdd)
        {
            if (itemToAdd.parentItem != null)
            {
                itemToAdd.Detach();
            }
            if (itemToAdd.mParentBox as ListBoxBase != null)
            {
                ((ListBoxBase)itemToAdd.mParentBox).Items.Remove(itemToAdd);
            }

            itemToAdd.mParentBox = mParentBox;
            itemToAdd.parentItem = this;


            mItems.Add(itemToAdd);

            FixCollapseIcon();

            if (null != mParentBox as ListBoxBase)
            {
                ((ListBoxBase)mParentBox).AdjustScrollSize();
            }

            return(itemToAdd);
        }
Example #5
0
        // This doesn't exist because you should call itemToRemove.RemoveSelf();
        //public void RemoveItem(CollapseItem itemToRemove)
        //{


        //}


        public void RemoveSelf()
        {
            for (int i = mItems.Count - 1; i > -1; i--)
            {
                mItems[i].parentItem = null;
                if (null != mParentBox as CollapseListBox)
                {
                    ((CollapseListBox)mParentBox).AttachItem(mItems[i]);
                }
            }


            if (parentItem == null)
            {
                if (null != mParentBox as ListBoxBase)
                {
                    ((ListBoxBase)mParentBox).mItems.Remove(this);
                }
            }
            else
            {
                parentItem.mItems.Remove(this);
                parentItem.FixCollapseIcon();
            }
            if (((ListBoxBase)mParentBox).GetFirstHighlightedItem() == this)
            {
                ((ListBoxBase)mParentBox).HighlightItem((CollapseItem)null);
            }


            mParentBox = null;
            parentItem = null;
        }
Example #6
0
 public CollapseItem MoveLeftOne(CollapseItem itemToRemove)
 {
     if (itemToRemove != null)
     {
         itemToRemove.MoveLeftOne();
     }
     return(itemToRemove);
 }
Example #7
0
        public override void OnClick()
        {
            CollapseItem highlightedItem = GetHighlightedItem();

            if (highlightedItem == null || highlightedItem.Enabled)
            {
                base.OnClick();
            }
        }
Example #8
0
        public void DeselectObject(object objectToDeselect)
        {
            CollapseItem ci = GetItem(objectToDeselect);

            if (ci != null && mHighlightedItems.Contains(ci))
            {
                mHighlightedItems.Remove(ci);
            }
        }
Example #9
0
        public CollapseItem AttachItem(CollapseItem itemToAttach)
        {
            itemToAttach.mParentBox = this;
            itemToAttach.parentItem = null;
            Items.Add(itemToAttach);
            AdjustScrollSize();


            return(itemToAttach);
        }
Example #10
0
        public CollapseItem MoveLeftOne(string itemToRemove)
        {
            CollapseItem tempItem = GetItemByName(itemToRemove);

            if (tempItem != null)
            {
                tempItem.MoveLeftOne();
            }
            return(tempItem);
        }
Example #11
0
        public CollapseItem MoveLeftOne(object objectReference)
        {
            CollapseItem tempItem = GetItem(objectReference);

            if (tempItem != null)
            {
                tempItem.MoveLeftOne();
            }
            return(tempItem);
        }
Example #12
0
 public bool ContainsItem(CollapseItem item)
 {
     for (int i = 0; i < mItems.Count; i++)
     {
         if (mItems[i] == item || mItems[i].ContainsItem(item))
         {
             return(true);
         }
     }
     return(false);
 }
Example #13
0
        public int GetItemIndex(string text)
        {
            CollapseItem item = mListBox.GetItemByName(text);

            if (item != null)
            {
                return(mListBox.Items.IndexOf(item));
            }
            else
            {
                return(-1);
            }
        }
Example #14
0
        public void Detach()
        {
            ListBoxBase listBoxBase = this.mParentBox as ListBoxBase;

            if (parentItem != null)
            {
                parentItem.mItems.Remove(this);
                parentItem.FixCollapseIcon();
                this.parentItem = null;
            }

            if (listBoxBase.Items.Contains(this) == false)
            {
                listBoxBase.Items.Add(this);
            }
            mParentBox = listBoxBase;
        }
Example #15
0
        public bool MoveItemDown(CollapseItem itemToMove)
        {
            // if the item belongs to another item
            if (itemToMove.parentItem != null)
            {
                int num = itemToMove.parentItem.mItems.IndexOf(itemToMove);
                if (num == itemToMove.parentItem.mItems.Count - 1)
                {
                    return(false);
                }

                itemToMove.parentItem.mItems.Remove(itemToMove);
                itemToMove.parentItem.mItems.Insert(num + 1, itemToMove);
            }
            else // item belongs to a ListBox
            {
                if (itemToMove.parentBox is CollapseListBox)
                {
                    CollapseListBox parentAsCollapseListBox = itemToMove.parentBox as CollapseListBox;

                    int num = parentAsCollapseListBox.Items.IndexOf(itemToMove);
                    if (itemToMove.ParentItem != null && num == itemToMove.parentItem.mItems.Count - 1)
                    {
                        return(false);
                    }

                    parentAsCollapseListBox.Items.Remove(itemToMove);
                    parentAsCollapseListBox.Items.Insert(num + 1, itemToMove);
                }
                else if (itemToMove.parentBox is ListBox)
                {
                    ListBox parentAsListBox = itemToMove.parentBox as ListBox;

                    int num = parentAsListBox.mItems.IndexOf(itemToMove);
                    if (num == itemToMove.parentItem.mItems.Count - 1)
                    {
                        return(false);
                    }

                    parentAsListBox.mItems.Remove(itemToMove);
                    parentAsListBox.mItems.Insert(num + 1, itemToMove);
                }
            }
            return(true);
        }
Example #16
0
        public bool IsChildOf(CollapseItem potentialParent)
        {
            CollapseItem item = this.parentItem;

            while (item != null)
            {
                if (item == potentialParent)
                {
                    return(true);
                }
                else
                {
                    item = item.parentItem;
                }
            }

            return(false);
        }
Example #17
0
        public CollapseItem GetItem(object itemToGet)
        {
            CollapseItem itemToReturn = null;

            if (itemToGet == ReferenceObject)
            {
                return(this);
            }
            for (int i = 0; i < mItems.Count; i++)
            {
                itemToReturn = mItems[i].GetItem(itemToGet);
                if (itemToReturn != null)
                {
                    return(itemToReturn);
                }
            }
            return(itemToReturn);
        }
Example #18
0
        public CollapseItem GetItem(string itemToGet)
        {
            CollapseItem itemToReturn = null;

            if (itemToGet == itemText)
            {
                return(this);
            }
            for (int i = 0; i < mItems.Count; i++)
            {
                itemToReturn = mItems[i].GetItem(itemToGet);
                if (itemToReturn != null)
                {
                    return(itemToReturn);
                }
            }
            return(itemToReturn);
        }
Example #19
0
        public CollapseItem AddItem(string itemToAdd, object referenceObject)
        {
            CollapseItem tempItem = new CollapseItem(itemToAdd, referenceObject);

            tempItem.mParentBox = mParentBox;
            tempItem.parentItem = this;

            mItems.Add(tempItem);

            FixCollapseIcon();


            if (null != mParentBox as ListBoxBase)
            {
                ((ListBoxBase)mParentBox).AdjustScrollSize();
            }

            return(tempItem);
        }
Example #20
0
        public CollapseItem InsertItem(int index, string itemToAdd, object referenceObject)
        {
            CollapseItem tempItem = new CollapseItem(itemToAdd, referenceObject);

            tempItem.mParentBox = mParentBox;
            tempItem.parentItem = this;

            mItems.Insert(index, tempItem);

            FixCollapseIcon();


            if (mParentBox as ListBoxBase != null)
            {
                ((ListBoxBase)parentBox).AdjustScrollSize();
            }

            return(tempItem);
        }
Example #21
0
        public CollapseItem RemoveItemAndChildren(CollapseItem itemToRemove)
        {
            if (itemToRemove != null)
            {
                itemToRemove.RemoveSelfAndChildren();
            }
            int numOfCollapsedItems = GetNumCollapsed();

            if (mStartAt + mScaleY - 1 > numOfCollapsedItems)
            {
                mStartAt = numOfCollapsedItems - (int)(mScaleY - 1);
            }
            if (mStartAt < 0)
            {
                mStartAt = 0;
            }
            AdjustScrollSize();
            return(itemToRemove);
        }
Example #22
0
        public bool GetItemNum(ref int count, CollapseItem itemToGet)
        {
            if (itemToGet == this)
            {
                return(true);
            }
            count++;

            if (mExpanded)
            {
                for (int i = 0; i < mItems.Count; i++)
                {
                    if (mItems[i].GetItemNum(ref count, itemToGet) == true)
                    {
                        return(true);
                    }
                }
            }
            return(false);
        }
Example #23
0
        public void MoveLeftOne()
        {
            if (parentItem != null)
            {
                parentItem.mItems.Remove(this);
                parentItem = parentItem.parentItem;

                if (parentItem != null)
                {
                    parentItem.AttachItemToThis(this);
                }
                else
                {
                    if (null != mParentBox as ListBoxBase)
                    {
                        ((ListBoxBase)mParentBox).mItems.Add(this);
                    }
                }
            }
        }
Example #24
0
        private void PopupListBoxClick(Window callingWindow)
        {
            CollapseItem item = mListBox.GetFirstHighlightedItem();

            mListBox.Visible = false;

            if (item == null)
            {
                return;
            }

            if (item.Text == "Expand All")
            {
                ExpandAll();
            }
            else if (item.Text == "Collapse All")
            {
                CollapseAll();
            }
        }
Example #25
0
 public CollapseItem RemoveObject(object objectToRemove)
 {
     for (int i = 0; i < mItems.Count; i++)
     {
         if (mItems[i].ReferenceObject == objectToRemove)
         {
             CollapseItem ciRemoved = mItems[i];
             ciRemoved.RemoveSelf();
             return(ciRemoved);
             //					i--;
         }
         else
         {
             CollapseItem ciRemoved = mItems[i].RemoveObject(objectToRemove);
             if (ciRemoved != null)
             {
                 return(ciRemoved);
             }
         }
     }
     return(null);
 }
Example #26
0
        public CollapseItem GetHighlighted(ref int count, int highlightedNum)
        {
            CollapseItem tempItem = null;

            if (highlightedNum == count)
            {
                return(this);
            }
            count++;

            if (mExpanded == true)
            {
                for (int i = 0; i < mItems.Count; i++)
                {
                    tempItem = mItems[i].GetHighlighted(ref count, highlightedNum);
                    if (tempItem != null)
                    {
                        return(tempItem);
                    }
                }
            }
            return(tempItem);
        }
Example #27
0
        internal CollapseItem GetNthVisibleItem(ref int countedSoFar, int itemNumber)
        {
            if (countedSoFar == itemNumber)
            {
                return(this);
            }

            countedSoFar++;

            if (mExpanded)
            {
                foreach (CollapseItem item in mItems)
                {
                    CollapseItem itemToReturn = item.GetNthVisibleItem(ref countedSoFar, itemNumber);

                    if (itemToReturn != null)
                    {
                        return(itemToReturn);
                    }
                }
            }
            return(null);
        }
Example #28
0
        public void ReorderToMatchList(IEnumerable list)
        {
            int i = 0;

            foreach (object o in list)
            {
                if (i >= mItems.Count)
                {
                    CollapseItem itemToMove = GetItem(o);

                    mItems.Remove(itemToMove);
                }
                else if (o != mItems[i].ReferenceObject)
                {
                    CollapseItem itemToMove = GetItem(o);

                    mItems.Remove(itemToMove);
                    mItems.Insert(i, itemToMove);
                }

                i++;
            }
        }
Example #29
0
        internal int GetVisibleIndex(ref int countedSoFar, CollapseItem collapseItem)
        {
            if (collapseItem == this)
            {
                return(countedSoFar);
            }

            countedSoFar++;

            if (mExpanded)
            {
                foreach (CollapseItem item in mItems)
                {
                    int index = item.GetVisibleIndex(ref countedSoFar, collapseItem);

                    if (index != -1)
                    {
                        return(index);
                    }
                }
            }

            return(-1);
        }
Example #30
0
        internal protected void KeepHighlightInView(CollapseItem itemToHighlight)
        {
            int itemNumber = this.GetItemNumber(itemToHighlight);


            int numToDraw = NumberOfVisibleElements;

            if (itemNumber + 1 > mStartAt + numToDraw)
                mStartAt = 1 + itemNumber - numToDraw;
            else if (itemNumber > -1 && itemNumber < mStartAt)
                mStartAt = System.Math.Max(0, itemNumber);

            mScrollBar.SetScrollPosition(mStartAt);
        }
Example #31
0
        protected float GetAbsoluteScreenY(CollapseItem collapseItem)
        {
            int index = GetVisibleIndex(collapseItem);

            float startingY = mWorldUnitY + this.ScaleY - this.FirstItemDistanceFromTop;

            return startingY - (index - mStartAt) * mDistanceBetweenLines;
        }
Example #32
0
        public bool IsVisibleInBox(CollapseItem ci)
        {
            int itemNumber = this.GetItemNumber(ci);

            return itemNumber >= this.mStartAt &&
                itemNumber < mStartAt + NumberOfVisibleElements;
        }
Example #33
0
        public CollapseItem InsertItem(int index, string stringToAdd, object referenceObject)
        {
            CollapseItem tempCollapseItem = new CollapseItem(stringToAdd, referenceObject);
            tempCollapseItem.mParentBox = this;
            tempCollapseItem.parentItem = null;
            mItems.Insert(index, tempCollapseItem);

            AdjustScrollSize();

            if (GuiManagerDrawn == false && Visible)
                this.UpdateTextStrings();

            return tempCollapseItem;
        }
Example #34
0
        public void HighlightItem(CollapseItem itemToHighlight, bool addToHighlighted)
        {
            // store off in bools to simplify the statement.
            bool reselectingNull = itemToHighlight == null && mHighlightedItems.Count == 0;
            bool alreadySelected = mHighlightedItems.Contains(itemToHighlight);
            bool selectingSingleAndMultipleAreaAreadySelected = mHighlightedItems.Count > 1 && addToHighlighted == false;


            bool newHighlight =
                !reselectingNull &&
                !alreadySelected;

            newHighlight |= selectingSingleAndMultipleAreaAreadySelected;

            if (newHighlight)
            {
                if (addToHighlighted == false)
                {
                    mHighlightedItems.Clear();
                }

                if (itemToHighlight != null)
                {
                    mHighlightedItems.Add(itemToHighlight);
                }

                if (Highlight != null)
                {
                    Highlight(this);
                }

                if (OnNewHighlight != null)
                    OnNewHighlight(this);


                if (StrongSelectOnHighlight)
                {
                    if (StrongSelect != null)
                    {
                        StrongSelect(this);
                    }
                }
            }


            KeepHighlightInView(itemToHighlight);


            if (GuiManagerDrawn == false)
            {
                if (mHighlightBar != null)
                    UpdateHighlightSpriteFrame();

                UpdateHighlightSpriteFrame();

                UpdateTextStrings();
            }
        }
Example #35
0
 public bool Contains(CollapseItem itemToSearchFor)
 {
     foreach (CollapseItem item in mItems)
     {
         if (item == itemToSearchFor || item.ContainsItem(itemToSearchFor))
         {
             return true;
         }
     }
     return false;
 }
Example #36
0
        void OnClick(Window callingWindow)
        {
            if (MenuItems.Count != 0)
            {
                #region Create the new ListBox and store it in mChildPerishableListBox

                mChildPerishableListBox = GuiManager.AddPerishableListBox();

                mChildPerishableListBox.SortingStyle = ListBoxBase.Sorting.None;


                mChildPerishableListBox.ScaleX = 5;
                mChildPerishableListBox.ScaleY = 5;

                mChildPerishableListBox.ScrollBarVisible = false;
                #endregion

                #region Add the MenuItems to the new ListBox

                foreach (MenuItem menuItem in MenuItems)
                {
                    CollapseItem item = mChildPerishableListBox.AddItem(menuItem.Text, menuItem);
                    menuItem.mParentListBox = this.mChildPerishableListBox;
                    item.Enabled            = menuItem.Enabled;
                }

                #endregion

                #region Scale the new ListBox for the contents

                mChildPerishableListBox.SetScaleToContents(3);

                float maximumScale = GuiManager.YEdge - (MenuStrip.MenuStripHeight / 2.0f);

                if (mChildPerishableListBox.ScaleY > maximumScale)
                {
                    mChildPerishableListBox.ScrollBarVisible = true;
                    mChildPerishableListBox.ScaleY           = maximumScale;
                }

                #endregion

                if (this.mParentListBox != null)
                {
                    GuiManager.PersistPerishableThroughNextClick(mChildPerishableListBox);
                }

                mChildPerishableListBox.Click += ListBoxClick;

                if (this.mParentListBox != null)
                {
                    mChildPerishableListBox.X = mParentListBox.ScaleX +
                                                mParentListBox.WorldUnitX + GuiManager.UnmodifiedXEdge + mChildPerishableListBox.ScaleX;

                    int indexofHighlighted = mParentListBox.GetFirstHighlightedIndex();

                    float extraDistanceDown = mParentListBox.DistanceBetweenLines * indexofHighlighted;

                    mChildPerishableListBox.Y =
                        -(mParentListBox.WorldUnitY - GuiManager.UnmodifiedYEdge) + mChildPerishableListBox.ScaleY - mParentListBox.ScaleY +
                        mTextScale + extraDistanceDown - mChildPerishableListBox.FirstItemDistanceFromTop / 2.0f;
                }
                else
                {
                    mChildPerishableListBox.X = X + mChildPerishableListBox.ScaleX;
                    mChildPerishableListBox.Y = Y + mChildPerishableListBox.ScaleY + mTextScale;
                }
                mChildPerishableListBox.HighlightOnRollOver = true;
            }
        }
Example #37
0
        public void MoveLeftOne()
        {
            if (parentItem != null)
            {
                parentItem.mItems.Remove(this);
                parentItem = parentItem.parentItem;

                if (parentItem != null)
                    parentItem.AttachItemToThis(this);
                else
                {
                    if (null != mParentBox as ListBoxBase)
                        ((ListBoxBase)mParentBox).mItems.Add(this);
                }
            }
        }
Example #38
0
 internal void RaiseIconClick(CollapseItem collapseItem, ListBoxBase listBoxBase)
 {
     if (IconClick != null)
     {
         IconClick(collapseItem, listBoxBase, this);
     }
 }
Example #39
0
        private void ResetCurrentDirectoryComboBox()
        {
            mCurrentDirectoryDisplay.Clear();

            mCurrentDirectoryDisplay.AddItem("");
            mLastNonSystemDirectory = mCurrentDirectoryDisplay.FindItemByText("");

            mCurrentDirectoryDisplay.AddItem("Desktop");
            mCurrentDirectoryDisplay.AddItem("My Computer");
            mCurrentDirectoryDisplay.AddItem("My Documents");

            if (CurrentDirectory != "My Documents" && CurrentDirectory != "Desktop" && 
				CurrentDirectory != "My Computer" &&
				!IsSpecialFolder(CurrentDirectory))
            {
                mLastNonSystemDirectory.Text = CurrentDirectory;
            }

            if (mBookmarks != null && mBookmarks.Count != 0)
            {
                mCurrentDirectoryDisplay.AddItem(Separator);

                foreach (string s in mBookmarks)
                {
                    mCurrentDirectoryDisplay.AddItem(s);
                }
            }
        }
Example #40
0
        public bool MoveItemDown(CollapseItem itemToMove)
        {
            // if the item belongs to another item
            if (itemToMove.parentItem != null)
            {
                int num = itemToMove.parentItem.mItems.IndexOf(itemToMove);
                if (num == itemToMove.parentItem.mItems.Count - 1)
                    return false;

                itemToMove.parentItem.mItems.Remove(itemToMove);
                itemToMove.parentItem.mItems.Insert(num + 1, itemToMove);
            }
            else // item belongs to a ListBox
            {
                if (itemToMove.parentBox is CollapseListBox)
                {
                    CollapseListBox parentAsCollapseListBox = itemToMove.parentBox as CollapseListBox;

                    int num = parentAsCollapseListBox.Items.IndexOf(itemToMove);
                    if (itemToMove.ParentItem != null && num == itemToMove.parentItem.mItems.Count - 1)
                        return false;

                    parentAsCollapseListBox.Items.Remove(itemToMove);
                    parentAsCollapseListBox.Items.Insert(num + 1, itemToMove);
                }
                else if (itemToMove.parentBox is ListBox)
                {
                    ListBox parentAsListBox = itemToMove.parentBox as ListBox;

                    int num = parentAsListBox.mItems.IndexOf(itemToMove);
                    if (num == itemToMove.parentItem.mItems.Count - 1)
                        return false;

                    parentAsListBox.mItems.Remove(itemToMove);
                    parentAsListBox.mItems.Insert(num + 1, itemToMove);
                }
            }
            return true;
        }
Example #41
0
        internal void ClickOutliningButton(CollapseItem collapseItem, ListBoxBase collapseListBox, ListBoxIcon listBoxIcon)
        {
            if (listBoxIcon.Name == "$FRB_PLUS_BOX")
            {
                collapseItem.Expand();
            }
            else if (listBoxIcon.Name == "$FRB_MINUS_BOX")
            {
                collapseItem.Collapse();
            }

            collapseListBox.AdjustScrollSize();

        }
Example #42
0
        public bool IsChildOf(CollapseItem potentialParent)
        {
            CollapseItem item = this.parentItem;

            while (item != null)
            {
                if (item == potentialParent)
                    return true;
                else
                    item = item.parentItem;
            }

            return false;
        }
Example #43
0
        // This doesn't exist because you should call itemToRemove.RemoveSelf();
        //public void RemoveItem(CollapseItem itemToRemove)
        //{


        //}


        public void RemoveSelf()
        {
            for (int i = mItems.Count - 1; i > -1; i--)
            {
                mItems[i].parentItem = null;
                if (null != mParentBox as CollapseListBox)
                    ((CollapseListBox)mParentBox).AttachItem(mItems[i]);
            }


            if (parentItem == null)
            {
                if (null != mParentBox as ListBoxBase)
                {
                    ((ListBoxBase)mParentBox).mItems.Remove(this);
                }

            }
            else
            {
                parentItem.mItems.Remove(this);
                parentItem.FixCollapseIcon();
            }
            if (((ListBoxBase)mParentBox).GetFirstHighlightedItem() == this)
            {
                ((ListBoxBase)mParentBox).HighlightItem((CollapseItem)null);
            }


            mParentBox = null;
            parentItem = null;
        }
Example #44
0
        public CollapseItem InsertItem(int index, string itemToAdd, object referenceObject)
        {
            CollapseItem tempItem = new CollapseItem(itemToAdd, referenceObject);
            tempItem.mParentBox = mParentBox;
            tempItem.parentItem = this;

            mItems.Insert(index, tempItem);

            FixCollapseIcon();


            if (mParentBox as ListBoxBase != null)
                ((ListBoxBase)parentBox).AdjustScrollSize();

            return tempItem;
        }
Example #45
0
        public virtual CollapseItem AddItem(string stringToAdd, object referenceObject)
        {
            CollapseItem tempCollapseItem = new CollapseItem(stringToAdd, referenceObject);
            tempCollapseItem.mParentBox = this;
            tempCollapseItem.parentItem = null;
            mItems.Add(tempCollapseItem);

            AdjustScrollSize();

            if (GuiManagerDrawn == false && Visible)
            {
                this.UpdateTextStrings();
                UpdateTextPositions();
                UpdateSeparators();
            }

            if (mSortingStyle == Sorting.AlphabeticalIncreasing)
            {
                Sort();
            }

            return tempCollapseItem;
        }
Example #46
0
        public bool GetItemNum(ref int count, CollapseItem itemToGet)
        {
            if (itemToGet == this)
                return true;
            count++;

            if (mExpanded)
            {
                for (int i = 0; i < mItems.Count; i++)
                {
                    if (mItems[i].GetItemNum(ref count, itemToGet) == true)
                        return true;
                }
            }
            return false;
        }
Example #47
0
 public void HighlightItem(CollapseItem itemToHighlight)
 {
     HighlightItem(itemToHighlight, false);
 }
Example #48
0
        public void Detach()
        {
            ListBoxBase listBoxBase = this.mParentBox as ListBoxBase;

            if (parentItem != null)
            {
                parentItem.mItems.Remove(this);
                parentItem.FixCollapseIcon();
                this.parentItem = null;
            }

            if (listBoxBase.Items.Contains(this) == false)
            {
                listBoxBase.Items.Add(this);
            }
            mParentBox = listBoxBase;

        }
Example #49
0
        public void HighlightItemNoCall(CollapseItem itemToHighlight, bool addToHighlighted)
        {
            if (addToHighlighted == false)
            {
                mHighlightedItems.Clear();
            }

            if (itemToHighlight != null && mHighlightedItems.Contains(itemToHighlight) == false)
            {
                mHighlightedItems.Add(itemToHighlight);
            }
        }
Example #50
0
        public bool ContainsItem(CollapseItem item)
        {

			for(int i = 0; i < mItems.Count; i++)
			{
				if(mItems[i] == item || mItems[i].ContainsItem(item))
					return true;
			}
			return false;
        }
Example #51
0
        public CollapseItem InsertItem(int index, CollapseItem itemToInsert)
        {
            itemToInsert.mParentBox = this;
            itemToInsert.parentItem = null;
            mItems.Insert(index, itemToInsert);

            AdjustScrollSize();

            if (GuiManagerDrawn == false && Visible)
                this.UpdateTextStrings();

            return itemToInsert;

        }
Example #52
0
		public CollapseItem AttachItemToThis(CollapseItem itemToAdd)
		{
            if (itemToAdd.parentItem != null)
                itemToAdd.Detach();
			if(itemToAdd.mParentBox as ListBoxBase != null)
				((ListBoxBase)itemToAdd.mParentBox).Items.Remove(itemToAdd);

			itemToAdd.mParentBox = mParentBox;
			itemToAdd.parentItem = this;


            mItems.Add(itemToAdd);

            FixCollapseIcon();

			if(null != mParentBox as ListBoxBase)
				((ListBoxBase)mParentBox).AdjustScrollSize();

			return itemToAdd;


        }
Example #53
0
        public void RemoveCollapseItem(CollapseItem item)
        {
            if (mHighlightedItems.Contains(item))
            {
                mHighlightedItems.Remove(item);
            }

            #region Fix StartAt
            int numOfCollapsedItems = GetNumCollapsed();
            if (mStartAt + mScaleY - 1 > numOfCollapsedItems) mStartAt = numOfCollapsedItems - (int)(mScaleY - 1);
            if (mStartAt < 0) mStartAt = 0;
            #endregion

            item.RemoveSelf();

            AdjustScrollSize();

            UpdateTextStrings();

            if (!GuiManagerDrawn)
            {
                UpdateSeparators();
            }
        }
Example #54
0
		public CollapseItem AddItem(string itemToAdd, object referenceObject)
		{
            CollapseItem tempItem = new CollapseItem(itemToAdd, referenceObject);
			tempItem.mParentBox = mParentBox;
			tempItem.parentItem = this;
			
			mItems.Add(tempItem);

            FixCollapseIcon();


			if(null != mParentBox as ListBoxBase)
				((ListBoxBase)mParentBox).AdjustScrollSize();

			return tempItem;

		}
Example #55
0
        protected int GetVisibleIndex(CollapseItem collapseItem)
        {
            int countedSoFar = 0;

            foreach (CollapseItem item in mItems)
            {
                int index = item.GetVisibleIndex(ref countedSoFar, collapseItem);

                if (index != -1)
                    return index;
            }

            return -1;
        }
Example #56
0
 public CollapseItem RemoveItemAndChildren(CollapseItem itemToRemove)
 {
     if (itemToRemove != null)
         itemToRemove.RemoveSelfAndChildren();
     int numOfCollapsedItems = GetNumCollapsed();
     if (mStartAt + mScaleY - 1 > numOfCollapsedItems) mStartAt = numOfCollapsedItems - (int)(mScaleY - 1);
     if (mStartAt < 0) mStartAt = 0;
     AdjustScrollSize();
     return itemToRemove;
 }
Example #57
0
 private int GetItemNumber(CollapseItem item)
 {
     int count = 0;
     for (int i = 0; i < mItems.Count; i++)
     {
         if (mItems[i].GetItemNum(ref count, item)) return count;
     }
     return -1;
 }
Example #58
0
 public CollapseItem MoveLeftOne(CollapseItem itemToRemove)
 {
     if (itemToRemove != null)
         itemToRemove.MoveLeftOne();
     return itemToRemove;
 }
Example #59
0
		public CollapseItem AttachItem(CollapseItem itemToAttach)
		{
			itemToAttach.mParentBox = this;
			itemToAttach.parentItem = null;
			Items.Add(itemToAttach);
			AdjustScrollSize();


			return itemToAttach;

		}
Example #60
0
        internal int GetVisibleIndex(ref int countedSoFar, CollapseItem collapseItem)
        {
            if (collapseItem == this)
                return countedSoFar;

            countedSoFar++;

            if (mExpanded)
            {
                foreach (CollapseItem item in mItems)
                {
                    int index = item.GetVisibleIndex(ref countedSoFar, collapseItem);

                    if (index != -1)
                    {
                        return index;
                    }
                }
            }

            return -1;
		}