Exemplo n.º 1
0
        /// <summary>
        /// On load, we read the settings.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected override void EveObjectSelectControl_Load(object sender, EventArgs e)
        {
            // Return on design mode
            if (DesignMode || this.IsDesignModeHosted())
            {
                return;
            }

            // Call the base method
            base.EveObjectSelectControl_Load(sender, e);

            m_metaGroups.AddRange(EnumExtensions.GetBaseValues <ItemMetaGroup>());

            // Set the presets
            m_presetGroups.Add(StaticItems.MarketGroups.First(x => x.ID == DBConstants.AmmosAndChargesGroupID));
            m_presetGroups.Add(StaticItems.MarketGroups.First(x => x.ID == DBConstants.ImplantsAndBoostersGroupID));
            m_presetGroups.Add(StaticItems.MarketGroups.First(x => x.ID == DBConstants.StarbaseStructuresGroupID));
            m_presetGroups.Add(StaticItems.MarketGroups.First(x => x.ID == DBConstants.ShipModificationsGroupID));
            m_presetGroups.Add(StaticItems.MarketGroups.First(x => x.ID == DBConstants.ShipEquipmentGroupID));
            m_presetGroups.Add(StaticItems.MarketGroups.First(x => x.ID == DBConstants.DronesGroupID));

            // Initialize the metagroup combo
            ccbGroupFilter.Items.Clear();
            ccbGroupFilter.Items.AddRange(m_metaGroups.Cast <Object>().ToArray());
            ccbGroupFilter.ItemCheck += ccbGroupFilter_ItemCheck;
            ccbGroupFilter.ToolTip    = toolTip;

            // Initialize the "skills" combo box
            cbUsabilityFilter.Items[0] = "All Items";
            cbUsabilityFilter.Items[1] = "Items I can use";
            cbUsabilityFilter.Items[2] = "Items I cannot use";

            // Read the settings
            if (Settings.UI.UseStoredSearchFilters)
            {
                // Usability combo
                cbUsabilityFilter.SelectedIndex = (int)Settings.UI.ItemBrowser.UsabilityFilter;

                // Metagroups combo
                for (int i = 0; i < m_metaGroups.Count; i++)
                {
                    ccbGroupFilter.SetItemChecked(i,
                                                  (Settings.UI.ItemBrowser.MetagroupFilter & m_metaGroups[i]) != ItemMetaGroup.Empty);
                }

                // Slots combo
                switch (Settings.UI.ItemBrowser.SlotFilter)
                {
                case ItemSlot.All:
                    cbSlotFilter.SelectedIndex = 0;
                    break;

                case ItemSlot.High:
                    cbSlotFilter.SelectedIndex = 1;
                    break;

                case ItemSlot.Medium:
                    cbSlotFilter.SelectedIndex = 2;
                    break;

                case ItemSlot.Low:
                    cbSlotFilter.SelectedIndex = 3;
                    break;

                case ItemSlot.None:
                    cbSlotFilter.SelectedIndex = 4;
                    break;

                default:
                    throw new NotImplementedException();
                }

                tbSearchText.Text        = Settings.UI.ItemBrowser.TextSearch;
                lbSearchTextHint.Visible = String.IsNullOrEmpty(tbSearchText.Text);
            }
            else
            {
                cbUsabilityFilter.SelectedIndex = 0;
                cbSlotFilter.SelectedIndex      = 0;
            }

            // Update the display
            m_isLoaded = true;
            UpdateContent();
        }