Exemplo n.º 1
0
        protected void AddDefaultMeasures(Domain.Measure parent)
        {
            Domain.Measure addNewAttribute = new Kernel.Domain.Measure();
            addNewAttribute.IsAddNewItem = true;
            addNewAttribute.name         = "Add new measure...";
            addNewAttribute.parent       = this.Root;
            this.Root.childrenListChangeHandler.Items.Add(addNewAttribute);

            if (parent.isCompleted && parent.HasMoreElements())
            {
                Domain.Measure showModeAttributes = new Domain.Measure();
                showModeAttributes.IsShowMoreItem = true;
                showModeAttributes.name           = "Show more measure...";
                showModeAttributes.parent         = parent;
                parent.childrenListChangeHandler.Items.Add(showModeAttributes);
            }
            if (parent != this.Root && this.Root.isCompleted && this.Root.HasMoreElements())
            {
                Domain.Measure showModeAttributes = new Domain.Measure();
                showModeAttributes.IsShowMoreItem = true;
                showModeAttributes.name           = "Show more measure...";
                showModeAttributes.parent         = this.Root;
                this.Root.childrenListChangeHandler.Items.Add(showModeAttributes);
            }
        }
Exemplo n.º 2
0
 private void OnExitEditMode(object sender, EO.Wpf.EditItemEventArgs e)
 {
     if (e.Item is Kernel.Domain.Measure)
     {
         Kernel.Domain.Measure editedMeasure = (Kernel.Domain.Measure)e.Item;
         string name = e.Text.Trim();
         if (!validateName(editedMeasure, name))
         {
             e.Canceled = true;
             return;
         }
         if (editedMeasure.IsDefault)
         {
             Kernel.Domain.Measure measure = new Domain.Measure();
             measure.name = name;
             this.Root.ForgetChild(editedMeasure);
             this.Root.AddChild(measure);
             this.Root.AddChild(editedMeasure);
             e.Canceled = true;
         }
         else
         {
             editedMeasure.name = name;
             editedMeasure.parent.UpdateChild(editedMeasure);
         }
         if (Changed != null)
         {
             Changed();
         }
     }
     else
     {
         e.Canceled = true;
     }
 }
Exemplo n.º 3
0
        /// <summary>
        /// Cette méthode permet de désactiver un menuItem dans le cas
        /// où l'opération associée à ce menuItem n'est pas possible pour
        /// le noeud courant.
        /// </summary>
        /// <param name="e"></param>
        protected override void OnContextMenuOpening(ContextMenuEventArgs e)
        {
            Kernel.Domain.Measure selectedItem = GetSelectedMeasure();
            if (selectedItem != null && selectedItem != defaultValue)
            {
                int lastPosition = -1;
                if (selectedItem.GetParent() != this.Root)
                {
                    lastPosition = selectedItem.parent.GetItems().Count;
                }
                else
                {
                    lastPosition = defaultValue.GetPosition();
                }

                this.newMenuItem.IsEnabled      = this.Root != null;
                this.cutMenuItem.IsEnabled      = this.Root != null && selectedItem != null && selectedItem.parent != null;
                this.copyMenuItem.IsEnabled     = this.Root != null && selectedItem != null && selectedItem.parent != null;
                this.pasteMenuItem.IsEnabled    = this.Root != null && selectedItem != null && !Kernel.Util.ClipbordUtil.IsClipBoardEmpty();
                this.deleteMenuItem.IsEnabled   = this.Root != null && selectedItem != null && selectedItem.parent != null;
                this.moveUpMenuItem.IsEnabled   = this.Root != null && selectedItem != null && selectedItem.GetPosition() > 0 && selectedItem.parent != null;
                this.moveDownMenuItem.IsEnabled = this.Root != null && selectedItem != null && selectedItem.parent != null && !((selectedItem.GetPosition() + 1) == lastPosition);
                this.indentMenuItem.IsEnabled   = this.Root != null && selectedItem != null && selectedItem.GetPosition() > 0 && selectedItem.parent != null;
                this.outdentMenuItem.IsEnabled  = this.Root != null && selectedItem != null && selectedItem.parent != null && selectedItem.GetParent() != Root;
            }
        }
        private void ComboboxActions(ComboBox combobox)
        {
            if (combobox == LeftMeasureComboBox)
            {
                if (combobox.SelectedItem is Kernel.Domain.Measure)
                {
                    Kernel.Domain.Measure measure = (Kernel.Domain.Measure)combobox.SelectedItem;
                    this.EditedObject.leftMeasure = measure;
                }
            }

            else if (combobox == RightMeasureComboBox)
            {
                if (combobox.SelectedItem is Kernel.Domain.Measure)
                {
                    Kernel.Domain.Measure measure = (Kernel.Domain.Measure)combobox.SelectedItem;
                    this.EditedObject.rightMeasure = measure;
                }
            }

            else if (combobox == RecoTypeComboBox)
            {
                if (combobox.SelectedItem is Kernel.Domain.Attribute)
                {
                    Kernel.Domain.Attribute attribut = (Kernel.Domain.Attribute)combobox.SelectedItem;
                    this.EditedObject.reconciliationType = attribut;
                }
            }
            else if (combobox == BalanceFormulaComboBox)
            {
                this.EditedObject.balanceFormulaEnum = (BalanceFormula)combobox.SelectedItem;
            }
        }
