/// <summary> /// Arranges slots in the layout. /// </summary> private void ArrangeTop10Slots() { flowLayoutStrategy.SuspendLayout(); flowLayoutStrategy.Controls.Clear(); foreach (var keyValue in top10Holder) { Top10Slot top10Slot = keyValue.Value.Top10Slot; top10Slot.Width = ClientSize.Width - vScrollBarStrategy.Width - 2 * Space; top10Slot.Margin = new Padding(Space, Space, 0, 0); top10Slot.Cursor = Cursors.Hand; toolTip.SetToolTip(top10Slot, Language.T("Activate the strategy.")); flowLayoutStrategy.Controls.Add(top10Slot); } flowLayoutStrategy.ResumeLayout(); }
/// <summary> /// Adds a strategy to Top 10 list. /// </summary> private void Top10AddStrategy() { if (top10Field.InvokeRequired) { Invoke(new DelegateTop10AddStrategy(Top10AddStrategy), new object[] {}); } else { var top10Slot = new Top10Slot {Width = 290, Height = 65}; top10Slot.InitSlot(); top10Slot.CustomSortingOption = customSortingOptionDisplay; top10Slot.CustomSortingValue = bestValue; top10Slot.Click += Top10SlotClick; top10Slot.DoubleClick += Top10SlotClick; int balance = Configs.AccountInMoney ? (int) Math.Round(Backtester.NetMoneyBalance) : Backtester.NetBalance; var top10StrategyInfo = new Top10StrategyInfo { Balance = balance, Value = String.IsNullOrEmpty(top10Slot.CustomSortingOption) ? balance : bestValue, Top10Slot = top10Slot, TheStrategy = Data.Strategy.Clone() }; top10Field.AddStrategyInfo(top10StrategyInfo); } }