From 801491a190ded058fd955cc198bd224eb3f86fac Mon Sep 17 00:00:00 2001 From: Felix Salcher Date: Tue, 3 Jun 2025 11:36:41 +0200 Subject: [PATCH] add show and center options --- src/renderer/widgets/PasswordInputField.cpp | 5 ++--- src/renderer/widgets/PasswordInputField.hpp | 4 +++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/renderer/widgets/PasswordInputField.cpp b/src/renderer/widgets/PasswordInputField.cpp index fcf47e2..b2715bc 100644 --- a/src/renderer/widgets/PasswordInputField.cpp +++ b/src/renderer/widgets/PasswordInputField.cpp @@ -260,8 +260,7 @@ bool CPasswordInputField::draw(const SRenderData& data) { g_pRenderer->renderRect(inputFieldBox, innerCol, ROUND); if (!hiddenInputState.enabled) { - - if (false) { + if (!password.show) { const int RECTPASSSIZE = std::nearbyint(inputFieldBox.h * dots.size * 0.5f) * 2.f; Vector2D passSize{RECTPASSSIZE, RECTPASSSIZE}; int passSpacing = std::floor(passSize.x * dots.spacing); @@ -331,7 +330,7 @@ bool CPasswordInputField::draw(const SRenderData& data) { if (password.asset != nullptr) { auto size = password.asset->texture.m_vSize; - double xstart = inputFieldBox.w / 2.0 - size.x / 2.0; + double xstart = password.center ? inputFieldBox.w / 2.0 - size.x / 2.0 : inputFieldBox.h / 2.0 - size.y / 2.0; Vector2D dotPosition = inputFieldBox.pos() + Vector2D{xstart, (inputFieldBox.h / 2.0) - (size.y / 2.0)}; CBox box{dotPosition, Vector2D(size.x, size.y)}; diff --git a/src/renderer/widgets/PasswordInputField.hpp b/src/renderer/widgets/PasswordInputField.hpp index 648210b..150d17a 100644 --- a/src/renderer/widgets/PasswordInputField.hpp +++ b/src/renderer/widgets/PasswordInputField.hpp @@ -71,7 +71,9 @@ class CPasswordInputField : public IWidget { } dots; struct { - float size = 0; + bool show = true; + bool center = false; + float size = 0; std::string content; std::string resourceID; SPreloadedAsset* asset = nullptr;