Exemplo n.º 5
0
 public void setReferenceMeasure(Kernel.Domain.Measure measure)
 {
     if (this.TypeComboBox.SelectedItem.ToString().Equals(CellPropertyAllocationData.AllocationType.Reference.ToString()))
     {
         this.RefMeasure = measure;
         OnChange();
     }
 }
Exemplo n.º 6
0
 /// <summary>
 ///
 /// </summary>
 /// <returns></returns>
 public override OperationState Search()
 {
     Kernel.Domain.Measure root = GetMeasureService().getRootMeasure();
     getMeasureEditor().EditedObject      = root;
     getMeasureEditor().ListChangeHandler = root.childrenListChangeHandler;
     getMeasureEditor().displayObject();
     return(OperationState.CONTINUE);
 }
Exemplo n.º 7
0
 /// <summary>
 /// Cette méthode permet de couper un élément sélectionné dans le treeview
 /// Lorsqu'on clique sur le menu contextuelle cut,
 /// la variable CurrentCutObjet prend la valeur de l'élément selectionné
 /// et une copie de cette dernière est placé dans le presse-papier.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OnCutNode(object sender, RoutedEventArgs e)
 {
     Kernel.Domain.Measure measure = GetSelectedMeasure();
     CurrentCutObject = measure;
     if (measure != null)
     {
         Kernel.Util.ClipbordUtil.SetHierarchyObject(CurrentCutObject);
     }
 }
Exemplo n.º 8
0
 public void setMeasure(Kernel.Domain.Measure measure)
 {
     this.getActiveWriteOffField().setMeasure(measure);
     if (ItemChanged != null)
     {
         ItemChanged(this.writeOffField);
     }
     display();
 }
Exemplo n.º 9
0
        protected void onMeasureNameChange(object sender, DataGridRowEditEndingEventArgs e)
        {
            DataGridRow row = e.Row;

            Kernel.Domain.Measure measure = (Kernel.Domain.Measure)row.Item;
            if (measure != null)
            {
            }
        }
Exemplo n.º 10
0
 /// <summary>
 /// Cette methode permet la copie d'un élément sélectionné dans le treeview
 /// Après la séléction de l'objet, un copie de cet objet est placée dans le presse-papiers
 /// en attente d'être collé.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OnCopyNode(object sender, RoutedEventArgs e)
 {
     Kernel.Domain.Measure measure = GetSelectedMeasure();
     if (measure != null)
     {
         IHierarchyObject copy = measure.GetCopy();
         Kernel.Util.ClipbordUtil.SetHierarchyObject(copy);
     }
     CurrentCutObject = null;
 }
Exemplo n.º 11
0
        protected void onCellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
        {
            DataGridRow    row    = e.Row;
            DataGridColumn column = e.Column;

            Kernel.Domain.Measure measure = (Kernel.Domain.Measure)row.Item;
            if (measure != null)
            {
            }
        }
Exemplo n.º 12
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="root"></param>
 public void DisplayRoot(Kernel.Domain.Measure root)
 {
     if (root == null)
     {
         this.measureTreeview.ItemsSource = null;
     }
     else
     {
         //RefreshParent(root);
         this.measureTreeview.ItemsSource = root.GetItems();
     }
 }
