From 6213a706e4034886f8eee322f12f119134c7fa9b Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Fri, 22 Sep 2023 18:55:46 -0400 Subject: [PATCH] Various widget tweaks --- lib/widget/checkbox.h | 2 +- lib/widget/margin.h | 2 ++ lib/widget/scrollablelist.cpp | 5 +++++ lib/widget/scrollablelist.h | 1 + 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/widget/checkbox.h b/lib/widget/checkbox.h index c5e12d3fdec..27c0321c8b3 100644 --- a/lib/widget/checkbox.h +++ b/lib/widget/checkbox.h @@ -28,7 +28,7 @@ #include "lib/framework/vector.h" #include -struct WzCheckboxButton : public W_BUTTON +class WzCheckboxButton : public W_BUTTON { public: WzCheckboxButton(); diff --git a/lib/widget/margin.h b/lib/widget/margin.h index eb310455a2b..22e093adc8a 100644 --- a/lib/widget/margin.h +++ b/lib/widget/margin.h @@ -54,6 +54,8 @@ class MarginWidget: public WIDGET protected: void geometryChanged() override; + +public: int32_t idealWidth() override; int32_t idealHeight() override; diff --git a/lib/widget/scrollablelist.cpp b/lib/widget/scrollablelist.cpp index f4f6765923a..9e12c6722a0 100644 --- a/lib/widget/scrollablelist.cpp +++ b/lib/widget/scrollablelist.cpp @@ -178,7 +178,12 @@ void ScrollableListWidget::setSnapOffset(bool value) void ScrollableListWidget::setItemSpacing(uint32_t value) { + if (value == itemSpacing) + { + return; + } itemSpacing = value; + layoutDirty = true; } void ScrollableListWidget::display(int xOffset, int yOffset) diff --git a/lib/widget/scrollablelist.h b/lib/widget/scrollablelist.h index 57483fdbbd3..3a0d4640849 100644 --- a/lib/widget/scrollablelist.h +++ b/lib/widget/scrollablelist.h @@ -54,6 +54,7 @@ class ScrollableListWidget : public WIDGET void setSnapOffset(bool value); void setBackgroundColor(PIELIGHT const &color); void setItemSpacing(uint32_t value); + uint32_t getItemSpacing() const { return itemSpacing; } uint32_t calculateListViewHeight() const; uint32_t calculateListViewWidth() const; void display(int xOffset, int yOffset) override;