Exemple #1
0
        //=========================================
        // getNodeAt
        //=========================================
        public GDITreeViewNode getNodeAt(float screenSpaceX, float screenSpaceY)
        {
            bool isOver = screenSpaceX > mLocation.X && screenSpaceX <mLocation.X + Size.Width &&
                                                                      screenSpaceY> mLocation.Y && screenSpaceY < mLocation.Y + Size.Height;

            if (isOver)
            {
                return(this);
            }

            if (Expanded)
            {
                GDITreeViewNode tvn = null;
                for (int i = 0; i < mNodes.Count; i++)
                {
                    tvn = mNodes[i].getNodeAt(screenSpaceX, screenSpaceY);
                    if (tvn != null)
                    {
                        return(tvn);
                    }
                }
            }

            return(null);
        }
Exemple #2
0
        //=========================================
        // addNode
        //=========================================
        public GDITreeViewNode addNode(string nodeText)
        {
            GDITreeViewNode newNode = new GDITreeViewNode();

            newNode.Text = nodeText;
            mNodes.Add(newNode);

            return(newNode);
        }
Exemple #3
0
        //=========================================
        // addNode
        //=========================================
        public void addNode(GDITreeViewNode newNode)
        {
            mNodes.Add(newNode);


            if (AutoUpdate)
            {
                updatePositions();
                this.Refresh();
            }
        }
Exemple #4
0
 //=========================================
 // deleteNode
 //=========================================
 public void deleteNode(GDITreeViewNode targetNode)
 {
     if (mNodes.Contains(targetNode))
     {
         mNodes.Remove(targetNode);
     }
     else
     {
         for (int i = 0; i < mNodes.Count; i++)
         {
             mNodes[i].deleteNode(targetNode);
         }
     }
 }
Exemple #5
0
        //=========================================
        // getNodeAt
        //=========================================
        GDITreeViewNode getNodeAt(float screenSpaceX, float screenSpaceY)
        {
            GDITreeViewNode tvn = null;

            for (int i = 0; i < mNodes.Count; i++)
            {
                tvn = mNodes[i].getNodeAt(screenSpaceX, screenSpaceY);
                if (tvn != null)
                {
                    return(tvn);
                }
            }

            return(null);
        }
Exemple #6
0
        //=========================================
        // addNode
        //=========================================
        public GDITreeViewNode addNode(string nodeText)
        {
            GDITreeViewNode newNode = new GDITreeViewNode();

            newNode.Text = nodeText;
            mNodes.Add(newNode);

            if (AutoUpdate)
            {
                updatePositions();
                this.Refresh();
            }

            return(newNode);
        }
Exemple #7
0
        //=========================================
        // clearNodes
        //=========================================
        public void clearNodes()
        {
            for (int i = 0; i < mNodes.Count; i++)
            {
                mNodes[i].clearNodes();
            }

            mSelectedNode = null;

            mNodes.Clear();
            if (AutoUpdate)
            {
                updatePositions();
                this.Refresh();
            }
        }
Exemple #8
0
        //=========================================
        // OnMouseDoubleClick
        //=========================================
        protected override void OnMouseDoubleClick(MouseEventArgs e)
        {
            mSelectedNode = getNodeAt(e.X, e.Y);
            if (mSelectedNode != null)
            {
                mSelectedNode.Expanded = !mSelectedNode.Expanded;

                updatePositions();

                mSelectedNode.OnMouseDoubleClick(e);

                updateScroll();
            }

            this.Refresh();
        }
Exemple #9
0
        //=========================================
        // addNode
        //=========================================
        public void deleteNode(GDITreeViewNode targetNode)
        {
            if (mNodes.Contains(targetNode))
            {
                mNodes.Remove(targetNode);
            }
            else
            {
                for (int i = 0; i < mNodes.Count; i++)
                {
                    mNodes[i].deleteNode(targetNode);
                }
            }

            if (AutoUpdate)
            {
                updatePositions();
                this.Refresh();
            }
        }
Exemple #10
0
        //=========================================
        // OnMouseClick
        //=========================================
        protected override void OnMouseClick(MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right)
            {
                mainContextMenu.Show(this.PointToScreen(e.Location));
                return;
            }

            mSelectedNode = getNodeAt(e.X, e.Y);
            if (mSelectedNode != null)
            {
                updatePositions();

                mSelectedNode.OnMouseClick(e);


                updateScroll();
            }

            this.Refresh();
        }
Exemple #11
0
 //=========================================
 // addNode
 //=========================================
 public void addNode(GDITreeViewNode newNode)
 {
     mNodes.Add(newNode);
 }
Exemple #12
0
 //=========================================
 // isEqualTo
 //=========================================
 public virtual bool isEqualTo(GDITreeViewNode rhs)
 {
     return(Text.CompareTo(rhs.Text) == 0);
 }
Exemple #13
0
 //=========================================
 // isGreaterThan
 //=========================================
 public virtual bool isGreaterThan(GDITreeViewNode rhs)
 {
     return(Text.CompareTo(rhs.Text) > 0);
 }
Exemple #14
0
 //=========================================
 // isLessThan
 //=========================================
 public virtual bool isLessThan(GDITreeViewNode rhs)
 {
     return(Text.CompareTo(rhs.Text) < 0);
 }
Exemple #15
0
 //=========================================
 // isLessThan
 //=========================================
 public virtual int compareTo(GDITreeViewNode rhs)
 {
     return(Text.CompareTo(rhs.Text));
 }