private void OnDeleted(object item)
        {
            TransformationTreeItemPanel panel = (TransformationTreeItemPanel)item;

            this.panel.Children.Remove(panel);
            if (this.ActiveItemPanel != null && this.ActiveItemPanel == panel && this.panel.Children.Count > 0)
            {
                this.ActiveItemPanel = (TransformationTreeItemPanel)this.panel.Children[this.panel.Children.Count - 1];
            }

            int index = 1;

            foreach (object pan in this.panel.Children)
            {
                ((TransformationTreeItemPanel)pan).Index = index++;
            }
            if (ItemDeleted != null && panel.CombinedTransformationTreeItem != null)
            {
                ItemDeleted(panel.CombinedTransformationTreeItem);
            }
            if (Changed != null)
            {
                Changed();
            }
        }
 /// <summary>
 /// Définit la valeur du TargetItem en cour d'édition
 /// et affiche cette valeur dans le TextBox
 /// </summary>
 /// <param name="value">La valeur du TargetItem en cour d'édition</param>
 public void setTransformationTree(Kernel.Domain.TransformationTree tree)
 {
     if (this.ActiveItemPanel == null)
     {
         this.ActiveItemPanel = (TransformationTreeItemPanel)this.panel.Children[this.panel.Children.Count - 1];
     }
     this.ActiveItemPanel.SetValue(tree);
 }
 protected void AddItemPanel(TransformationTreeItemPanel itemPanel)
 {
     //itemPanel.Changed += OnChanged;
     itemPanel.Added     += OnAdded;
     itemPanel.Updated   += OnUpdated;
     itemPanel.Deleted   += OnDeleted;
     itemPanel.Activated += OnActivated;
     this.panel.Children.Add(itemPanel);
 }
        private void OnAdded(object item)
        {
            TransformationTreeItemPanel panel = (TransformationTreeItemPanel)item;

            if (this.CombinedTransformationTree == null)
            {
                this.CombinedTransformationTree = new Kernel.Domain.CombinedTransformationTree();
            }
            this.CombinedTransformationTree.AddTreeItem(panel.CombinedTransformationTreeItem);
            OnChanged(panel.CombinedTransformationTreeItem);
        }
        private void OnUpdated(object item)
        {
            TransformationTreeItemPanel panel = (TransformationTreeItemPanel)item;

            if (this.CombinedTransformationTree == null)
            {
                this.CombinedTransformationTree = new Kernel.Domain.CombinedTransformationTree();
            }
            panel.CombinedTransformationTreeItem.position = panel.Index - 1;
            this.CombinedTransformationTree.UpdateTreeItem(panel.CombinedTransformationTreeItem);
            OnChanged(panel.CombinedTransformationTreeItem);
        }
 private void OnChanged(object item)
 {
     if (this.CombinedTransformationTree == null)
     {
         this.CombinedTransformationTree = new Kernel.Domain.CombinedTransformationTree();
     }
     if (this.panel.Children.Count <= this.CombinedTransformationTree.treeItemListChangeHandler.Items.Count)
     {
         this.ActiveItemPanel = new TransformationTreeItemPanel(this.CombinedTransformationTree.treeItemListChangeHandler.Items.Count + 1);
         AddItemPanel(this.ActiveItemPanel);
     }
     if (Changed != null)
     {
         Changed();
     }
     if (ItemChanged != null && item != null)
     {
         ItemChanged(item);
     }
 }
        /// <summary>
        ///
        /// </summary>
        /// <param name="table"></param>
        public void DisplayTransformationTrees(Kernel.Domain.CombinedTransformationTree combinedTransformationTree)
        {
            this.CombinedTransformationTree = combinedTransformationTree;
            this.panel.Children.Clear();
            int index = 1;

            if (combinedTransformationTree == null)
            {
                this.ActiveItemPanel = new TransformationTreeItemPanel(index);
                AddItemPanel(this.ActiveItemPanel);
                return;
            }
            combinedTransformationTree.treeItemListChangeHandler.Items.BubbleSort();
            foreach (Kernel.Domain.CombinedTransformationTreeItem item in combinedTransformationTree.treeItemListChangeHandler.Items)
            {
                TransformationTreeItemPanel itemPanel = new TransformationTreeItemPanel(item);
                AddItemPanel(itemPanel);
                index++;
            }
            this.ActiveItemPanel = new TransformationTreeItemPanel(index);
            AddItemPanel(this.ActiveItemPanel);
        }
        private void OnActivated(object item)
        {
            TransformationTreeItemPanel panel = (TransformationTreeItemPanel)item;

            this.ActiveItemPanel = panel;
        }