From 01bea8630e61bd9a88b5b35ba805203c3ad2c374 Mon Sep 17 00:00:00 2001 From: fallenoak Date: Sun, 30 Nov 2025 11:52:14 -0600 Subject: [PATCH] feat(ui): add CSimpleSlider::OnLayerMouseDown --- src/ui/CSimpleSlider.cpp | 10 ++++++++++ src/ui/CSimpleSlider.hpp | 1 + 2 files changed, 11 insertions(+) diff --git a/src/ui/CSimpleSlider.cpp b/src/ui/CSimpleSlider.cpp index da999a9..67a5802 100644 --- a/src/ui/CSimpleSlider.cpp +++ b/src/ui/CSimpleSlider.cpp @@ -133,6 +133,16 @@ void CSimpleSlider::OnLayerHide() { this->CSimpleFrame::OnLayerHide(); } +int32_t CSimpleSlider::OnLayerMouseDown(const CMouseEvent& evt, const char* btn) { + // TODO something like CSimpleFrame::IsEnabled or CSimpleFrame::GetFrameFlag + if (!(this->m_flags & 0x400)) { + this->m_buttonDown = 1; + this->OnLayerTrackUpdate(evt); + } + + return this->CSimpleFrame::OnLayerMouseDown(evt, btn); +} + int32_t CSimpleSlider::OnLayerTrackUpdate(const CMouseEvent& evt) { if (this->m_buttonDown && this->m_thumbTexture) { auto thumbTexture = this->m_thumbTexture; diff --git a/src/ui/CSimpleSlider.hpp b/src/ui/CSimpleSlider.hpp index ae91efe..01f95f5 100644 --- a/src/ui/CSimpleSlider.hpp +++ b/src/ui/CSimpleSlider.hpp @@ -36,6 +36,7 @@ class CSimpleSlider : public CSimpleFrame { virtual void OnLayerHide(); virtual void OnLayerUpdate(float elapsedSec); virtual int32_t OnLayerTrackUpdate(const CMouseEvent& evt); + virtual int32_t OnLayerMouseDown(const CMouseEvent& evt, const char* btn); // Member functions CSimpleSlider(CSimpleFrame* parent)