public StarSystemScene(Action systemClosedHandler, EmpyPlanetView emptyPlanetView) { this.systemClosedHandler = systemClosedHandler; this.emptyPlanetView = emptyPlanetView; this.siteView = new ConstructionSiteView(); this.siteView.Position.ParentRelative(0, -1); this.AddElement(this.siteView); }
public StarSystemScene(Action systemClosedHandler) { this.systemClosedHandler = systemClosedHandler; this.siteView = new ConstructionSiteView(); this.siteView.Position.ParentRelative(0, -1); this.emptyPlanetView = new EmptyPlanetView(this.setupColonizationMarkers); this.emptyPlanetView.Position.ParentRelative(0, -1); this.starSelector = new SelectableImage <int>(StarSystemController.StarIndex) { ForgroundImage = GalaxyTextures.Get.SystemStar, SelectorImage = GalaxyTextures.Get.SelectedStar, SelectCallback = select, Padding = 24, }; starSelector.Position.FixedSize(400, 400).RelativeTo(this.StarAnchor); this.AddElement(starSelector); }
public StarSystemScene(Action systemClosedHandler) { this.systemClosedHandler = systemClosedHandler; this.siteView = new ConstructionSiteView(); this.siteView.Position.ParentRelative(0, -1); this.emptyPlanetView = new EmptyPlanetView(this.setupColonizationMarkers); this.emptyPlanetView.Position.ParentRelative(0, -1); var context = LocalizationManifest.Get.CurrentLanguage["FormMain"]; var returnButton = new GuiButton { ClickCallback = systemClosedHandler, BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ButtonHover, 9), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ButtonNormal, 9), Padding = 12, Text = context["Return"].Text(), TextColor = Color.Black, TextHeight = 20 }; returnButton.Position.WrapContent().Then.ParentRelative(1, 1).WithMargins(10, 5); this.AddElement(returnButton); var starAnchor = new GuiAnchor(0, 0); this.AddAnchor(starAnchor); this.starSelector = new SelectableImage <int>(StarSystemController.StarIndex) { ForgroundImage = GalaxyTextures.Get.SystemStar, SelectorImage = GalaxyTextures.Get.SelectedStar, SelectCallback = select, Padding = 24, }; starSelector.Position.FixedSize(400, 400).RelativeTo(starAnchor); this.AddElement(starSelector); }
public GalaxyScene(IGalaxyViewListener galaxyViewListener, Action mainMenuCallback) { this.galaxyViewListener = galaxyViewListener; this.reportOpener = new OpenReportVisitor(showDevelopment, showResearch); var mainMenuButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.MainMenu, Padding = 4, ClickCallback = mainMenuCallback, Tooltip = new SimpleTooltip("GalaxyScene", "MainMenuTooltip") }; mainMenuButton.Position.FixedSize(36, 32).ParentRelative(-1, 1).WithMargins(5, 5); this.AddElement(mainMenuButton); this.fuelInfo = new GuiText { TextColor = Color.Yellow, TextHeight = 24, Tooltip = new SimpleTooltip("GalaxyScene", "FuelTooltip") }; this.fuelInfo.Position.WrapContent().Then.RelativeTo(mainMenuButton, 1, 0, -1, 0).WithMargins(20, 5); this.AddElement(this.fuelInfo); var designButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Design, PaddingX = 12, PaddingY = 4, ClickCallback = () => { using (var form = new FormShipDesignList(this.currentPlayer)) form.ShowDialog(); }, Tooltip = new SimpleTooltip("GalaxyScene", "DesignTooltip") }; designButton.Position.FixedSize(48, 32).RelativeTo(fuelInfo, 1, 0, -1, 0).WithMargins(20, 5); this.AddElement(designButton); var developmentButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Development, PaddingX = 12, PaddingY = 4, ClickCallback = this.showDevelopment, Tooltip = new SimpleTooltip("GalaxyScene", "DevelopmentTooltip") }; developmentButton.Position.FixedSize(48, 32).RelativeTo(designButton, 1, 0, -1, 0).WithMargins(5, 5); this.AddElement(developmentButton); var researchButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Research, PaddingX = 12, PaddingY = 4, ClickCallback = this.showResearch, Tooltip = new SimpleTooltip("GalaxyScene", "ResearchTooltip") }; researchButton.Position.FixedSize(48, 32).RelativeTo(developmentButton, 1, 0, -1, 0).WithMargins(5, 5); this.AddElement(researchButton); var diplomacyButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Diplomacy, PaddingX = 12, PaddingY = 4, ClickCallback = () => { using (var form = new FormRelations(this.currentPlayer)) form.ShowDialog(); }, Tooltip = new SimpleTooltip("GalaxyScene", "DiplomacyTooltip") }; diplomacyButton.Position.FixedSize(48, 32).RelativeTo(researchButton, 1, 0, -1, 0).WithMargins(5, 5); this.AddElement(diplomacyButton); var colonizationButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Colonization, PaddingX = 12, PaddingY = 4, ClickCallback = () => { using (var form = new FormColonization(this.currentPlayer)) form.ShowDialog(); }, Tooltip = new SimpleTooltip("GalaxyScene", "ColonizationTooltip") }; colonizationButton.Position.FixedSize(48, 32).RelativeTo(diplomacyButton, 1, 0, -1, 0).WithMargins(5, 5); this.AddElement(colonizationButton); var reportsButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Reports, PaddingX = 12, PaddingY = 4, ClickCallback = () => { using (var form = new FormReports(this.currentPlayer.Reports)) if (form.ShowDialog() == DialogResult.OK) { form.Result.Accept(this.reportOpener); } }, Tooltip = new SimpleTooltip("GalaxyScene", "ReportsTooltip") }; reportsButton.Position.FixedSize(48, 32).RelativeTo(colonizationButton, 1, 0, -1, 0).WithMargins(5, 5); this.AddElement(reportsButton); var stareaterButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Stareater, PaddingX = 12, PaddingY = 4, ClickCallback = () => { using (var form = new FormStareater(this.currentPlayer.Stareater)) form.ShowDialog(); }, Tooltip = new SimpleTooltip("GalaxyScene", "StareaterTooltip") }; stareaterButton.Position.FixedSize(48, 32).RelativeTo(reportsButton, 1, 0, -1, 0).WithMargins(5, 5); this.AddElement(stareaterButton); var libraryButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), ForgroundImage = GalaxyTextures.Get.Library, PaddingX = 12, PaddingY = 4, ClickCallback = () => { using (var form = new FormLibrary(this.currentPlayer.Library)) form.ShowDialog(); }, Tooltip = new SimpleTooltip("GalaxyScene", "LibraryTooltip") }; libraryButton.Position.FixedSize(48, 32).RelativeTo(stareaterButton, 1, 0, -1, 0).WithMargins(5, 5); this.AddElement(libraryButton); this.turnCounter = new GuiText { TextColor = Color.LightGray, TextHeight = 24 }; this.turnCounter.Position.WrapContent().Then.ParentRelative(1, 1).WithMargins(10, 5); this.AddElement(this.turnCounter); var turnButton = new GuiButton { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.EndTurnHover, 0), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.EndTurnNormal, 0), ClickCallback = this.galaxyViewListener.TurnEnded, Tooltip = new SimpleTooltip("GalaxyScene", "EndTurn") }; turnButton.Position.FixedSize(80, 80).ParentRelative(1, -1).WithMargins(10, 10); this.AddElement(turnButton); var radarToggle = new ToggleButton(SettingsWinforms.Get.ShowScanRange) { BackgroundHover = new BackgroundTexture(GalaxyTextures.Get.ToggleHover, 7), BackgroundNormal = new BackgroundTexture(GalaxyTextures.Get.ToggleNormal, 7), BackgroundToggled = new BackgroundTexture(GalaxyTextures.Get.ToggleToggled, 7), ForgroundImage = new BackgroundTexture(GalaxyTextures.Get.Radar, 0), ToggleCallback = this.toggleRadar, Tooltip = new SimpleTooltip("GalaxyScene", "RadarSwitchToolip") }; radarToggle.Position.FixedSize(24, 24).RelativeTo(turnButton, -1, 1, 1, 1).WithMargins(15, 0); this.AddElement(radarToggle); this.starInfo = new ConstructionSiteView(); this.starInfo.Position.ParentRelative(0, -1).WithMargins(0, 0); this.AddElement(this.starInfo); }