From 16f50b808dab1b9ee9818bff5f91b6695ea0de1a Mon Sep 17 00:00:00 2001 From: jacob1 Date: Sun, 17 Mar 2024 15:14:22 -0400 Subject: [PATCH] Add limit onto various textboxes, now that textbox width no longer artificially limits it Save Name is limited to 50 characters by the db column, so stop it there Ambient Air Temp glitches out when it's too long, so limit to 9 Limit profile location to 40 to prevent spam / abuse Limit tags to 16 because that's the max the server accepts --- src/gui/options/OptionsView.cpp | 1 + src/gui/preview/PreviewView.cpp | 1 + src/gui/profile/ProfileActivity.cpp | 5 +++++ src/gui/save/ServerSaveActivity.cpp | 1 + src/gui/search/SearchView.cpp | 1 + src/gui/tags/TagsView.cpp | 1 + 6 files changed, 10 insertions(+) diff --git a/src/gui/options/OptionsView.cpp b/src/gui/options/OptionsView.cpp index 7f622e5c7..360e63143 100644 --- a/src/gui/options/OptionsView.cpp +++ b/src/gui/options/OptionsView.cpp @@ -137,6 +137,7 @@ OptionsView::OptionsView() : ui::Window(ui::Point(-1, -1), ui::Point(320, 340)) ambientAirTemp->SetDefocusCallback({ [this] { UpdateAirTemp(ambientAirTemp->GetText(), true); }}); + ambientAirTemp->SetLimit(9); scrollPanel->AddChild(ambientAirTemp); ambientAirTempPreview = new ui::Button(ui::Point(Size.X-31, currentY), ui::Point(16, 16), "", "Preview"); scrollPanel->AddChild(ambientAirTempPreview); diff --git a/src/gui/preview/PreviewView.cpp b/src/gui/preview/PreviewView.cpp index cf68aff1b..cc29b428f 100644 --- a/src/gui/preview/PreviewView.cpp +++ b/src/gui/preview/PreviewView.cpp @@ -644,6 +644,7 @@ void PreviewView::NotifyCommentBoxEnabledChanged(PreviewModel * sender) } }); addCommentBox->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; addCommentBox->SetMultiline(true); + addCommentBox->SetLimit(1000); AddComponent(addCommentBox); submitCommentButton = new ui::Button(ui::Point(Size.X-40, Size.Y-19), ui::Point(40, 19), "Submit"); submitCommentButton->SetActionCallback({ [this] { submitComment(); } }); diff --git a/src/gui/profile/ProfileActivity.cpp b/src/gui/profile/ProfileActivity.cpp index 379320bb4..c8545ca1d 100644 --- a/src/gui/profile/ProfileActivity.cpp +++ b/src/gui/profile/ProfileActivity.cpp @@ -108,9 +108,14 @@ void ProfileActivity::setUserInfo(UserInfo newInfo) scrollPanel->AddChild(locationTitle); if (editable) + { location = new ui::Textbox(ui::Point(8+locationTitle->Size.X, currentY), ui::Point(Size.X-locationTitle->Size.X-16, 17), info.location); + ((ui::Textbox*)location)->SetLimit(40); + } else + { location = new ui::Label(ui::Point(4+locationTitle->Size.X, currentY), ui::Point(Size.X-locationTitle->Size.X-14, 17), info.location); + } location->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; scrollPanel->AddChild(location); currentY += 2+location->Size.Y; diff --git a/src/gui/save/ServerSaveActivity.cpp b/src/gui/save/ServerSaveActivity.cpp index a955c14f9..89120a00c 100644 --- a/src/gui/save/ServerSaveActivity.cpp +++ b/src/gui/save/ServerSaveActivity.cpp @@ -79,6 +79,7 @@ ServerSaveActivity::ServerSaveActivity(std::unique_ptr newSave, OnUplo nameField->Appearance.VerticalAlign = ui::Appearance::AlignMiddle; nameField->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; nameField->SetActionCallback({ [this] { CheckName(nameField->GetText()); } }); + nameField->SetLimit(50); AddComponent(nameField); FocusComponent(nameField); diff --git a/src/gui/search/SearchView.cpp b/src/gui/search/SearchView.cpp index c9326d115..63554b3ef 100644 --- a/src/gui/search/SearchView.cpp +++ b/src/gui/search/SearchView.cpp @@ -48,6 +48,7 @@ SearchView::SearchView(): searchField->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; searchField->Appearance.VerticalAlign = ui::Appearance::AlignMiddle; searchField->SetActionCallback({ [this] { doSearch(); } }); + searchField->SetLimit(100); FocusComponent(searchField); sortButton = new ui::Button(ui::Point(WINDOWW-140, 10), ui::Point(61, 17), "Sort"); diff --git a/src/gui/tags/TagsView.cpp b/src/gui/tags/TagsView.cpp index b8ad0eb55..5cd883ace 100644 --- a/src/gui/tags/TagsView.cpp +++ b/src/gui/tags/TagsView.cpp @@ -30,6 +30,7 @@ TagsView::TagsView(): tagInput->Appearance.icon = IconTag; tagInput->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; tagInput->Appearance.VerticalAlign = ui::Appearance::AlignMiddle; + tagInput->SetLimit(16); AddComponent(tagInput); FocusComponent(tagInput);