예제 #1
0
파일: QList.cs 프로젝트: fence-post/plants
        public void Remove(T1 key)
        {
            QList <T2> val = items[key];

            if (val != null)
            {
                if (sortedKeys.ContainsKey(val.indexValue))
                {
                    sortedKeys.Remove(val.indexValue);
                }
            }
            items.Remove(key);
        }
예제 #2
0
파일: QList.cs 프로젝트: fence-post/plants
 public void MergeRange(QList <T2> list, bool addPositions = false)
 {
     foreach (T2 item in list.Each())
     {
         double pos = list.GetPosition(item);
         if (Contains(item))
         {
             if (addPositions)
             {
                 pos += GetPosition(item);
             }
             else
             {
                 pos = Math.Max(pos, GetPosition(item));
             }
         }
         AddIfNotExists(item);
         SetPosition(item, Convert.ToInt32(pos));
     }
 }