Exemplo n.º 13
0
 /// <summary>
 /// Initialize chidren's parent
 /// </summary>
 /// <param name="item"></param>
 private void RefreshParent(Kernel.Domain.Measure item, bool addToSource = true)
 {
     if (item != null)
     {
         foreach (Domain.Measure child in item.childrenListChangeHandler.Items)
         {
             if (addToSource)
             {
                 Source.Add(child);
             }
             child.SetParent(item);
             RefreshParent(child);
         }
     }
 }
Exemplo n.º 14
0
 /// <summary>
 /// Affiche le contenu de la mesure
 /// </summary>
 /// <param name="root"></param>
 public void DisplayRoot(Kernel.Domain.Measure root)
 {
     this.Root = root;
     if (this.Root == null)
     {
         this.tree.ItemsSource = null;
     }
     else
     {
         RefreshParent(this.Root);
         this.Root.AddChild(defaultValue);
         SetSelectedMeasure(defaultValue);
         this.tree.ItemsSource = this.Root.GetItems();
     }
 }
Exemplo n.º 15
0
 public Tree()
 {
     InitializeComponent();
     this.Focusable   = true;
     this.BorderBrush = Brushes.White;
     InitializeDataTemplate();
     InitializeHandlers();
     InitializeContextMenu();
     this.Root    = new Domain.Measure();
     defaultValue = new Domain.Measure()
     {
         name      = Label_DEFAULT_MEASURE,
         IsDefault = true,
     };
 }
Exemplo n.º 16
0
 protected Kernel.Domain.Measure GetNewTreeViewModel(Domain.Measure value = null)
 {
     Kernel.Domain.Measure measure = new Kernel.Domain.Measure();
     measure.name = "Measure1";
     if (Root != null)
     {
         Kernel.Domain.Measure m = null;
         int i = 1;
         do
         {
             measure.name = "Measure" + i++;
             m            = (Kernel.Domain.Measure)Root.GetChildByName(measure.name);
         }while (m != null);
     }
     return(measure);
 }
Exemplo n.º 17
0
 /// <summary>
 /// Supprime un noeud et ses fils.
 /// </summary>
 /// <param name="model">Le noeud à supprimer</param>
 public void DeleteNode(Kernel.Domain.Measure item)
 {
     if (item != null && item.parent != null)
     {
         MessageBoxResult result = Kernel.Util.MessageDisplayer.DisplayYesNoQuestion("Delete Measure", "Do you want to delete measure : " + item.name + "?");
         if (result == MessageBoxResult.Yes)
         {
             int index = item.GetPosition();
             item.GetParent().RemoveChild(item);
             if (Changed != null)
             {
                 Changed();
             }
         }
     }
 }
Exemplo n.º 18
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="attribute"></param>
        /// <param name="name"></param>
        /// <returns>La attribute à copier</returns>
        private bool ValidateName(Kernel.Domain.Measure value, string name)
        {
            if (string.IsNullOrWhiteSpace(name))
            {
                Kernel.Util.MessageDisplayer.DisplayError("Empty Measure name", "Name can't be empty! ");
                return(false);
            }
            Domain.Measure found = getMeasureByName(this.Root, name);
            if (found == null || found.Equals(value))
            {
                return(true);
            }

            Kernel.Util.MessageDisplayer.DisplayError("Duplicate Measure", "There is another measure named : '" + name + "'!");
            return(false);
        }
Exemplo n.º 19
0
 protected Domain.Measure GetNewMeasure()
 {
     Domain.Measure attribute = new Domain.Measure();
     attribute.name = "Measure";
     if (Root != null)
     {
         Kernel.Domain.Measure m = null;
         int i = 1;
         do
         {
             attribute.name = "Measure" + i++;
             m = (Domain.Measure)Root.GetChildByName(attribute.name);
         }while (m != null);
     }
     return(attribute);
 }
 public void setMeasure(Kernel.Domain.Measure measure)
 {
     if (ActiveItem == null)
     {
         return;
     }
     if (reconciliationContext == null)
     {
         reconciliationContext = new Kernel.Domain.ReconciliationContext();
     }
     reconciliationContext.amountMeasure = measure;
     if (cansetMeasure(ActiveItem))
     {
         this.ActiveItem.setValue(measure);
     }
 }
