private void ReserversCount_ValueChanged(object sender, EventArgs e) { int oldCount = Reservers.Count; int newCount = (int)ReserversCount.Value; int diff = Math.Abs(newCount - oldCount); if (newCount > oldCount) { for (int i = 0; i < diff; ++i) { CreateReserver(oldCount + i, true); } } else if (newCount < oldCount) { for (int i = 0; i < diff; ++i) { ReserverView reserver = Reservers.Last(); reserver.ZoomOut(); Reservers.RemoveAt(Reservers.Count - 1); ReserversPanel.Controls.Remove(reserver); reserver.Dispose(); } } }
private void Browser_AutoChanged(object sender, EventArgs e) { ReserverView reserver = sender as ReserverView; if (reserver.Browser.Auto) { PutOrderToBrowser(reserver.Browser); } }
private void CreateReserver(int number, bool runtime) { ReserverView reserver = new ReserverView(); reserver.RealBrowserNumber = number; reserver.Browser.DelayInfo = DelayInfo; reserver.Platforms = Platforms; reserver.DateCheckers = DateCheckers; reserver.Browser.Proxy = Proxies.OrderBy(prx => prx.Value).FirstOrDefault().Key; if (reserver.Browser.Proxy != null) { Proxies[reserver.Browser.Proxy]++; } reserver.Browser.OnPausedChanged += Browser_OnPausedChanged; reserver.Browser.OnReservedManually += Browser_OnReservedManually; reserver.Browser.OnReserved += Browser_OnReserved; reserver.Browser.OnDateTimeSelected += MainForm_OnDateTimeSelected; reserver.Browser.OnManualReactionWaiting += MainForm_OnManualReactionWaiting; reserver.Browser.OnOrderChanged += Browser_OnOrderChanged; reserver.Browser.OnIterationSkipped += Browser_OnIterationSkipped; reserver.Browser.OnIterationFailure += Browser_OnIterationFailure; reserver.Browser.OnIterationLogRequired += Browser_OnIterationLogRequired; reserver.AutoChanged += Browser_AutoChanged; int locationX = Reservers.Count == 0 ? ReserversPanel.Location.X : Reservers.Max(view => view.Location.X + view.Width); reserver.Location = new Point( locationX + RESERVERS_SPACE, RESERVERS_SPACE ); if (runtime) { BrowserSettings settings = SavedBrowserSettings.FirstOrDefault(setting => setting.BrowserNumber == number); if (settings != null) { reserver.ApplySettings(settings); } else { reserver.ApplySettings(ExportCommonSettings()); } } Logger.CreateLogFilesForBrowser(number); Reservers.Add(reserver); ReserversPanel.Controls.Add(reserver); }
private void PutOrderToBrowser(ReservationOrder order) { ReserverView found = Reservers.FirstOrDefault( reserver => reserver.Browser.Auto && reserver.Browser.Order == null && !reserver.Browser.Selected ); if (found != null) { found.Browser.Order = order; found.Browser.Checker = FindDateCheckerByOrder(order); } }