/// <summary>
        /// Draws the given rail.
        /// </summary>
        /// <param name="rail">the rail to draw.</param>
        /// <param name="startX">The x starting point.</param>
        /// <param name="y">The y starting point.</param>
        private void DrawSingleSectorRail(Rail rail, int startX, int y)
        {
            int x = startX;

            RailNumberTextBox rntb = new RailNumberTextBox(rail, new Point(x, y));
            rntb.ContextMenu = this.CreateRailContextMenu();
            this.gbOverview.Controls.Add(rntb);
            x += rntb.Size.Width;

            SectorTextBox stb = new SectorTextBox(rail.Sectors[0], new Point(x, y));
            stb.ContextMenu = this.CreateSectorContextMenu();
            this.gbOverview.Controls.Add(stb);
        }
        /// <summary>
        /// Draws the given rail in the group box.
        /// </summary>
        /// <param name="rail">The rail to draw.</param>
        /// <param name="x">The x starting point.</param>
        /// <param name="startY">The y starting point.</param>
        private void DrawMultipleSectorRail(Rail rail, int x, int startY)
        {
            int y = startY;

            RailNumberTextBox rntb = new RailNumberTextBox(rail, new Point(x, y));
            rntb.ContextMenu = this.CreateRailContextMenu();
            this.gbOverview.Controls.Add(rntb);
            y += rntb.Size.Height;

            LineNumberTextBox lntb = new LineNumberTextBox(rail.Line, new Point(x, y));
            this.gbOverview.Controls.Add(lntb);
            y += lntb.Size.Height;

            rail.Sectors.Sort();
            foreach (Sector sector in rail.Sectors)
            {
                SectorTextBox stb = new SectorTextBox(sector, new Point(x, y));
                stb.ContextMenu = this.CreateSectorContextMenu();
                this.gbOverview.Controls.Add(stb);
                y += stb.Size.Height;
            }
        }