Skip to content

Commit bc798c1

Browse files
committed
Fix Mod menu textfield not scaling with resolution
# Conflicts: # MOD.Scripts.UI/MODMenuResolution.cs
1 parent d4f26cb commit bc798c1

File tree

3 files changed

+22
-3
lines changed

3 files changed

+22
-3
lines changed

MOD.Scripts.UI/MODMenuCommon.cs

+9
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,15 @@ public static bool Button(GUIContent guiContent, bool selected = false, bool stl
6262
return false;
6363
}
6464
}
65+
public static string TextField(string text, params GUILayoutOption[] options)
66+
{
67+
return GUILayout.TextField(text, MODStyleManager.OnGUIInstance.Group.textField, options);
68+
}
69+
70+
public static string TextField(string text, int maxLength, params GUILayoutOption[] options)
71+
{
72+
return GUILayout.TextField(text, maxLength, MODStyleManager.OnGUIInstance.Group.textField, options);
73+
}
6574

6675
public static int GetGlobal(string flagName) => BurikoMemory.Instance.GetGlobalFlag(flagName).IntValue();
6776
public static void SetGlobal(string flagName, int flagValue) => BurikoMemory.Instance.SetGlobalFlag(flagName, flagValue);

MOD.Scripts.UI/MODMenuResolution.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public void OnGUI()
5353
if (Button(new GUIContent(Loc.MODMenuResolution_6, Loc.MODMenuResolution_7))) { SetAndSaveResolution(1080); } //1080p | Set resolution to 1920 x 1080
5454
if (Button(new GUIContent(Loc.MODMenuResolution_8, Loc.MODMenuResolution_9))) { SetAndSaveResolution(1440); } //1440p | Set resolution to 2560 x 1440
5555

56-
screenHeightString = GUILayout.TextField(screenHeightString);
56+
screenHeightString = TextField(screenHeightString);
5757
if (Button(new GUIContent(Loc.MODMenuResolution_10, Loc.MODMenuResolution_11))) //Set | Sets a custom resolution - mainly for windowed mode.\n\nHeight set automatically to maintain 16:9 aspect ratio.
5858
{
5959
if (int.TryParse(screenHeightString, out int new_height))
@@ -106,12 +106,12 @@ public void OnGUI()
106106

107107
GUILayout.BeginHorizontal();
108108
LabelRightAlign(Loc.MODMenuResolution_21); //Width:
109-
fullscreenWidthOverrideString = GUILayout.TextField(fullscreenWidthOverrideString, 5);
109+
fullscreenWidthOverrideString = TextField(fullscreenWidthOverrideString, 5);
110110
GUILayout.EndHorizontal();
111111

112112
GUILayout.BeginHorizontal();
113113
LabelRightAlign(Loc.MODMenuResolution_22); //Height:
114-
fullscreenHeightOverrideString = GUILayout.TextField(fullscreenHeightOverrideString, 5);
114+
fullscreenHeightOverrideString = TextField(fullscreenHeightOverrideString, 5);
115115
GUILayout.EndHorizontal();
116116

117117

MOD.Scripts.UI/MODStyleManager.cs

+10
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ public class StyleGroup
2929
public GUIStyle upperLeftHeadingLabel;
3030
public GUIStyle bigToastLabelStyle; // Styles used for Toasts (text popups)
3131
public GUIStyle smallToastLabelStyle;
32+
public GUIStyle textField;
3233
}
3334

3435
// Styles used for the Mod menu
@@ -228,6 +229,14 @@ private StyleGroup GenerateWidgetStyles(int menuWidth, int menuHeight, float gui
228229
alignment = TextAnchor.MiddleRight,
229230
};
230231

232+
// Textfield style
233+
GUIStyle textFieldStyle = new GUIStyle(GUI.skin.textField)
234+
{
235+
fontSize = Mathf.RoundToInt(guiScale * baseFontSize),
236+
margin = margin,
237+
padding = padding,
238+
};
239+
231240
// Heading text style
232241
GUIStyle headingLabelStyle = new GUIStyle(labelStyle)
233242
{
@@ -285,6 +294,7 @@ private StyleGroup GenerateWidgetStyles(int menuWidth, int menuHeight, float gui
285294
toolTipShrinkage = toolTipShrinkage,
286295
bigToastLabelStyle = bigToastLabelStyle,
287296
smallToastLabelStyle = smallToastLabelStyle,
297+
textField = textFieldStyle,
288298
};
289299
}
290300
}

0 commit comments

Comments
 (0)