Beispiel #1
0
        /// <summary>
        /// Order the market thraeds by event date
        /// </summary>
        public void OrderMarketData(MarketViewSortOrder sort)
        {
            if (panelLoadingNewMarketItem.Visible)
            {
                panelLoadingNewMarketItem.Visible = false;
            }

            switch (sortOrder)
            {
            case MarketViewSortOrder.DATE_FIRST_TO_LAST:
                MarketViewStateItemList.Sort(new MarketViewItemDateComparer());
                break;

            case MarketViewSortOrder.DATE_LAST_TO_FIRST:
                MarketViewStateItemList.Sort(new MarketViewItemDateComparerReverse());
                break;

            case MarketViewSortOrder.MARKET_NAME_A_TO_Z:
                MarketViewStateItemList.Sort(new MarketViewItemNameComparer());
                break;

            case MarketViewSortOrder.MARKET_NAME_Z_TO_A:
                MarketViewStateItemList.Sort(new MarketViewItemNameComparerReverse());
                break;
            }

            sortOrder = sort;
            ShowPageItems();
        }
Beispiel #2
0
        /// <summary>
        /// Adds the market.
        /// </summary>
        /// <param name="threadProcessorId">The thread processor id.</param>
        /// <param name="market">The market.</param>
        public void AddMarket(string threadProcessorId, Market market)
        {
            if (threadProcessorId == null || market == null || threadProcessorId == "" || MarketViewStateItemListContains(threadProcessorId))
            {
                return;
            }

            /*** Make the new item indicator visible so that user know the ordering might have changed ***/
            panelLoadingNewMarketItem.Visible = true;

            /*** Create the MarketViewItem instance and add it to the list ***/
            var item = new MarketViewStateItem
            {
                Name              = market.partialFullName,
                EventDate         = market.eventDate,
                ThreadProcessorId = threadProcessorId,
                ControlOrdering   = -1,
                IsMaximized       = false
            };

            //var item = new MarketViewStateItem {ThreadProcessorId = id, order = (-1), market = market};

            MarketViewStateItemList.Add(item);

            /*** A new item has been added so we need to amend the page count and refresh the display ***/
            UpdatePageCount();

            ShowPageItems();
        }
Beispiel #3
0
        /// <summary>
        /// Clear all controls
        /// </summary>
        public void ClearMarkets()
        {
            SuspendLayout();

            MarketViewStateItemList.Clear();

            UpdatePageCount();
            ShowPageItems();

            ResumeLayout(true);
        }
Beispiel #4
0
        /// <summary>
        /// Remove a MarketViewItem form the MarketView control
        /// </summary>
        /// <param name="threadProcessorId">The thread processor id.</param>
        /// <returns></returns>
        public bool RemoveMarket(string threadProcessorId)
        {
            if (String.IsNullOrEmpty(threadProcessorId))
            {
                return(false);
            }

            var index = MarketViewStateItemListGetIndex(threadProcessorId);

            if (index < 0)
            {
                return(false);
            }

            MarketViewStateItemList.RemoveAt(index);
            UpdatePageCount();
            ShowPageItems();

            return(true);
        }