From 2a23a381205b3455368beff3602ca7819aaf24f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20B=C3=A1lint=20Misius?= Date: Sun, 18 Apr 2021 11:04:38 +0200 Subject: [PATCH] Normalise GetPrefs --- src/PowderToySDL.cpp | 14 +++++++++++--- src/gui/game/GameModel.h | 4 ++++ src/gui/interface/Engine.cpp | 3 +-- src/gui/interface/Engine.h | 12 +++--------- src/gui/interface/ScrollPanel.cpp | 4 ++-- src/gui/options/OptionsModel.cpp | 16 +++++++++------- src/gui/preview/PreviewView.cpp | 3 ++- 7 files changed, 32 insertions(+), 24 deletions(-) diff --git a/src/PowderToySDL.cpp b/src/PowderToySDL.cpp index 1d807e063..412337280 100644 --- a/src/PowderToySDL.cpp +++ b/src/PowderToySDL.cpp @@ -68,6 +68,7 @@ bool altFullscreen = false; bool forceIntegerScaling = true; bool resizable = false; bool momentumScroll = true; +bool showAvatars = true; void StartTextInput() { @@ -202,6 +203,7 @@ void SDLOpen() } if (Client::Ref().GetPrefBool("AutoDrawLimit", false)) { + ui::Engine::Ref().AutoDrawingFrequencyLimit = true; SDL_DisplayMode displayMode; if (!SDL_GetCurrentDisplayMode(displayIndex, &displayMode) && displayMode.refresh_rate >= 60) { @@ -786,6 +788,7 @@ int main(int argc, char * argv[]) altFullscreen = Client::Ref().GetPrefBool("AltFullscreen", false); forceIntegerScaling = Client::Ref().GetPrefBool("ForceIntegerScaling", true); momentumScroll = Client::Ref().GetPrefBool("MomentumScroll", true); + showAvatars = Client::Ref().GetPrefBool("ShowAvatars", true); if(arguments["kiosk"] == "true") @@ -824,9 +827,13 @@ int main(int argc, char * argv[]) Client::Ref().SetPref("Proxy", arguments["proxy"]); } } - else if(Client::Ref().GetPrefString("Proxy", "").length()) + else { - proxyString = (Client::Ref().GetPrefByteString("Proxy", "")); + auto proxyPref = Client::Ref().GetPrefByteString("Proxy", ""); + if (proxyPref.length()) + { + proxyString = proxyPref; + } } bool disableNetwork = false; @@ -870,7 +877,8 @@ int main(int argc, char * argv[]) ui::Engine::Ref().Fullscreen = fullscreen; ui::Engine::Ref().SetAltFullscreen(altFullscreen); ui::Engine::Ref().SetForceIntegerScaling(forceIntegerScaling); - ui::Engine::Ref().SetMomentumScroll(momentumScroll); + ui::Engine::Ref().MomentumScroll = momentumScroll; + ui::Engine::Ref().ShowAvatars = showAvatars; engine = &ui::Engine::Ref(); engine->SetMaxSize(desktopWidth, desktopHeight); diff --git a/src/gui/game/GameModel.h b/src/gui/game/GameModel.h index 5c454a395..42b61039c 100644 --- a/src/gui/game/GameModel.h +++ b/src/gui/game/GameModel.h @@ -216,6 +216,10 @@ public: bool GetIncludePressure(); void SetIncludePressure(bool includePressure); void SetPerfectCircle(bool perfectCircle); + inline bool GetPerfectCircle() const + { + return perfectCircle; + } std::vector GetNotifications(); void AddNotification(Notification * notification); diff --git a/src/gui/interface/Engine.cpp b/src/gui/interface/Engine.cpp index 7c95cf804..11186d1eb 100644 --- a/src/gui/interface/Engine.cpp +++ b/src/gui/interface/Engine.cpp @@ -35,8 +35,7 @@ Engine::Engine(): mousexp_(0), mouseyp_(0), maxWidth(0), - maxHeight(0), - momentumScroll(false) + maxHeight(0) { } diff --git a/src/gui/interface/Engine.h b/src/gui/interface/Engine.h index 2217c6a45..496c77fd3 100644 --- a/src/gui/interface/Engine.h +++ b/src/gui/interface/Engine.h @@ -135,15 +135,9 @@ namespace ui String textEditingBuf; public: - inline void SetMomentumScroll(bool newMomentumScroll) - { - momentumScroll = newMomentumScroll; - } - - inline bool GetMomentumScroll() const - { - return momentumScroll; - } + bool MomentumScroll = true; + bool AutoDrawingFrequencyLimit = false; + bool ShowAvatars = true; }; } diff --git a/src/gui/interface/ScrollPanel.cpp b/src/gui/interface/ScrollPanel.cpp index 3a4f15661..e3011bcca 100644 --- a/src/gui/interface/ScrollPanel.cpp +++ b/src/gui/interface/ScrollPanel.cpp @@ -45,7 +45,7 @@ void ScrollPanel::XOnMouseWheelInside(int localx, int localy, int d) { if (!d) return; - if (ui::Engine::Ref().GetMomentumScroll()) + if (ui::Engine::Ref().MomentumScroll) yScrollVel -= d * 2; else yScrollVel -= d * 20; @@ -143,7 +143,7 @@ void ScrollPanel::XTick(float dt) offsetX += xScrollVel; - if (ui::Engine::Ref().GetMomentumScroll()) + if (ui::Engine::Ref().MomentumScroll) { if (yScrollVel > -0.5f && yScrollVel < 0.5) yScrollVel = 0; diff --git a/src/gui/options/OptionsModel.cpp b/src/gui/options/OptionsModel.cpp index 51ce3b72b..015a0139b 100644 --- a/src/gui/options/OptionsModel.cpp +++ b/src/gui/options/OptionsModel.cpp @@ -181,18 +181,19 @@ void OptionsModel::SetDecoSpace(int decoSpace) bool OptionsModel::GetShowAvatars() { - return Client::Ref().GetPrefBool("ShowAvatars", true); + return ui::Engine::Ref().ShowAvatars; } void OptionsModel::SetShowAvatars(bool state) { + ui::Engine::Ref().ShowAvatars = state; Client::Ref().SetPref("ShowAvatars", state); notifySettingsChanged(); } bool OptionsModel::GetMouseClickRequired() { - return Client::Ref().GetPrefBool("MouseClickRequired", false); + return gModel->GetMouseClickRequired(); } void OptionsModel::SetMouseClickRequired(bool mouseClickRequired) @@ -204,7 +205,7 @@ void OptionsModel::SetMouseClickRequired(bool mouseClickRequired) bool OptionsModel::GetIncludePressure() { - return Client::Ref().GetPrefBool("Simulation.IncludePressure", true); + return gModel->GetIncludePressure(); } void OptionsModel::SetIncludePressure(bool includePressure) @@ -216,7 +217,7 @@ void OptionsModel::SetIncludePressure(bool includePressure) bool OptionsModel::GetPerfectCircle() { - return Client::Ref().GetPrefBool("PerfectCircleBrush", true); + return gModel->GetPerfectCircle(); } void OptionsModel::SetPerfectCircle(bool perfectCircle) @@ -228,23 +229,24 @@ void OptionsModel::SetPerfectCircle(bool perfectCircle) bool OptionsModel::GetMomentumScroll() { - return Client::Ref().GetPrefBool("MomentumScroll", true); + return ui::Engine::Ref().MomentumScroll; } void OptionsModel::SetMomentumScroll(bool state) { Client::Ref().SetPref("MomentumScroll", state); - ui::Engine::Ref().SetMomentumScroll(state); + ui::Engine::Ref().MomentumScroll = state; notifySettingsChanged(); } bool OptionsModel::GetAutoDrawLimit() { - return Client::Ref().GetPrefBool("AutoDrawLimit", false); + return ui::Engine::Ref().AutoDrawingFrequencyLimit; } void OptionsModel::SetAutoDrawLimit(bool state) { + ui::Engine::Ref().AutoDrawingFrequencyLimit = state; Client::Ref().SetPref("AutoDrawLimit", state); notifySettingsChanged(); } diff --git a/src/gui/preview/PreviewView.cpp b/src/gui/preview/PreviewView.cpp index ae28dbf37..195923495 100644 --- a/src/gui/preview/PreviewView.cpp +++ b/src/gui/preview/PreviewView.cpp @@ -16,6 +16,7 @@ #include "gui/interface/CopyTextButton.h" #include "gui/interface/Label.h" #include "gui/interface/Textbox.h" +#include "gui/interface/Engine.h" #include "gui/dialogues/ErrorMessage.h" #include "gui/interface/Point.h" #include "gui/interface/Window.h" @@ -45,7 +46,7 @@ PreviewView::PreviewView(): commentBoxHeight(20), commentHelpText(false) { - showAvatars = Client::Ref().GetPrefBool("ShowAvatars", true); + showAvatars = ui::Engine::Ref().ShowAvatars; favButton = new ui::Button(ui::Point(50, Size.Y-19), ui::Point(51, 19), "Fav"); favButton->Appearance.HorizontalAlign = ui::Appearance::AlignLeft;