This commit is contained in:
2025-04-14 23:22:38 +02:00
parent 72b8a37345
commit 1e190fe94b
166 changed files with 2989 additions and 687 deletions

View File

@@ -0,0 +1,105 @@
using RebootKit.Engine.Foundation;
using RebootKit.Engine.Services.Console;
using RebootKit.Engine.UI;
using UnityEngine;
using UnityEngine.UIElements;
namespace RebootKitEditor.RebootWindow {
public class ConfigVarsView : IView {
public void Dispose() {
}
public VisualElement Build() {
ScrollView scrollView = new() {
style = {
flexGrow = 1
}
};
ConfigVarsContainer.Init();
foreach (ConfigVar cvar in ConfigVarsContainer.All()) {
VisualElement varContainer = new() {
style = {
marginBottom = 8,
paddingBottom = 8,
borderBottomWidth = 1,
borderBottomColor = new Color(0.3f, 0.3f, 0.3f),
}
};
VisualElement valueContainer = new() {
style = {
flexDirection = FlexDirection.Row
}
};
varContainer.Add(valueContainer);
Label nameLabel = new(cvar.name) {
style = {
color = new Color(0.7f, 0.9f, 0.9f),
unityFontStyleAndWeight = FontStyle.Bold
}
};
valueContainer.Add(nameLabel);
Label valueLabel = new(cvar.ToString()) {
style = {
color = RTheme.s_FirstColor
}
};
valueContainer.Add(valueLabel);
if (cvar.flags.HasFlag(CVarFlags.User)) {
valueContainer.Add(CreateFlagLabel("User", new Color(0.36f, 0.41f, 0.42f)));
}
if (cvar.flags.HasFlag(CVarFlags.Client)) {
valueContainer.Add(CreateFlagLabel("Client", new Color(0.81f, 0.29f, 0.15f)));
}
if (cvar.flags.HasFlag(CVarFlags.Server)) {
valueContainer.Add(CreateFlagLabel("Server", new Color(0.18f, 0.64f, 0.18f)));
}
if (cvar.flags.HasFlag(CVarFlags.ReadOnly)) {
valueContainer.Add(CreateFlagLabel("ReadOnly", new Color(0.13f, 0.07f, 0.47f)));
}
Label descLabel = new(cvar.description) {
style = {
fontSize = 10,
color = new Color(0.7f, 0.7f, 0.7f)
}
};
varContainer.Add(descLabel);
scrollView.Add(varContainer);
}
return scrollView;
}
VisualElement CreateFlagLabel(string text, Color color) {
Label label = new(text) {
style = {
fontSize = 12,
color = new Color(0.7f, 0.7f, 0.7f),
backgroundColor = color,
paddingLeft = 4,
paddingRight = 4,
paddingTop = 4,
paddingBottom = 4,
marginLeft = 4,
marginRight = 4,
borderTopLeftRadius = 8,
borderTopRightRadius = 8,
borderBottomLeftRadius = 8,
borderBottomRightRadius = 8,
unityFontStyleAndWeight = FontStyle.Bold,
}
};
return label;
}
}
}