示例#1
0
        public MarketBrowserTab()
        {
            InitializeComponent();
            Dock = DockStyle.Fill;
            SetupTree();
            // Add callback for lazy loading.
            marketTree.BeforeExpand += MarketTree_BeforeExpand;
            marketTree.AfterSelect  += MarketTree_AfterSelect;
            SetupColumns();
            // Populate region combo.
            List <int>        regionIDs = Universe.GetRegions();
            List <RegionItem> rItems    = new List <RegionItem>();

            regionSelect.Items.Clear();
            rItems.Add(new RegionItem("All (Loaded)", -1));
            rItems.Add(new RegionItem("None", 0));
            foreach (int regionID in regionIDs)
            {
                Universe.Region region = Universe.GetRegion(regionID);
                if (region.region_id < 11000000)
                {
                    rItems.Add(new RegionItem(region.name, region.region_id));
                }
            }
            rItems.Sort();
            regionSelect.Items.AddRange(rItems.ToArray());
            // Watch for updates...
            Market.RegionUpdate += Market_RegionUpdate;
            // Auto update region status label.
            labelTimer.Elapsed += LabelTimer_Elapsed;
        }
示例#2
0
 private void ShowUpdatingRegions()
 {
     if (InvokeRequired)
     {
         // Insure this is called in a GUI friendly thread.
         Invoke((MethodInvoker) delegate { ShowUpdatingRegions(); });
         return;
     }
     if (updatingRegions.Count > 0)
     {
         string regions = "";
         string delim   = "";
         int    num     = 0;
         foreach (int regionID in updatingRegions)
         {
             // Show at most 6 entries.
             num++;
             if (num > 6)
             {
                 regions += ", ...";
                 break;
             }
             Universe.Region region = Universe.GetRegion(regionID);
             if (region != null)
             {
                 regions += delim + region.name;
                 MarketRegionPage regionPage = Market.GetRegionPage(regionID, false);
                 if (regionPage != null)
                 {
                     TimeSpan wait = regionPage.expire.Subtract(DateTime.Now);
                     if (wait.TotalMilliseconds < 1)
                     {
                         wait = new TimeSpan(1);
                     }
                     regions += "(" + wait.TotalSeconds.ToString("N1") + ")";
                 }
                 delim = ", ";
             }
         }
         regionUpdateStatus.Text = "Updating region(s): " + regions;
     }
     else
     {
         regionUpdateStatus.Text = "";
     }
 }
示例#3
0
 bool IEveRepository.TryGetRegionById(Universe.RegionId id, out Universe.Region value)
 {
     throw new NotImplementedException();
 }