public PageNewGame() { OpponentType = OpponentSelect.Random; InitializeComponent(); popUpSplash = new Popup(); popUpSplash.Child = UICreator.CreateSplashWindow(); popUpSplash.Placement = PlacementMode.Center; popUpSplash.PlacementTarget = PageNavigator.MainWindow; popUpSplash.IsOpen = false; StackPanel panelContent = new StackPanel(); panelContent.Margin = new Thickness(10, 0, 10, 0); panelContent.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; Panel panelLogo = UICreator.CreateGameLogo(); panelLogo.Margin = new Thickness(0, 0, 0, 20); panelContent.Children.Add(panelLogo); TextBlock txtHeader = new TextBlock(); txtHeader.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; txtHeader.SetResourceReference(TextBlock.BackgroundProperty, "HeaderBackgroundBrush2"); txtHeader.FontWeight = FontWeights.Bold; txtHeader.Uid = "1001"; txtHeader.Text = Translator.GetInstance().GetString("PageNewGame", txtHeader.Uid); panelContent.Children.Add(txtHeader); lbContentBasics = new ListBox(); lbContentBasics.ItemContainerStyleSelector = new ListBoxItemStyleSelector(); lbContentBasics.SetResourceReference(ListBox.ItemTemplateProperty, "QuickInfoItem"); lbContentBasics.MaxHeight = GraphicsHelpers.GetContentHeight() / 2; txtNarrative = new TextBox(); txtNarrative.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; txtNarrative.VerticalAlignment = System.Windows.VerticalAlignment.Center; txtNarrative.Background = Brushes.Transparent; txtNarrative.TextWrapping = TextWrapping.Wrap; txtNarrative.FontStyle = FontStyles.Italic; txtNarrative.Width = 500; txtNarrative.Height = 100; txtNarrative.Uid = "1015"; txtNarrative.IsReadOnly = true; txtNarrative.Text = Translator.GetInstance().GetString("PageNewGame", txtNarrative.Uid); txtNarrative.Visibility = System.Windows.Visibility.Collapsed; panelContent.Children.Add(txtNarrative); panelContent.Children.Add(lbContentBasics); lbContentHuman = new ListBox(); lbContentHuman.Visibility = System.Windows.Visibility.Collapsed; lbContentHuman.SetResourceReference(ListBox.ItemTemplateProperty, "QuickInfoItem"); lbContentHuman.MaxHeight = GraphicsHelpers.GetContentHeight() / 2; lbContentHuman.Visibility = System.Windows.Visibility.Collapsed; panelContent.Children.Add(lbContentHuman); cbContinent = new ComboBox(); cbContinent.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbContinent.Width = 200; cbContinent.DisplayMemberPath = "Name"; cbContinent.SelectedValuePath = "Name"; cbContinent.Items.Add(new Continent("100", "All continents")); foreach (Continent continent in Continents.GetContinents().OrderBy(c => c.Name)) { cbContinent.Items.Add(continent); } cbContinent.SelectionChanged += cbContinent_SelectionChanged; lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1022"), cbContinent)); cbRegion = new ComboBox(); cbRegion.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbRegion.Width = 200; cbRegion.DisplayMemberPath = "Name"; cbRegion.SelectedValuePath = "Name"; cbRegion.Items.Add(Regions.GetRegion("100")); foreach (Region region in Regions.GetRegions().FindAll(r => Airlines.GetAirlines(r).Count > 0).OrderBy(r => r.Name)) { cbRegion.Items.Add(region); } cbRegion.SelectionChanged += new SelectionChangedEventHandler(cbRegion_SelectionChanged); lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1012"), cbRegion)); // chs, 2011-19-10 added for the possibility of creating a new airline WrapPanel panelAirline = new WrapPanel(); cbAirline = new ComboBox(); cbAirline.SetResourceReference(ComboBox.ItemTemplateProperty, "AirlineLogoItem"); cbAirline.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbAirline.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbAirline.SelectionChanged += new SelectionChangedEventHandler(cbAirline_SelectionChanged); cbAirline.Width = 200; List <Airline> airlines = Airlines.GetAllAirlines(); airlines.Sort((delegate(Airline a1, Airline a2) { return(a1.Profile.Name.CompareTo(a2.Profile.Name)); })); cbAirline.ItemsSource = airlines; panelAirline.Children.Add(cbAirline); Button btnAddAirline = new Button(); btnAddAirline.Margin = new Thickness(5, 0, 0, 0); btnAddAirline.Background = Brushes.Transparent; btnAddAirline.Click += new RoutedEventHandler(btnAddAirline_Click); Image imgAddAirline = new Image(); imgAddAirline.Source = new BitmapImage(new Uri(@"/Data/images/add.png", UriKind.RelativeOrAbsolute)); imgAddAirline.Height = 16; RenderOptions.SetBitmapScalingMode(imgAddAirline, BitmapScalingMode.HighQuality); btnAddAirline.Content = imgAddAirline; panelAirline.Children.Add(btnAddAirline); lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1002"), panelAirline)); txtIATA = UICreator.CreateTextBlock(""); lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1003"), txtIATA)); txtAirlineType = UICreator.CreateTextBlock(""); lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1021"), txtAirlineType)); StackPanel panelCountry = new StackPanel(); cbCountry = new ComboBox(); cbCountry.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbCountry.SetResourceReference(ComboBox.ItemTemplateProperty, "CountryFlagLongItem"); cbCountry.Width = 150; cbCountry.SelectionChanged += cbCountry_SelectionChanged; panelCountry.Children.Add(cbCountry); cbLocalCurrency = new CheckBox(); cbLocalCurrency.FlowDirection = System.Windows.FlowDirection.RightToLeft; cbLocalCurrency.Content = Translator.GetInstance().GetString("PageNewGame", "1014"); cbLocalCurrency.VerticalAlignment = System.Windows.VerticalAlignment.Bottom; cbLocalCurrency.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; panelCountry.Children.Add(cbLocalCurrency); lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1004"), panelCountry)); txtName = new TextBox(); txtName.Background = Brushes.Transparent; txtName.BorderBrush = Brushes.Black; txtName.Width = 200; lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1005"), txtName)); // chs, 2011-19-10 added to show the airline color airlineColorRect = new Rectangle(); airlineColorRect.Width = 40; airlineColorRect.Height = 20; airlineColorRect.StrokeThickness = 1; airlineColorRect.Stroke = Brushes.Black; airlineColorRect.Fill = new AirlineBrushConverter().Convert(Airlines.GetAirline("ZA")) as Brush; airlineColorRect.Margin = new Thickness(0, 2, 0, 2); lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1006"), airlineColorRect)); cbAirport = new ComboBox(); cbAirport.SetResourceReference(ComboBox.ItemTemplateProperty, "AirportCountryItem"); cbAirport.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbAirport.IsSynchronizedWithCurrentItem = true; cbAirport.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbAirport.SelectionChanged += new SelectionChangedEventHandler(cbAirports_SelectionChanged); List <Airport> airportsList = Airports.GetAllAirports(); airportsView = CollectionViewSource.GetDefaultView(airportsList); airportsView.SortDescriptions.Add(new SortDescription("Profile.Name", ListSortDirection.Ascending)); cbAirport.ItemsSource = airportsView; lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1007"), cbAirport)); cbStartYear = new ComboBox(); cbStartYear.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbStartYear.Width = 60; for (int i = GameObject.StartYear; i < DateTime.Now.Year + 2; i++) { cbStartYear.Items.Add(i); } cbStartYear.SelectionChanged += new SelectionChangedEventHandler(cbStartYear_SelectionChanged); lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1008"), cbStartYear)); cbTimeZone = new ComboBox(); cbTimeZone.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbTimeZone.Width = 300; cbTimeZone.DisplayMemberPath = "DisplayName"; cbTimeZone.SelectedValuePath = "DisplayName"; foreach (GameTimeZone gtz in TimeZones.GetTimeZones()) { cbTimeZone.Items.Add(gtz); } cbTimeZone.SelectedItem = TimeZones.GetTimeZones().Find(delegate(GameTimeZone gtz) { return(gtz.UTCOffset == new TimeSpan(0, 0, 0)); }); lbContentHuman.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1009"), cbTimeZone)); cbFocus = new ComboBox(); cbFocus.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbFocus.Width = 100; foreach (Airline.AirlineFocus focus in Enum.GetValues(typeof(Airline.AirlineFocus))) { cbFocus.Items.Add(focus); } cbFocus.SelectedIndex = 0; lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1013"), cbFocus)); WrapPanel panelDifficulty = new WrapPanel(); cbDifficulty = new ComboBox(); cbDifficulty.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbDifficulty.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbDifficulty.Width = 100; cbDifficulty.DisplayMemberPath = "Name"; cbDifficulty.SelectedValuePath = "Name"; foreach (DifficultyLevel difficulty in DifficultyLevels.GetDifficultyLevels()) { cbDifficulty.Items.Add(difficulty); } cbDifficulty.SelectedIndex = 0; panelDifficulty.Children.Add(cbDifficulty); Button btnAddDifficulty = new Button(); btnAddDifficulty.Margin = new Thickness(5, 0, 0, 0); btnAddDifficulty.Background = Brushes.Transparent; btnAddDifficulty.Click += new RoutedEventHandler(btnAddDifficulty_Click); Image imgAddDifficulty = new Image(); imgAddDifficulty.Source = new BitmapImage(new Uri(@"/Data/images/add.png", UriKind.RelativeOrAbsolute)); imgAddDifficulty.Height = 16; RenderOptions.SetBitmapScalingMode(imgAddDifficulty, BitmapScalingMode.HighQuality); btnAddDifficulty.Content = imgAddDifficulty; panelDifficulty.Children.Add(btnAddDifficulty); lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1011"), panelDifficulty)); WrapPanel panelOpponents = new WrapPanel(); cbOpponents = new ComboBox(); cbOpponents.SetResourceReference(ComboBox.StyleProperty, "ComboBoxTransparentStyle"); cbOpponents.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; cbOpponents.Width = 50; cbOpponents.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Right; for (int i = 0; i < Airlines.GetAllAirlines().Count; i++) { cbOpponents.Items.Add(i); } cbOpponents.SelectedIndex = 3; panelOpponents.Children.Add(cbOpponents); cbSameRegion = new CheckBox(); cbSameRegion.FlowDirection = System.Windows.FlowDirection.RightToLeft; cbSameRegion.Content = Translator.GetInstance().GetString("PageNewGame", "1017"); cbSameRegion.VerticalAlignment = System.Windows.VerticalAlignment.Bottom; cbSameRegion.Margin = new Thickness(5, 0, 0, 0); panelOpponents.Children.Add(cbSameRegion); lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1010"), panelOpponents)); WrapPanel panelOpponentSelect = new WrapPanel(); RadioButton rbRandomOpponents = new RadioButton(); rbRandomOpponents.IsChecked = true; rbRandomOpponents.GroupName = "Opponent"; rbRandomOpponents.Content = Translator.GetInstance().GetString("PageNewGame", "1018"); rbRandomOpponents.Checked += rbRandomOpponents_Checked; panelOpponentSelect.Children.Add(rbRandomOpponents); RadioButton rbSelectOpponents = new RadioButton(); rbSelectOpponents.GroupName = "Opponent"; rbSelectOpponents.Content = Translator.GetInstance().GetString("PageNewGame", "1019"); rbSelectOpponents.Checked += rbSelectOpponents_Checked; rbSelectOpponents.Margin = new Thickness(5, 0, 0, 0); panelOpponentSelect.Children.Add(rbSelectOpponents); lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1020"), panelOpponentSelect)); cbDayTurnEnabled = new CheckBox(); cbDayTurnEnabled.VerticalAlignment = System.Windows.VerticalAlignment.Bottom; cbDayTurnEnabled.IsChecked = true; lbContentBasics.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageNewGame", "1016"), cbDayTurnEnabled)); WrapPanel panelButtons = new WrapPanel(); panelButtons.Margin = new Thickness(0, 5, 0, 0); panelContent.Children.Add(panelButtons); btnCreate = new Button(); btnCreate.SetResourceReference(Button.StyleProperty, "RoundedButton"); btnCreate.Click += new RoutedEventHandler(btnCreate_Click); btnCreate.Height = Double.NaN; btnCreate.Width = Double.NaN; btnCreate.Uid = "203"; btnCreate.Content = Translator.GetInstance().GetString("PageNewGame", btnCreate.Uid); btnCreate.SetResourceReference(Button.BackgroundProperty, "ButtonBrush"); panelButtons.Children.Add(btnCreate); btnBack = new Button(); btnBack.SetResourceReference(Button.StyleProperty, "RoundedButton"); btnBack.Height = Double.NaN; btnBack.Width = Double.NaN; btnBack.Uid = "119"; btnBack.Content = Translator.GetInstance().GetString("General", btnBack.Uid); btnBack.SetResourceReference(Button.BackgroundProperty, "ButtonBrush"); btnBack.Margin = new Thickness(5, 0, 0, 0); btnBack.Click += btnBack_Click; btnBack.Visibility = System.Windows.Visibility.Collapsed; panelButtons.Children.Add(btnBack); Button btnExit = new Button(); btnExit.SetResourceReference(Button.StyleProperty, "RoundedButton"); btnExit.Height = double.NaN; btnExit.Width = double.NaN; btnExit.Uid = "202"; btnExit.Content = Translator.GetInstance().GetString("PageNewGame", btnExit.Uid); btnExit.Margin = new Thickness(5, 0, 0, 0); btnExit.Click += new RoutedEventHandler(btnCancel_Click); btnExit.SetResourceReference(Button.BackgroundProperty, "ButtonBrush"); panelButtons.Children.Add(btnExit); base.setTopMenu(new PageTopMenu()); base.hideNavigator(); base.hideBottomMenu(); base.setContent(panelContent); base.setHeaderContent(Translator.GetInstance().GetString("PageNewGame", "200")); cbStartYear.SelectedItem = DateTime.Now.Year; showPage(this); }
public PagePlayScenario() { InitializeComponent(); popUpSplash = new Popup(); popUpSplash.Child = UICreator.CreateSplashWindow(); popUpSplash.Placement = PlacementMode.Center; popUpSplash.PlacementTarget = PageNavigator.MainWindow; popUpSplash.IsOpen = false; StackPanel panelContent = new StackPanel(); panelContent.Margin = new Thickness(10, 0, 10, 0); panelContent.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; WrapPanel panelScenarios = new WrapPanel(); panelContent.Children.Add(panelScenarios); StackPanel panelSelectScenarios = new StackPanel(); panelScenarios.Children.Add(panelSelectScenarios); TextBlock txtHeader = new TextBlock(); txtHeader.Width = 200; txtHeader.SetResourceReference(TextBlock.BackgroundProperty, "HeaderBackgroundBrush2"); txtHeader.FontWeight = FontWeights.Bold; txtHeader.Uid = "1001"; txtHeader.TextAlignment = TextAlignment.Center; txtHeader.Text = Translator.GetInstance().GetString("PagePlayScenario", txtHeader.Uid); panelSelectScenarios.Children.Add(txtHeader); ListBox lbScenarios = new ListBox(); lbScenarios.ItemContainerStyleSelector = new ListBoxItemStyleSelector(); lbScenarios.Height = GraphicsHelpers.GetContentHeight() / 2; lbScenarios.ItemTemplate = this.Resources["ScenarioItem"] as DataTemplate; lbScenarios.Width = 200; foreach (Scenario scenario in Scenarios.GetScenarios()) { lbScenarios.Items.Add(scenario); } panelSelectScenarios.Children.Add(lbScenarios); panelScenarios.Children.Add(createScenarioPanel()); Button btnExit = new Button(); btnExit.SetResourceReference(Button.StyleProperty, "RoundedButton"); btnExit.Height = double.NaN; btnExit.Width = double.NaN; btnExit.Uid = "200"; btnExit.Content = Translator.GetInstance().GetString("PagePlayScenario", btnExit.Uid); btnExit.Margin = new Thickness(0, 10, 0, 0); btnExit.Click += btnExit_Click; btnExit.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; btnExit.SetResourceReference(Button.BackgroundProperty, "ButtonBrush"); panelContent.Children.Add(btnExit); base.setTopMenu(new PageTopMenu()); base.hideNavigator(); base.hideBottomMenu(); base.setContent(panelContent); base.setHeaderContent(Translator.GetInstance().GetString("PagePlayScenario", "1000")); showPage(this); }