/*
         * Organizer Method
         */

        public override void AddOrganization(GroupNode group, InterfaceNode currentNode)
        {
            VerticallyNonOverlappingPanelsNode non = new VerticallyNonOverlappingPanelsNode();
            OverlappingPanelsNode over             = new OverlappingPanelsNode();

            currentNode.InsertAsParent(non);
            non.AddPanel(over);

            Hashtable deps = new Hashtable(_dependencies.Count);

            IEnumerator e    = _dependencies.Keys.GetEnumerator();
            PanelNode   newP = null;

            while (e.MoveNext())
            {
                GroupNode g       = (GroupNode)e.Current;
                ArrayList aryDeps = (ArrayList)_dependencies[g];

                newP = new PanelNode(g);

                over.AddPanel(newP);

                deps[aryDeps] = newP;
                g.Decorations.Add(PanelDecision.DECISION_KEY, new PanelDecision(this, newP));
            }

            _activePanel = newP;

            _dependencies = deps;
            _uiValid      = true;

            this.ValueChanged(_state);
        }
        /*
         * Organizer Method
         */

        public override void AddOrganization(GroupNode group, InterfaceNode currentNode)
        {
            TabbedOverlappingPanelsNode tab = new TabbedOverlappingPanelsNode(_state);
            MultiplePanelNode           non = null;

            if (_vertical)
            {
                non = new HorizontallyNonOverlappingPanelsNode((PanelNode)currentNode, tab);
            }
            else
            {
                non = new VerticallyNonOverlappingPanelsNode();
                currentNode.InsertAsParent(non);
                non.AddPanel(tab);
            }

            Hashtable deps = new Hashtable(_dependencies.Count);

            IEnumerator e    = _dependencies.Keys.GetEnumerator();
            PanelNode   newP = null;

            while (e.MoveNext())
            {
                GroupNode g       = (GroupNode)e.Current;
                ArrayList aryDeps = (ArrayList)_dependencies[g];

                EqualsDependency eqDep = (EqualsDependency)aryDeps[0];

                try
                {
                    newP       = (PanelNode)tab.GetNodeByValue((int)eqDep.Value).GetChildNode();
                    newP.Group = g;
                }
                catch (Exception) { Globals.GetFrame(eqDep.State.Appliance).AddLogLine("Error in TabbedControlPanelOrganizer... Line 82"); }

                deps[aryDeps] = newP;
                g.Decorations.Add(PanelDecision.DECISION_KEY, new PanelDecision(this, newP));
            }

            _activePanel = newP;

            _dependencies = deps;
            _uiValid      = true;

            this.ValueChanged(_state);
        }