Exemplo n.º 21
0
 protected override IHierarchyObject GetNewTreeViewModel()
 {
     Kernel.Domain.Role role = new Kernel.Domain.Role();
     role.name = "Role1";
     if (Root != null)
     {
         Kernel.Domain.Measure m = null;
         int i = 1;
         do
         {
             role.name = "Role" + i++;
             m         = (Kernel.Domain.Measure)Root.GetChildByName(role.name);
         }while (m != null);
     }
     return(role);
 }
Exemplo n.º 22
0
 protected override Kernel.Domain.IHierarchyObject GetNewTreeViewModel()
 {
     Kernel.Domain.Measure measure = new Kernel.Domain.Measure();
     measure.name = "Measure1";
     if (Root != null)
     {
         Kernel.Domain.Measure m = null;
         int i = 1;
         do
         {
             measure.name = "Measure" + i++;
             m            = (Kernel.Domain.Measure)Root.GetChildByName(measure.name);
         }while (m != null);
     }
     //return measure;
     return(null);
 }
Exemplo n.º 23
0
        /// <summary>
        /// methode appelé lorsqu'on veut selectioner un measure
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnOutputMeasureButtonClicked(object sender, EventArgs e)
        {
            Misp.Kernel.Ui.Measure.MeasureTreeView measureTreeView = new Misp.Kernel.Ui.Measure.MeasureTreeView();
            ScrollViewer scrollViewer = new ScrollViewer();

            scrollViewer.Content = measureTreeView;
            scrollViewer.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto;
            scrollViewer.VerticalScrollBarVisibility   = ScrollBarVisibility.Auto;

            if (this.OutputMeasure != null && !this.OutputMeasure.IsLeaf())
            {
                measureTreeView.DisplayRoot(this.OutputMeasure);
            }
            else
            {
                Kernel.Domain.Measure root = this.MeasureService.getRootMeasure();
                measureTreeView.DisplayRoot(root);
                if (this.OutputMeasure != null)
                {
                    measureTreeView.SetSelectedMeasure(this.OutputMeasure);
                }
            }

            Dialog dialog = new Dialog("Select Output Measure", scrollViewer);

            dialog.Height = 200;
            dialog.Width  = 300;
            if (dialog.ShowCenteredToMouse().Value)
            {
                Measure selectedMeasure = measureTreeView.GetSelectedMultiMeasure();
                if (selectedMeasure != null)
                {
                    if (selectedMeasure.oid == null)
                    {
                        selectedMeasure = this.MeasureService.Save(selectedMeasure);
                    }
                    else
                    {
                        selectedMeasure = this.MeasureService.getByOid(selectedMeasure.oid.Value);
                    }
                    this.OutputMeasure = selectedMeasure;
                    OnChange();
                }
            }
        }
Exemplo n.º 24
0
 /// <summary>
 /// Transforme un sous-noeud en noeud
 /// </summary>
 /// <param name="model">le noeud à édenté</param>
 public void OutdentNode(Kernel.Domain.Measure item)
 {
     if (item.parent != null)
     {
         IHierarchyObject parent = item.parent.GetParent();
         if (parent != null)
         {
             item.parent.ForgetChild(item);
             parent.AddChild(item);
             this.Root.SwichtPosition(defaultValue, item);
             if (Changed != null)
             {
                 Changed();
             }
             SetSelectedMeasure(item);
         }
     }
 }
Exemplo n.º 25
0
 /// <summary>
 /// Transforme un noeud en sous-noeud
 /// </summary>
 /// <param name="model">le noeud à édenté</param>
 public void IndentNode(Kernel.Domain.Measure item)
 {
     if (item.parent != null)
     {
         int position           = item.GetPosition();
         IHierarchyObject child = item.parent.GetChildByPosition(position - 1);
         if (child != null)
         {
             item.parent.ForgetChild(item);
             child.AddChild(item);
             if (Changed != null)
             {
                 Changed();
             }
             SetSelectedMeasure(item);
         }
     }
 }
