feat: add opacity slider
This commit is contained in:
@@ -96,6 +96,8 @@ internal sealed class ChatLog : IUiComponent {
|
||||
- ImGui.GetStyle().ItemSpacing.Y * 4;
|
||||
}
|
||||
|
||||
private unsafe ImGuiViewport* _lastViewport;
|
||||
|
||||
public unsafe void Draw() {
|
||||
var flags = ImGuiWindowFlags.None;
|
||||
if (!this.Ui.Plugin.Config.CanMove) {
|
||||
@@ -110,11 +112,18 @@ internal sealed class ChatLog : IUiComponent {
|
||||
flags |= ImGuiWindowFlags.NoTitleBar;
|
||||
}
|
||||
|
||||
if (this._lastViewport == ImGuiHelpers.MainViewport.NativePtr) {
|
||||
ImGui.SetNextWindowBgAlpha(this.Ui.Plugin.Config.WindowAlpha);
|
||||
}
|
||||
|
||||
if (!ImGui.Begin($"{this.Ui.Plugin.Name}##chat", flags)) {
|
||||
this._lastViewport = ImGui.GetWindowViewport().NativePtr;
|
||||
ImGui.End();
|
||||
return;
|
||||
}
|
||||
|
||||
this._lastViewport = ImGui.GetWindowViewport().NativePtr;
|
||||
|
||||
var currentTab = this.Ui.Plugin.Config.SidebarTabView
|
||||
? this.DrawTabSidebar()
|
||||
: this.DrawTabBar();
|
||||
|
||||
@@ -21,7 +21,18 @@ internal sealed class Display : ISettingsTab {
|
||||
ImGui.Checkbox("More compact modern layout", ref this.Mutable.MoreCompactPretty);
|
||||
}
|
||||
|
||||
ImGui.DragFloat("Font size", ref this.Mutable.FontSize, .0125f, 12f, 36f, "%.1f");
|
||||
ImGui.DragFloat("Font size", ref this.Mutable.FontSize, .0125f, 12f, 36f, $"{this.Mutable.FontSize:N1}");
|
||||
if (ImGui.DragFloat("Window opacity", ref this.Mutable.WindowAlpha, .0025f, 0f, 1f, $"{this.Mutable.WindowAlpha * 100f:N2}%%")) {
|
||||
switch (this.Mutable.WindowAlpha) {
|
||||
case > 1f and <= 100f:
|
||||
this.Mutable.WindowAlpha /= 100f;
|
||||
break;
|
||||
case < 0f or > 100f:
|
||||
this.Mutable.WindowAlpha = 1f;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
ImGui.Checkbox("Allow moving main window", ref this.Mutable.CanMove);
|
||||
ImGui.Checkbox("Allow resizing main window", ref this.Mutable.CanResize);
|
||||
ImGui.Checkbox("Show title bar for main window", ref this.Mutable.ShowTitleBar);
|
||||
|
||||
Reference in New Issue
Block a user