public PageUsedAirliners() { this.Loaded += PageUsedAirliners_Loaded; this.Unloaded += PageUsedAirliners_Unloaded; this.RangeRanges = new List <FilterValue>() { new FilterValue("<1500", 0, 1499), new FilterValue("1500-2999", 1500, 2999), new FilterValue("3000-5999", 3000, 5999), new FilterValue("6000+", 6000, int.MaxValue) }; this.SpeedRanges = new List <FilterValue>() { new FilterValue("<400", 0, 399), new FilterValue("400-599", 400, 599), new FilterValue("600+", 600, int.MaxValue) }; this.RunwayRanges = new List <FilterValue>() { new FilterValue("<5000", 0, 4999), new FilterValue("5000-7999", 5000, 7999), new FilterValue("8000+", 8000, int.MaxValue) }; this.CapacityRanges = new List <FilterValue>() { new FilterValue("<100", 0, 99), new FilterValue("100-199", 100, 199), new FilterValue("200-299", 200, 299), new FilterValue("300-399", 300, 399), new FilterValue("400-499", 400, 499), new FilterValue("500+", 500, int.MaxValue) }; this.AllAirliners = new ObservableCollection <AirlinerMVVM>(); foreach (Airliner airliner in Airliners.GetAirlinersForSale().OrderByDescending(a => a.BuiltDate.Year).ToList()) { this.AllAirliners.Add(new AirlinerMVVM(airliner)); } this.SelectedAirliners = new ObservableCollection <AirlinerMVVM>(); InitializeComponent(); }
public PageUsedAirliners() { this.Loaded += PageUsedAirliners_Loaded; this.AllAirliners = Airliners.GetAirlinersForSale().OrderByDescending(a => a.BuiltDate.Year).ToList(); this.SelectedAirliners = new ObservableCollection <Airliner>(); InitializeComponent(); }
public PageAirliners() { InitializeComponent(); this.Uid = "1000"; this.Title = Translator.GetInstance().GetString("PageAirliners", this.Uid); airlinerType = AirlinerType.TypeOfAirliner.Passenger; sortCriteriaUsed = a => a.BuiltDate; sortDescending = true; StackPanel airlinersPanel = new StackPanel(); airlinersPanel.Margin = new Thickness(10, 0, 10, 0); TextBlock txtNewHeader = new TextBlock(); txtNewHeader.Uid = "1001"; txtNewHeader.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; txtNewHeader.SetResourceReference(TextBlock.BackgroundProperty, "HeaderBackgroundBrush2"); txtNewHeader.FontWeight = FontWeights.Bold; txtNewHeader.Text = Translator.GetInstance().GetString("PageAirliners", txtNewHeader.Uid); airlinersPanel.Children.Add(txtNewHeader); // chs, 2011-11-10 added a scroller so all elements are viewable ScrollViewer scroller = new ScrollViewer(); scroller.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto; scroller.VerticalScrollBarVisibility = ScrollBarVisibility.Disabled; airlinersPanel.Children.Add(scroller); StackPanel panelScroller = new StackPanel(); panelScroller.Orientation = Orientation.Vertical; scroller.Content = panelScroller; ContentControl ccManufacturerHeader = new ContentControl(); ccManufacturerHeader.ContentTemplate = this.Resources["ManufacturerHeader"] as DataTemplate; ccManufacturerHeader.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; panelScroller.Children.Add(ccManufacturerHeader); lbManufacturers = new ListBox(); lbManufacturers.ItemTemplate = this.Resources["ManufacturerItem"] as DataTemplate; lbManufacturers.MaxHeight = (GraphicsHelpers.GetContentHeight() - 100) / 2; lbManufacturers.ItemContainerStyleSelector = new ListBoxItemStyleSelector(); panelScroller.Children.Add(lbManufacturers); TextBlock txtUsedHeader = new TextBlock(); txtUsedHeader.Uid = "1002"; txtUsedHeader.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; txtUsedHeader.SetResourceReference(TextBlock.BackgroundProperty, "HeaderBackgroundBrush2"); txtUsedHeader.FontWeight = FontWeights.Bold; txtUsedHeader.Margin = new Thickness(0, 10, 0, 0); txtUsedHeader.Text = Translator.GetInstance().GetString("PageAirliners", txtUsedHeader.Uid); airlinersPanel.Children.Add(txtUsedHeader); WrapPanel airlinerTypePanel = new WrapPanel(); airlinersPanel.Children.Add(airlinerTypePanel); RadioButton rbPassengerAirliner = new RadioButton(); rbPassengerAirliner.GroupName = "AirlinerRouteType"; rbPassengerAirliner.IsChecked = true; rbPassengerAirliner.Tag = AirlinerType.TypeOfAirliner.Passenger; rbPassengerAirliner.Checked += rbRouteType_Checked; rbPassengerAirliner.Content = Translator.GetInstance().GetString("PageAirliners", "1003"); airlinerTypePanel.Children.Add(rbPassengerAirliner); RadioButton rbCargoAirliner = new RadioButton(); rbCargoAirliner.GroupName = "AirlinerRouteType"; rbCargoAirliner.Margin = new Thickness(5, 0, 0, 0); rbCargoAirliner.Tag = AirlinerType.TypeOfAirliner.Cargo; rbCargoAirliner.Checked += rbRouteType_Checked; rbCargoAirliner.Content = Translator.GetInstance().GetString("PageAirliners", "1004"); airlinerTypePanel.Children.Add(rbCargoAirliner); ContentControl lblUsedHeader = new ContentControl(); lblUsedHeader.ContentTemplate = this.Resources["AirlinersUsedHeader"] as DataTemplate; lblUsedHeader.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; airlinersPanel.Children.Add(lblUsedHeader); lbUsedAirliners = new ListBox(); lbUsedAirliners.ItemTemplate = this.Resources["AirlinerUsedItem"] as DataTemplate; lbUsedAirliners.Height = (GraphicsHelpers.GetContentHeight() - 150) / 2; lbUsedAirliners.ItemContainerStyleSelector = new ListBoxItemStyleSelector(); airlinersPanel.Children.Add(lbUsedAirliners); Button btnSearch = new Button(); btnSearch.Uid = "109"; btnSearch.SetResourceReference(Button.StyleProperty, "RoundedButton"); btnSearch.Height = Double.NaN; btnSearch.Width = Double.NaN; btnSearch.IsDefault = true; btnSearch.Content = Translator.GetInstance().GetString("General", btnSearch.Uid); btnSearch.SetResourceReference(Button.BackgroundProperty, "ButtonBrush"); btnSearch.Margin = new Thickness(0, 5, 0, 0); btnSearch.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; btnSearch.Click += new RoutedEventHandler(btnSearch_Click); airlinersPanel.Children.Add(btnSearch); showUsedAirliners(Airliners.GetAirlinersForSale()); StandardContentPanel panelContent = new StandardContentPanel(); panelContent.setContentPage(airlinersPanel, StandardContentPanel.ContentLocation.Left); sideFrame = new Frame(); panelContent.setContentPage(sideFrame, StandardContentPanel.ContentLocation.Right); base.setContent(panelContent); base.setHeaderContent(this.Title); showPage(this); showManufacturers(); }
public PageSearchAirliners(PageAirliners parent) { this.ParentPage = parent; InitializeComponent(); StackPanel mainPanel = new StackPanel(); mainPanel.Margin = new Thickness(0, 0, 5, 0); TextBlock txtHeader = new TextBlock(); txtHeader.Uid = "1001"; txtHeader.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; txtHeader.SetResourceReference(TextBlock.BackgroundProperty, "HeaderBackgroundBrush2"); txtHeader.FontWeight = FontWeights.Bold; txtHeader.Text = Translator.GetInstance().GetString("PageSearchAirliners", txtHeader.Uid); mainPanel.Children.Add(txtHeader); ListBox lbSearch = new ListBox(); lbSearch.ItemContainerStyleSelector = new ListBoxItemStyleSelector(); lbSearch.SetResourceReference(ListBox.ItemTemplateProperty, "QuickInfoItem"); mainPanel.Children.Add(lbSearch); cbManufacturers = new ComboBox(); cbManufacturers.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbManufacturers.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbManufacturers.ItemTemplate = this.Resources["ManufacturerItem"] as DataTemplate; cbManufacturers.Width = 200; lbSearch.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageSearchAirliners", "1006"), cbManufacturers)); cbManufacturers.Items.Add(new Manufacturer("All", "All", null)); (from a in Airliners.GetAirlinersForSale() orderby a.Type.Manufacturer.Name select a.Type.Manufacturer).Distinct().ToList().ForEach(m => cbManufacturers.Items.Add(m)); // (from a in AirlinerTypes.GetAllTypes() where a.Produced.From <= GameObject.GetInstance().GameTime && a.Produced.To >= GameObject.GetInstance().GameTime orderby a.Manufacturer.Name select a.Manufacturer).Distinct().ToList().ForEach(m => cbManufacturers.Items.Add(m)); cbManufacturers.SelectedIndex = 0; WrapPanel panelRange = new WrapPanel(); cbCompareRange = new ComboBox(); createCompareComboBox(cbCompareRange); panelRange.Children.Add(cbCompareRange); cbRange = new ComboBox(); cbRange.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbRange.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbRange.Width = 150; panelRange.Children.Add(cbRange); for (int i = 500; i < 12500; i += 500) { addRangeItem(i); } cbRange.SelectedIndex = cbRange.Items.Count - 1; lbSearch.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageSearchAirliners", "1002"), panelRange)); WrapPanel panelCapacity = new WrapPanel(); cbCompareCapacity = new ComboBox(); createCompareComboBox(cbCompareCapacity); panelCapacity.Children.Add(cbCompareCapacity); cbCapacity = new ComboBox(); cbCapacity.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbCapacity.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbCapacity.Width = 150; panelCapacity.Children.Add(cbCapacity); for (int i = 50; i < 500; i += 50) { addCapacityItem(i); } cbCapacity.SelectedIndex = cbCapacity.Items.Count - 1; lbSearch.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageSearchAirliners", "1003"), panelCapacity)); WrapPanel panelPrice = new WrapPanel(); cbComparePrice = new ComboBox(); createCompareComboBox(cbComparePrice); panelPrice.Children.Add(cbComparePrice); cbPrice = new ComboBox(); cbPrice.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbPrice.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbPrice.Width = 150; panelPrice.Children.Add(cbPrice); addPriceItem(1000000); addPriceItem(5000000); addPriceItem(10000000); addPriceItem(25000000); addPriceItem(50000000); addPriceItem(100000000); addPriceItem(250000000); cbPrice.SelectedIndex = cbPrice.Items.Count - 1; lbSearch.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageSearchAirliners", "1004"), panelPrice)); WrapPanel panelYear = new WrapPanel(); cbCompareYear = new ComboBox(); createCompareComboBox(cbCompareYear); panelYear.Children.Add(cbCompareYear); cbYear = new ComboBox(); cbYear.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbYear.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbYear.Width = 150; panelYear.Children.Add(cbYear); int startYear = (from a in Airliners.GetAirlinersForSale() select a.BuiltDate.Year).Min(); for (int i = GameObject.GetInstance().GameTime.Year; i >= startYear; i--) { cbYear.Items.Add(i); } cbYear.SelectedItem = startYear; lbSearch.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageSearchAirliners", "1005"), panelYear)); Button btnSearch = new Button(); btnSearch.Uid = "109"; btnSearch.SetResourceReference(Button.StyleProperty, "RoundedButton"); btnSearch.Height = Double.NaN; btnSearch.Width = Double.NaN; btnSearch.IsDefault = true; btnSearch.Content = Translator.GetInstance().GetString("General", btnSearch.Uid); btnSearch.SetResourceReference(Button.BackgroundProperty, "ButtonBrush"); btnSearch.Margin = new Thickness(0, 5, 0, 0); btnSearch.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; btnSearch.Click += new RoutedEventHandler(btnSearch_Click); mainPanel.Children.Add(btnSearch); this.Content = mainPanel; }
private void btnSearch_Click(object sender, RoutedEventArgs e) { Manufacturer manufacturer = ((Manufacturer)cbManufacturers.SelectedItem); List <Airliner> airliners = manufacturer.Name == "All" ? Airliners.GetAirlinersForSale() : Airliners.GetAirlinersForSale(a => a.Type.Manufacturer == manufacturer); CompareType rangeCompare = (CompareType)(((ComboBoxItem)cbCompareRange.SelectedItem).Tag); CompareType priceCompare = (CompareType)(((ComboBoxItem)cbComparePrice.SelectedItem).Tag); CompareType capacityCompare = (CompareType)(((ComboBoxItem)cbCompareCapacity.SelectedItem).Tag); CompareType yearCompare = (CompareType)(((ComboBoxItem)cbCompareYear.SelectedItem).Tag); int capacity = (int)(((ComboBoxItem)cbCapacity.SelectedItem).Tag); long price = (long)(((ComboBoxItem)cbPrice.SelectedItem).Tag); double range = (double)(((ComboBoxItem)cbRange.SelectedItem).Tag); if (AppSettings.GetInstance().getLanguage().Unit == TheAirline.Model.GeneralModel.Language.UnitSystem.Imperial) { range = MathHelpers.MilesToKM(range); } int year = (int)(cbYear.SelectedItem); switch (rangeCompare) { case CompareType.Equal_to: airliners = airliners.FindAll(a => a.Type.Range == range); break; case CompareType.Larger_than: airliners = airliners.FindAll(a => a.Type.Range > range); break; case CompareType.Lower_than: airliners = airliners.FindAll(a => a.Type.Range < range); break; } switch (priceCompare) { case CompareType.Equal_to: airliners = airliners.FindAll(a => a.getPrice() == price); break; case CompareType.Larger_than: airliners = airliners.FindAll(a => a.getPrice() > price); break; case CompareType.Lower_than: airliners = airliners.FindAll(a => a.getPrice() < price); break; } switch (capacityCompare) { case CompareType.Equal_to: airliners = airliners.FindAll(a => a.Type is AirlinerPassengerType && ((AirlinerPassengerType)a.Type).MaxSeatingCapacity == capacity); break; case CompareType.Larger_than: airliners = airliners.FindAll(a => a.Type is AirlinerPassengerType && ((AirlinerPassengerType)a.Type).MaxSeatingCapacity > capacity); break; case CompareType.Lower_than: airliners = airliners.FindAll(a => a.Type is AirlinerPassengerType && ((AirlinerPassengerType)a.Type).MaxSeatingCapacity < capacity); break; } switch (yearCompare) { case CompareType.Equal_to: airliners = airliners.FindAll(a => a.BuiltDate.Year == year); break; case CompareType.Larger_than: airliners = airliners.FindAll(a => a.BuiltDate.Year > year); break; case CompareType.Lower_than: airliners = airliners.FindAll(a => a.BuiltDate.Year < year); break; } this.ParentPage.showUsedAirliners(airliners); }