예제 #1
0
        public void MoveToTree(Wrap what, Wrap anchor, MoveDestination dst)
        {
            var resp = GetWhereAndBeforeOf(what, anchor, dst);

            Wrap where = resp.Item1;
            Wrap beforeOf = resp.Item2;


            if (where == null)
            {
                return;
            }
            if (!CheckMoveConsistancy(what, where))
            {
                return;
            }

            if (what.Parent != null)
            {
                Remove(what);
            }
            if (UnassignedVideos.Contains(what))
            {
                UnassignedVideos.Remove(what as VideoWrap);
            }


            Insert(what, where, beforeOf);
        }
예제 #2
0
 void Delete(Wrap wrap)
 {
     foreach (var e in wrap.Subtree.OfType <VideoWrap>())
     {
         UnassignedVideos.Add(e);
     }
 }
예제 #3
0
        //public void Commit()
        //{
        //    foreach (var e in GlobalData.VideoData)
        //    {
        //        e.TopicGuid = Guid.Empty;
        //        e.NumberInTopic = 0;
        //    }
        //    Commit(Root[0]);
        //    GlobalData.TopicLevels.Clear();
        //    foreach (var e in Levels)
        //        GlobalData.TopicLevels.Add(e);
        //}

        void DeleteFromList()
        {
            if (SelectedItemInUnassignedList != null)
            {
                //GlobalData.VideoData.Remove(SelectedItemInUnassignedList.Video);
                UnassignedVideos.Remove(SelectedItemInUnassignedList);
            }
        }
예제 #4
0
 void Remove()
 {
     if (SelectedItem is VideoWrap)
     {
         SelectedItem.Parent.Items.Remove(SelectedItem);
         UnassignedVideos.Add(SelectedItem as VideoWrap);
     }
     else
     {
         Remove(SelectedItem);
     }
 }