Example #1
0
            public void RemoveOrders(int tag, object value)
            {
                int count = this.orders.Count;
                int index = 0;

                while (index < this.orders.Count)
                {
                    SingleOrder singleOrder = this.orders[index];
                    if (singleOrder.ContainsField(tag))
                    {
                        object obj = singleOrder.GetValue(tag);
                        if (obj != null && obj.ToString() == value.ToString())
                        {
                            this.orders.Remove(index);
                            continue;
                        }
                    }
                    ++index;
                }
                if (count <= this.orders.Count)
                {
                    return;
                }
                this.EmitOrderListUpdated();
            }
Example #2
0
        public static void RemoveOrders(int tag, object value)
        {
            int count = OrderManager.orders.Count;
            int index = 0;

            while (index < OrderManager.orders.Count)
            {
                SingleOrder order = OrderManager.orders.All[index] as SingleOrder;
                object      obj   = order.GetValue(tag);
                if (obj != null && obj.ToString() == value.ToString())
                {
                    if (order.OrdStatus != OrdStatus.Cancelled && order.OrdStatus != OrdStatus.PendingCancel && order.OrdStatus != OrdStatus.Filled)
                    {
                        order.Cancel();
                    }
                    OrderManager.orders.Remove(order);
                    if (order.Persistent)
                    {
                        OrderManager.server.Remove((IOrder)order);
                    }
                }
                else
                {
                    ++index;
                }
            }
            if (count == OrderManager.orders.Count || OrderManager.OrderListUpdated == null)
            {
                return;
            }
            OrderManager.OrderListUpdated(typeof(OrderManager), EventArgs.Empty);
        }