Example #1
0
        private void Remove(SeqItem seqItem)
        {
            Count--;

            if (Count == 0)
            {
                _first = null;
                _last  = null;
                return;
            }

            if (seqItem == _first)
            {
                _first      = _first.Next;
                _first.Prev = null;
                return;
            }

            if (seqItem == _last)
            {
                _last      = _last.Prev;
                _last.Next = null;
                return;
            }

            seqItem.Prev.Next = seqItem.Next;
            seqItem.Next.Prev = seqItem.Prev;
        }
Example #2
0
        private SeqItem MakeItem(string description, string tableName, params string[] partNames)
        {
            SeqParts spx = spl.PartsList[tableName];

            SeqItem sx = new SeqItem("");

            foreach (string name in partNames)
            {
                sx.Parts.Add(spx.Parts[name]);
            }

            return(sx);
        }
Example #3
0
        public void Add(T item)
        {
            var newItem = new SeqItem
            {
                Prev = _last,
                Item = item
            };

            if (_first == null)
            {
                _first = newItem;
            }

            if (_last != null)
            {
                _last.Next = newItem;
            }

            _last = newItem;

            Count++;
        }