示例#1
0
            internal bool Set(Types.TrackNumber trackNumber)
            {
                bool active = TrackNumber.Active;

                TrackNumber.Set(trackNumber);
                return(!active);
            }
示例#2
0
        internal void Add(Types.TrackNumber trackNumber)
        {
            var data = squareData[GetIndex(trackNumber.Coordinate)];

            if (data.Set(trackNumber))
            {
                data.TrackNumberIndex = TrackNumbers.Count();
                TrackNumbers.Add(data.TrackNumber);
            }
        }
示例#3
0
        internal void Remove(Types.TrackNumber trackNumber)
        {
            var data = squareData[GetIndex(trackNumber.Coordinate)];

            if (data.UnsetTrackNumber())
            {
                TrackNumbers.RemoveAt(data.TrackNumberIndex);
                for (int i = data.TrackNumberIndex; i < TrackNumbers.Count; i++)
                {
                    squareData[GetIndex(TrackNumbers[i].Coordinate)].TrackNumberIndex--;
                }
            }
        }
示例#4
0
 public SquareData()
 {
     PushbackSquare = new Types.PushbackSquare()
     {
         Active = false
     };
     TrackNumber = new Types.TrackNumber()
     {
         Active = false
     };
     MoveSquare = new Types.MoveSquare()
     {
         Active = false
     };
 }
示例#5
0
 internal void RemoveTrackNumber(Types.TrackNumber trackNumber)
 {
     SquareInformation.Remove(trackNumber);
 }
示例#6
0
 internal void Add(Types.TrackNumber trackNumber)
 {
     SquareInformation.Add(trackNumber);
 }