public void RemoveWatchlistItem(ArbitrageItemControl control) { if (flowLayoutPanel.InvokeRequired) { RemoveWatchlistItemCallback d = new RemoveWatchlistItemCallback(RemoveWatchlistItem); flowLayoutPanel.Invoke(d, new object[] { control }); } else { flowLayoutPanel.Controls.Remove(control); UpdateUI(); } }
public void UpdateUI(bool resize = false) { if (flowLayoutPanel.InvokeRequired) { UpdateUICallback d = new UpdateUICallback(UpdateUI); flowLayoutPanel.Invoke(d, new object[] { resize }); } else { try { //LogManager.AddDebugMessage(Name, "UpdateUI", "1 colcount=" + listView.OLVGroups. .CollapsedGroups.Count()); //grouper.GroupTitle = ExchangeManager.coinBalanceList.Select(s => s.Symbol).Distinct().Count() + " Coins"; foreach (Control control in flowLayoutPanel.Controls) { if (control is ArbitrageItemControl) { ArbitrageItemControl item = control as ArbitrageItemControl; item.UpdateUI(resize); } } if (ArbitragePreferences.CurrentWatchList.Contains('|')) { string[] data = ArbitragePreferences.CurrentWatchList.Split('|'); string name = data[0]; string preset = data[1]; toolStripLabel_totals.Text = GetPresetWatchlistTotals(name, preset); } else { toolStripLabel_totals.Text = "NO"; } toolStripLabel_lastUpdate.Text = "Last Update : " + DateTime.Now; if (resize) { ResizeUI(); } } catch (Exception ex) { LogManager.AddLogMessage(Name, "UpdateUI", ex.Message, LogManager.LogMessageType.EXCEPTION); } } }
public void SetWatchlist(bool resize = false, bool clear = false) { if (flowLayoutPanel.InvokeRequired) { SetWatchlistCallback d = new SetWatchlistCallback(SetWatchlist); flowLayoutPanel.Invoke(d, new object[] { resize, clear }); } else { if (clear) { flowLayoutPanel.Controls.Clear(); } /* * if (ArbitragePreferences.CurrentWatchList.Contains('|')) * { * string[] data = ArbitragePreferences.CurrentWatchList.Split('|'); * string name = data[0]; * string preset = data[1]; * toolStripLabel_totals.Text = GetPresetWatchlistTotals(name, preset); * } * else * { * toolStripLabel_totals.Text = "NO"; * } */ WatchList = ArbitragePreferences.GetCurrentWatchList(); SetOptionsMenu(); foreach (ExchangeTicker ticker in WatchList.Items.OrderByDescending(item => item.last)) { //LogManager.AddLogMessage(Name, "SetWatchlist", "ticker=" + ticker.symbol + " | " + ticker.market + " | " + ticker.last, LogManager.LogMessageType.DEBUG); Control[] ctrls = flowLayoutPanel.Controls.Find(ticker.symbol, false); if (ctrls.Length > 0) { // UPDATE ArbitrageItemControl control = ctrls[0] as ArbitrageItemControl; //control.UpdateUI(); //control.SetData(ticker.symbol, PreferenceManager.ArbitragePreferences.market); if (ticker.symbol != "BTC") { control.SetData(ticker.symbol, ArbitragePreferences.market); } else { control.SetData(ticker.symbol, "USD"); } } else { // ADD ArbitrageItemControl control = new ArbitrageItemControl() { Name = ticker.symbol, manager = this }; if (ticker.symbol != "BTC") { control.SetData(ticker.symbol, ArbitragePreferences.market); } else { control.SetData(ticker.symbol, "USD"); } //PreferenceManager.SetControlTheme(control, PreferenceManager.preferences.Theme, ParentForm); flowLayoutPanel.Controls.Add(control); //LogManager.AddLogMessage(Name, "SetWatchlist", "ticker=" + ticker.symbol + " | " + ticker.market + " | " + ticker.last, LogManager.LogMessageType.DEBUG); } } UpdateUI(resize); } }