| // Copyright 2014 PDFium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| |
| #include "xfa/fwl/cfwl_timer.h" |
| |
| #include "xfa/fwl/cfwl_app.h" |
| #include "xfa/fwl/cfwl_timerinfo.h" |
| #include "xfa/fwl/cfwl_widget.h" |
| #include "xfa/fwl/ifwl_adaptertimermgr.h" |
| #include "xfa/fxfa/cxfa_ffapp.h" |
| |
| CFWL_Timer::CFWL_Timer(CFWL_Widget* parent) : m_pWidget(parent) {} |
| |
| CFWL_Timer::~CFWL_Timer() {} |
| |
| CFWL_TimerInfo* CFWL_Timer::StartTimer(uint32_t dwElapse, bool bImmediately) { |
| const CFWL_App* pApp = m_pWidget->GetOwnerApp(); |
| if (!pApp) |
| return nullptr; |
| |
| CXFA_FFApp* pAdapterNative = pApp->GetAdapterNative(); |
| if (!pAdapterNative) |
| return nullptr; |
| |
| if (!m_pAdapterTimerMgr) |
| m_pAdapterTimerMgr = pAdapterNative->NewTimerMgr(); |
| |
| if (!m_pAdapterTimerMgr) |
| return nullptr; |
| |
| CFWL_TimerInfo* pTimerInfo = nullptr; |
| m_pAdapterTimerMgr->Start(this, dwElapse, bImmediately, &pTimerInfo); |
| return pTimerInfo; |
| } |