# HG changeset patch # User Alys Brooks # Date 2021-06-26 09:04:57 # Node ID e5d18e38a79f912c9eec3278b767043606627720 # Parent c6e295d52c0fb9177e536fb61fa4e3aa72a4d0ad Add italics. diff --git a/isometric-park-fna/Engines/ImGuiWindowBridgeEngine.cs b/isometric-park-fna/Engines/ImGuiWindowBridgeEngine.cs --- a/isometric-park-fna/Engines/ImGuiWindowBridgeEngine.cs +++ b/isometric-park-fna/Engines/ImGuiWindowBridgeEngine.cs @@ -50,7 +50,7 @@ public ImGuiWindowBridgeEngine(DebugWindow debugWindow, - ImFontPtr font) + ImFontPtr font, ImFontPtr italicFont) { this.messages = new List(); this.typeMessages = new List(); @@ -64,6 +64,7 @@ this.font = font; + this.italicFont = italicFont; this.debugWindow = debugWindow; @@ -109,9 +110,14 @@ foreach(var message in this.fontMessages) { this.font = debugWindow.addFont(message.fontName, - message.fontSize); + message.fontSize, false); debugWindow.setMonoFont(this.font); + + this.italicFont = debugWindow.addFont(message.fontName, + message.fontSize, true); + + debugWindow.setItalicFont(this.italicFont); } diff --git a/isometric-park-fna/FNAGame.cs b/isometric-park-fna/FNAGame.cs --- a/isometric-park-fna/FNAGame.cs +++ b/isometric-park-fna/FNAGame.cs @@ -232,7 +232,7 @@ WorldBuilder.AddEngine(new GameStateEngine()); WorldBuilder.AddEngine(this.simulation.BridgeEngine); WorldBuilder.AddEngine(new CameraBridgeEngine(this.camera)); - this.imGuiWindowBridgeEngine = new ImGuiWindowBridgeEngine(this.debugWindow, debugWindow.monoFont); + this.imGuiWindowBridgeEngine = new ImGuiWindowBridgeEngine(this.debugWindow, debugWindow.monoFont, debugWindow.italicFont); WorldBuilder.AddEngine(this.imGuiWindowBridgeEngine); WorldBuilder.AddEngine(new ContractStatusEngine(this.simulation)); @@ -493,7 +493,7 @@ if (keyboardCur.IsKeyDown(Keys.V) && keyboardPrev.IsKeyUp(Keys.V)) { // debugWindow.swap(); - debugWindow.setMonoFont(debugWindow.addFont("Roboto", 25)); + debugWindow.setMonoFont(debugWindow.addFont("Roboto", 25, false)); } #endregion misc_keys #endregion input diff --git a/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs b/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs --- a/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs +++ b/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs @@ -105,7 +105,7 @@ InGameMenu.Render(this.BridgeEngine.font, this.BridgeEngine, width); break; case Window.Options: - OptionsWindow.Render(this.BridgeEngine.font, this.italicFont, this.BridgeEngine, width); + OptionsWindow.Render(this.BridgeEngine.font, this.BridgeEngine.italicFont, this.BridgeEngine, width); break; default: break; diff --git a/isometric-park-fna/UI/DebugWindow.cs b/isometric-park-fna/UI/DebugWindow.cs --- a/isometric-park-fna/UI/DebugWindow.cs +++ b/isometric-park-fna/UI/DebugWindow.cs @@ -41,6 +41,9 @@ public static Dictionary fonts = new Dictionary{{"Roboto" , @"Content/Roboto-Regular.ttf"}, {"RobotoMedium" , @"Content/Roboto-Medium.ttf"}, {"Iosevka", @"Content/iosevka-term-extendedmedium.ttf"}}; + public static Dictionary italicFonts = new Dictionary{{"Roboto" , @"Content/Roboto-Italic.ttf"}, + {"RobotoMedium" , @"Content/Roboto-Medium.ttf"}, + {"Iosevka", @"Content/iosevka-term-extendedmediumitalic.ttf"}}; public DebugWindow(ImGuiRenderer _imGuiRenderer, GraphicsDevice graphicsDevice, ImageMap map) @@ -113,11 +116,19 @@ this.renderer.RebuildFontAtlas(); // Required so fonts are available for rendering } - public ImFontPtr addFont(String name, int size) + public ImFontPtr addFont(String name, int size, bool italic) { ImGuiIOPtr io = ImGui.GetIO(); + ImFontPtr font; - ImFontPtr font = io.Fonts.AddFontFromFileTTF(fonts[name], size); + if (italic) + { + font = io.Fonts.AddFontFromFileTTF(italicFonts[name], size); + } + else + { + font = io.Fonts.AddFontFromFileTTF(fonts[name], size); + } unsafe //god this sucks { ImFontConfigPtr config = ImGuiNative.ImFontConfig_ImFontConfig(); @@ -139,6 +150,11 @@ this.monoFont = font; } + public void setItalicFont(ImFontPtr font) + { + this.italicFont = font; + } + public static Texture2D CreateTexture(GraphicsDevice device, int width, int height, Func paint) { //initialize a texture diff --git a/isometric-park-fna/UI/OptionsWindow.cs b/isometric-park-fna/UI/OptionsWindow.cs --- a/isometric-park-fna/UI/OptionsWindow.cs +++ b/isometric-park-fna/UI/OptionsWindow.cs @@ -56,7 +56,7 @@ { ImGui.PopStyleColor(); } - ForestWindow.hadFocus = ImGui.IsWindowFocused(); + OptionsWindow.hadFocus = ImGui.IsWindowFocused(); ImGui.PushFont(italicFont); ImGui.Text("Graphics"); diff --git a/isometric-park-fna/isometric-park-fna.csproj b/isometric-park-fna/isometric-park-fna.csproj --- a/isometric-park-fna/isometric-park-fna.csproj +++ b/isometric-park-fna/isometric-park-fna.csproj @@ -160,6 +160,9 @@ PreserveNewest + + PreserveNewest +