Beispiel #1
0
 private TToDoItem GetTask(TToDoItem rootitem, string name)
 {
     TToDoItem tmp = null;
     // проверим текущий узел на совпадениие имени
     if (rootitem.Name == name)
         tmp = rootitem;
     else
     {
         // если есть узлы у него, подзадачи, то рекурсивно обходим их
         for (int i = 0; i < rootitem.GetItemsCount; i++)
         {
             if (rootitem[i].Name == name)
                 tmp = rootitem[i];
             else
                 GetTask(rootitem[i], name);
         }
     }
     return tmp;
 }
Beispiel #2
0
 /// <summary>
 /// Удаление задачи по ее индексу в массиве (с подзадачами получается) 
 /// </summary>
 /// <param name="ind">Индекс задачи в массиве</param>
 public void RemoveItem(int ind)
 {
     if (Items.Length == 0)
     {
         throw new Exception("Список задач пуст!");
     }
     TToDoItem[] tmp = new TToDoItem[Items.Length - 1];
     int k = 0;
     for (int i = 0; i < Items.Length; i++)
         if (ind != i)
         {
             tmp[k] = Items[i];
             k++;
         }
     // заменяем новым массивом задач
     Items = tmp;
 }
Beispiel #3
0
        string name; // название списка дел

        #endregion Fields

        #region Constructors

        /// <summary>
        /// Инициализация нового списка с начальными параметрами
        /// </summary>
        /// <param name="pname">Название списка</param>
        /// <param name="pdesc">Описание списка</param>
        public TToDoList(string pname, string pdesc)
        {
            name = pname;
            description = pdesc;
            Items = new TToDoItem(); // инициализируем корень дерева дел
            isChanged = true; // только создан, уже можно сохранять, без заданий
        }
Beispiel #4
0
 /// <summary>
 /// Добавление записи в массив записей данной задачи (то есть, дочерние)
 /// </summary>
 /// <param name="item">Задача для добавления в массив</param>
 /// <returns>Возврашает индекс добавленной в массив задач новой задачи</returns>
 public int AddItem(TToDoItem item)
 {
     Array.Resize(ref Items, Items.Length + 1);
     Items[Items.Length - 1] = item;
     return Items.Length - 1;
 }