Example #1
0
 // Add
 public static void Add(VarBaseD v)
 {
     if (Root == null)
     {
         Root = v;
     }
     else
     {
         v.Next = Root;
         Root   = v;
     }
 }
Example #2
0
        // Init
        public void Init()
        {
            // add the vars
            for (VarBaseD v = DebugVariables.Root; v != null; v = v.Next)
            {
                string[] items = v.Name.Split('.');
                MenuItem c     = Root;

                // drill down - adding new levels if required
                for (int i = 0; i < items.Length; ++i)
                {
                    // attempt to find at this level
                    MenuItem ci = null;

                    for (ci = c.Child1; ci != null; ci = ci.Next)
                    {
                        if (items[i] == ci.Name)
                        {
                            if ((i == (items.Length - 1)) || (c.Child1 == null))
                            {
                                ci = null;                         // we've got a duplicate between a level and var or two vars with the same name
                            }
                            break;
                        }
                    }

                    if (ci == null)
                    {
                        // add new
                        if (i == (items.Length - 1))
                        {
                            ci = new MenuItem(items[i], v);                         // item
                        }
                        else
                        {
                            ci = new MenuItem(items[i]);                         // submenu
                        }
                        c.Add(ci);
                    }

                    // move down to new level
                    c = ci;
                }
            }
        }
Example #3
0
 public MenuItem(string name, VarBaseD var)
     : this( name )
 {
     Var = var;
 }
Example #4
0
 public MenuItem( string name, VarBaseD var )
     : this(name)
 {
     Var = var;
 }
Example #5
0
 // Clear
 public static void Clear()
 {
     Root = null;
 }
Example #6
0
 // Add
 public static void Add( VarBaseD v )
 {
     if ( Root == null )
     Root = v;
     else
     {
     v.Next = Root;
     Root = v;
     }
 }