Example #1
0
        private void Closing()
        {
            TXmlConnector.SendNewQuotes    -= XmlConnector_OnSendNewQuotes;
            TXmlConnector.SendNewAllTrades -= XmlConnector_OnSendNewTrades;
            var atsub = new Security {
                Board = Board, Seccode = Seccode
            };

            AllTradesSubs.Remove(atsub);
            if (!AllTradesSubs.Contains(atsub))
            {
                ConnectorCommands.SubUnsubCommand("unsubscribe", "alltrades", Board, Seccode);
            }
            UnsubscribeFromWindowEvents();
            CloseWindow();
            GC.Collect();
        }
Example #2
0
        public LogBookViewModel(string board, string seccode, Window window, int id = 0)
        {
            Window         = window;
            ClosingCommand = new Command(arg => Closing());
            ResetCommand   = new Command(arg => Reset());
            Board          = board;
            Seccode        = seccode;
            _level2Items   = Level2DataHandler.AddLevel2Subscribtion(Board, Seccode);
            TXmlConnector.SendNewQuotes += XmlConnector_OnSendNewQuotes;
            Level2Subs.Add(new Security {
                Board = Board, Seccode = Seccode
            });
            TXmlConnector.ConnectorSendCommand(
                ConnectorCommands.SubUnsubCommand("subscribe", "alltrades", Board, Seccode));
            TXmlConnector.SendNewAllTrades += XmlConnector_OnSendNewTrades;
            AllTradesSubs.Add(new Security {
                Board = Board, Seccode = Seccode
            });
            Id = id;
            if (Id == 0)
            {
                SaveWindow();
            }
            SubscribeToWindowEvents();
            var args = GetWindowArgs() as LogBookArgs;

            if (args == null)
            {
                UpdateWindowArgs(new LogBookArgs {
                    Alert = false, Ratio = 2, Size = 1, TriggerDelta = 0.5
                });
                return;
            }
            Coef         = args.Ratio;
            Size         = args.Size;
            IsAlerting   = args.Alert;
            TriggerDelta = args.TriggerDelta;
        }