Ejemplo n.º 1
0
        /// <summary>
        /// Inserts the item.
        /// </summary>
        /// <param name="vm">The vm.</param>
        private void InsertItem(INavigationItemViewModel vm)
        {
            var index = Convert.ToInt32(vm.Model.Sequence);
            if (index >= NavigationItems.Count)
            {
                NavigationItems.Add(vm);
                return;
            }

            NavigationItems.Insert(index, vm);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Moves the item down.
        /// </summary>
        /// <param name="item">The item.</param>
        public void MoveItemDown(INavigationItemViewModel item)
        {
            var index = NavigationItems.IndexOf(item);

            if (index >= NavigationItems.Count - 1)
            {
                item.CanMoveDown = false;
                return;
            }


            var nextItem = NavigationItems[index + 1];
            var sequence = nextItem.Model.Sequence;

            nextItem.Model.Sequence = item.Model.Sequence;
            item.Model.Sequence = sequence;

            NavigationItems[index] = nextItem;
            NavigationItems[index + 1] = item;

            UpdateItemsCanMove();
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Removes the item.
        /// </summary>
        /// <param name="item">The item.</param>
        public void RemoveItem(INavigationItemViewModel item)
        {
            Model.NavigationItems.Remove(item.Model);
            NavigationItems.Remove(item);

            if (NavigationItems.Count == 0)
                IsExpanded = false;

            UpdateItemsCanMove();

            Parent.RemoveItem(item.Model.PublishedProcessId);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Moves the item up.
        /// </summary>
        /// <param name="item">The item.</param>
        public void MoveItemUp(INavigationItemViewModel item)
        {
            var index = NavigationItems.IndexOf(item);

            if (index <= 0)
            {
                item.CanMoveUp = false;
                return;
            }

            var prevItem = NavigationItems[index - 1];
            var sequence = prevItem.Model.Sequence;

            prevItem.Model.Sequence = item.Model.Sequence;
            item.Model.Sequence = sequence;

            NavigationItems[index - 1] = item;
            NavigationItems[index] = prevItem;

            UpdateItemsCanMove();
        }