Exemplo n.º 26
0
        //Handles the TreeView's ItemDrop event
        private void OnItemDrop(object sender, EO.Wpf.ItemDropEventArgs e)
        {
            Kernel.Domain.Measure source  = (Kernel.Domain.Measure)e.SourceItem;
            Kernel.Domain.Measure target1 = (Kernel.Domain.Measure)e.TargetItem1;
            Kernel.Domain.Measure target2 = (Kernel.Domain.Measure)e.TargetItem2;
            Kernel.Domain.Measure parent  = target2 != null ? target2 : target1;

            source.parent.ForgetChild(source);
            parent.AddChild(source);
            if (target2 != null)
            {
                parent.SwichtPosition(target1, source);
            }
            e.Canceled = true;
            if (Changed != null)
            {
                Changed();
            }
        }
Exemplo n.º 27
0
 protected String GetNewMeasureName(string name)
 {
     Domain.Measure measure = new Domain.Measure();
     measure.name = name;
     if (Root != null)
     {
         Kernel.Domain.Measure m = (Domain.Measure)Root.GetChildByName(measure.name);
         int i = 1;
         while (m != null)
         {
             ;
         }
         {
             measure.name = name + i++;
             m            = (Domain.Measure)Root.GetChildByName(measure.name);
         }
     }
     return(measure.name);
 }
Exemplo n.º 28
0
        /// <summary>
        /// Cette methode permet la selection du noeud présent derrière la souris
        /// lorsque fait un click-droit.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnPreviewMouseRightButtonDown(object sender, MouseButtonEventArgs e)
        {
            EO.Wpf.TreeViewItem treeViewItem = VisualUpwardSearch(e.OriginalSource as DependencyObject);
            if (treeViewItem != null)
            {
                treeViewItem.Focus();
                e.Handled = true;
            }
            else
            {
                Kernel.Domain.Measure measure = GetSelectedMeasure();
                if (measure != null)
                {
                    measure.IsSelected = false;
                }

                tree.Focus();
            }
        }
Exemplo n.º 29
0
        /// <summary>
        /// Cette méthode permet de coller un objet précédement copier ou couper.
        /// A cet effet on vérifie si le Paste vient après un Cut(si CurrentCutObject!=null) ou un Copy,
        /// puis on met dans le presse-papiers une copie de l'élément coupé ou copié.
        /// On affecte un nouveau parent à l'élément coupé/copié.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnPasteNode(object sender, RoutedEventArgs e)
        {
            Kernel.Domain.Measure parent  = GetSelectedMeasure();
            Kernel.Domain.Measure newItem = null;
            if (parent == null)
            {
                parent = this.Root;
            }

            if (CurrentCutObject != null)
            {
                if (CurrentCutObject == parent)
                {
                    CurrentCutObject = null;
                }
                else
                {
                    CurrentCutObject.parent.ForgetChild(CurrentCutObject);
                    parent.AddChild(CurrentCutObject);
                    IHierarchyObject copy = CurrentCutObject.GetCopy();
                    Kernel.Util.ClipbordUtil.SetHierarchyObject(copy);
                    CurrentCutObject = null;
                    if (Changed != null)
                    {
                        Changed();
                    }
                }
            }
            else
            {
                newItem = Kernel.Util.ClipbordUtil.GetMeasure();
                if (newItem != null)
                {
                    parent.AddChild(newItem);
                    Kernel.Util.ClipbordUtil.SetHierarchyObject(newItem.GetCopy());
                    if (Changed != null)
                    {
                        Changed();
                    }
                }
            }
        }
Exemplo n.º 30
0
 /// <summary>
 /// Déplace un noeud vers le haut ou vers le bas
 /// </summary>
 /// <param name="item"></param>
 /// <param name="sens">Le sens du déplacement. 0 => UP, 1=> DOWN</param>
 public void MoveNode(Kernel.Domain.Measure item, bool up)
 {
     if (item.parent != null)
     {
         int position           = item.position + (up ? -1 : 1);
         IHierarchyObject child = item.parent.GetChildByPosition(position);
         if (child != null)
         {
             child.SetPosition(item.position);
             item.parent.UpdateChild(child);
             item.SetPosition(position);
             item.parent.UpdateChild(item);
             if (Changed != null)
             {
                 Changed();
             }
             SetSelectedMeasure(item);
         }
     }
 }