コード例 #1
0
        private MarketListing FillTest(string Name, int PCU)
        {
            MarketListing B = new MarketListing();

            B.Name = Name;
            B.PCU  = PCU;

            return(B);
        }
コード例 #2
0
        internal static void SetSelectedGrid(IMyTerminalBlock arg1, List <MyTerminalControlListBoxItem> newSelectedItems)
        {
            //We defined in terminal controls that only one item can be selected;
            SelectedBoxItem = -1;
            for (int i = 0; i < List.Count; i++)
            {
                MarketListing Offer = (MarketListing)List[i].UserData;
                if (newSelectedItems[0].UserData as MarketListing == Offer)
                {
                    SelectedBoxItem = i;
                    SelectedOffer   = Offer;
                    break;
                }
            }


            //Utils.Log("Set selected item");
            arg1.RefreshCustomInfo();
            UpdateGUI(arg1);
        }
コード例 #3
0
        public static void MergeNewCollection(List <MarketListing> NewOffers)
        {
            //No need to do any merge checks if the new list is null
            if (NewOffers == null || NewOffers.Count == 0)
            {
                //Remove any selected items
                SelectedBoxItem = -1;
                SelectedOffer   = null;


                MarketOffers.Clear();
                List.Clear();
                UpdateAllBlocks();
                return;
            }


            //First, lets see if we need to remove any items
            for (int i = MarketOffers.Count - 1; i >= 0; i--)
            {
                if (!NewOffers.Contains(MarketOffers[i]))
                {
                    if (SelectedOffer == MarketOffers[i])
                    {
                        //Remove any selected items
                        SelectedBoxItem = -1;
                        SelectedOffer   = null;
                    }

                    MarketOffers.RemoveAt(i);
                }
            }


            //Now see if we need to add any items
            for (int i = NewOffers.Count - 1; i >= 0; i--)
            {
                if (!MarketOffers.Contains(NewOffers[i]))
                {
                    MarketOffers.Add(NewOffers[i]);
                }
            }


            //Clear the listbox view
            List.Clear();
            for (int i = 0; i < MarketOffers.Count; i++)
            {
                MyStringId Name    = MyStringId.GetOrCompute(MarketOffers[i].Name);
                MyStringId ToolTip = MyStringId.GetOrCompute("Price: " + MarketOffers[i].Price);

                MyTerminalControlListBoxItem NewItem = new MyTerminalControlListBoxItem(Name, ToolTip, MarketOffers[i]);
                List.Add(NewItem);

                if (MarketOffers[i] == SelectedOffer)
                {
                    SelectedBoxItem = i;
                }
            }

            UpdateAllBlocks();
        }