From a4d24a9b5e39d4ed7b3af22075153e5b1cb264be Mon Sep 17 00:00:00 2001 From: kishorekumar Dachinamoorthy Date: Wed, 5 Jun 2013 12:26:44 +0530 Subject: [PATCH] Fixing slider disable issue. Change-Id: Ief31187360bd48c10d13ddd842426d32d97945a2 --- src/ui/controls/FUiCtrl_Slider.cpp | 8 ++++++++ src/ui/controls/FUiCtrl_SliderPresenter.cpp | 19 +++++++++++++++++++ src/ui/inc/FUiCtrl_Slider.h | 1 + src/ui/inc/FUiCtrl_SliderPresenter.h | 1 + 4 files changed, 29 insertions(+) diff --git a/src/ui/controls/FUiCtrl_Slider.cpp b/src/ui/controls/FUiCtrl_Slider.cpp index 6174e24..ce5fdb6 100644 --- a/src/ui/controls/FUiCtrl_Slider.cpp +++ b/src/ui/controls/FUiCtrl_Slider.cpp @@ -835,6 +835,14 @@ _Slider::OnFontInfoRequested(unsigned long& style, float& size) return; } +void +_Slider::OnAncestorEnableStateChanged(const _Control& control) +{ + __pSliderPresenter->OnAncestorEnableStateChanged(control); + + return; +} + bool _Slider::OnAccessibilityValueIncreased(const _AccessibilityContainer& control, const _AccessibilityElement& element) { diff --git a/src/ui/controls/FUiCtrl_SliderPresenter.cpp b/src/ui/controls/FUiCtrl_SliderPresenter.cpp index 0a42589..391ccda 100644 --- a/src/ui/controls/FUiCtrl_SliderPresenter.cpp +++ b/src/ui/controls/FUiCtrl_SliderPresenter.cpp @@ -1707,6 +1707,25 @@ _SliderPresenter::OnFontInfoRequested(unsigned long& style, float& size) } void +_SliderPresenter::OnAncestorEnableStateChanged(const _Control& control) +{ + if (__pSlider->IsEnabled()) + { + return; + } + + if (__pSlideTimer != null) + { + __isTimerRunning = false; + __pSlideTimer->Cancel(); + } + + __pSlider->Invalidate(); + + return; +} + +void _SliderPresenter::SetMinValue(int minValue) { __pSliderModel->SetMinValue(minValue); diff --git a/src/ui/inc/FUiCtrl_Slider.h b/src/ui/inc/FUiCtrl_Slider.h index 8a406c4..9e69819 100644 --- a/src/ui/inc/FUiCtrl_Slider.h +++ b/src/ui/inc/FUiCtrl_Slider.h @@ -135,6 +135,7 @@ public: virtual void OnFontChanged(Tizen::Graphics::Font* pFont); virtual void OnFontInfoRequested(unsigned long& style, float& size); + virtual void OnAncestorEnableStateChanged(const _Control& control); // accessibility listener virtual bool OnAccessibilityFocusMovedNext(const Tizen::Ui::_AccessibilityContainer& control, const Tizen::Ui::_AccessibilityElement& element){return true;} diff --git a/src/ui/inc/FUiCtrl_SliderPresenter.h b/src/ui/inc/FUiCtrl_SliderPresenter.h index 0143d2e..483b363 100644 --- a/src/ui/inc/FUiCtrl_SliderPresenter.h +++ b/src/ui/inc/FUiCtrl_SliderPresenter.h @@ -66,6 +66,7 @@ public: void OnFontChanged(Tizen::Graphics::Font* pFont); void OnFontInfoRequested(unsigned long& style, float& size); + virtual void OnAncestorEnableStateChanged(const _Control& control); static _SliderPresenter* CreateInstanceN(const _Slider& slider); result SetThumbBitmap(SliderThumbStatus status, const Tizen::Graphics::Bitmap& bitmap); -- 2.7.4