From 5599657a76a8240742da8efff07910b4ef5f98ea Mon Sep 17 00:00:00 2001 From: Himanshu Date: Fri, 5 Jul 2013 11:28:47 +0530 Subject: [PATCH] Added IPropagatedListener to the progressing popup Change-Id: Ib13a2066ca56a2e8c4f7a1b3deea591be82cec4f Signed-off-by: Himanshu --- inc/GlProgressBar.h | 3 ++- inc/GlTimerBase.h | 7 +++++++ src/GlProgressBar.cpp | 6 +++++- src/GlTimerBase.cpp | 14 +++++++++++++- 4 files changed, 27 insertions(+), 3 deletions(-) diff --git a/inc/GlProgressBar.h b/inc/GlProgressBar.h index b3bc50d..8d4d2f7 100644 --- a/inc/GlProgressBar.h +++ b/inc/GlProgressBar.h @@ -27,7 +27,7 @@ class GlProgressBar { public: - GlProgressBar(Tizen::Ui::IActionEventListener* listener); + GlProgressBar(Tizen::Ui::IActionEventListener* listener ,Tizen::Ui::IPropagatedKeyEventListener* __pPropagatedListener); virtual ~GlProgressBar(void); void HideFileProgressingPopup(void); @@ -47,6 +47,7 @@ private: Tizen::Ui::Controls::Label* __pFileCounterLabel; Tizen::Ui::Controls::Button* __pFileProgressingCancelButton; Tizen::Ui::IActionEventListener* __pActionListener; + Tizen::Ui::IPropagatedKeyEventListener* __pPropagatedListener; }; #endif /* _GL_PROGRESS_BAR_H_ */ diff --git a/inc/GlTimerBase.h b/inc/GlTimerBase.h index 99911c1..cd5f662 100644 --- a/inc/GlTimerBase.h +++ b/inc/GlTimerBase.h @@ -30,6 +30,7 @@ class GlProgressBar; class GlTimerBase : public Tizen::Ui::IActionEventListener , public Tizen::Base::Runtime::ITimerEventListener + , public Tizen::Ui::IPropagatedKeyEventListener { public: @@ -49,6 +50,12 @@ public: int GetMovedCount() const; + virtual bool OnKeyPressed(Tizen::Ui::Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return false; }; + virtual bool OnKeyReleased(Tizen::Ui::Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo); + virtual bool OnPreviewKeyPressed(Tizen::Ui::Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return false;}; + virtual bool OnPreviewKeyReleased(Tizen::Ui::Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return false;}; + + protected: virtual Tizen::Base::Collection::IList* TimerStart(void) = 0; virtual result TimerExpired(const Tizen::Base::Object*) = 0; diff --git a/src/GlProgressBar.cpp b/src/GlProgressBar.cpp index 1401c79..26b3cc5 100644 --- a/src/GlProgressBar.cpp +++ b/src/GlProgressBar.cpp @@ -33,7 +33,7 @@ using namespace Tizen::Graphics; using namespace Tizen::Ui; using namespace Tizen::Ui::Controls; -GlProgressBar::GlProgressBar(IActionEventListener* listener) +GlProgressBar::GlProgressBar(IActionEventListener* listener, IPropagatedKeyEventListener* propagatedListener) : __totalVal(1) , __curVal(1) , __pFileProgressingPopup(null) @@ -43,6 +43,7 @@ GlProgressBar::GlProgressBar(IActionEventListener* listener) , __pFileCounterLabel(null) , __pFileProgressingCancelButton(null) , __pActionListener(listener) + , __pPropagatedListener(propagatedListener) { AppLogDebug("ENTER"); AppLogDebug("EXIT(%s)", GetErrorMessage(GetLastResult())); @@ -81,6 +82,9 @@ GlProgressBar::CreateFileProgressingPopup(void) if (__pFileProgressingPopup != null && r == E_SUCCESS) { + + __pFileProgressingPopup->SetPropagatedKeyEventListener(__pPropagatedListener); + __pFileProgressingCancelButton = static_cast(__pFileProgressingPopup->GetControl(L"IDC_CANCEL_BUTTON", true)); if (__pFileProgressingCancelButton != null) diff --git a/src/GlTimerBase.cpp b/src/GlTimerBase.cpp index 70d995e..4c26db0 100644 --- a/src/GlTimerBase.cpp +++ b/src/GlTimerBase.cpp @@ -68,7 +68,7 @@ GlTimerBase::StartTimer(void) if (__pContentIdList != null && __pContentIdList->GetCount() > 0) { AppLogDebug("Starting timer"); - __pMoveProBar = new (std::nothrow) GlProgressBar(static_cast(this)); + __pMoveProBar = new (std::nothrow) GlProgressBar(static_cast(this), static_cast(this)); __pMoveProBar->ShowFileProgressingPopup(__pContentIdList->GetCount(), _actionId); __moveToCount = 0; __moveTimer.Construct(*this); @@ -237,3 +237,15 @@ void GlTimerBase::Cancel(void) } } + +bool +GlTimerBase::OnKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo) +{ + AppLogDebug("ENTER"); + + if(keyEventInfo.GetKeyCode() == KEY_BACK) + { + CancelTimer(); + } + return true; +} -- 2.7.4