| // 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 |
| |
| #ifndef XFA_FWL_CORE_FWL_APPIMP_H_ |
| #define XFA_FWL_CORE_FWL_APPIMP_H_ |
| |
| #include <memory> |
| |
| #include "xfa/fwl/core/fwl_noteimp.h" |
| |
| class CFWL_WidgetMgr; |
| class CXFA_FFApp; |
| class IFWL_App; |
| class IFWL_NoteThread; |
| class IFWL_ThemeProvider; |
| class IFWL_WidgetMgr; |
| |
| class CFWL_AppImp { |
| public: |
| CFWL_AppImp(IFWL_App* pIface, CXFA_FFApp* pAdapter); |
| ~CFWL_AppImp(); |
| |
| IFWL_App* GetInterface() const { return m_pIface; } |
| CFWL_NoteDriver* GetNoteDriver() const { return m_pNoteDriver.get(); } |
| |
| FWL_Error Initialize(); |
| FWL_Error Finalize(); |
| CXFA_FFApp* GetAdapterNative() const; |
| IFWL_WidgetMgr* GetWidgetMgr() const; |
| IFWL_ThemeProvider* GetThemeProvider() const; |
| void SetThemeProvider(IFWL_ThemeProvider* pThemeProvider); |
| void Exit(int32_t iExitCode); |
| |
| private: |
| CXFA_FFApp* const m_pAdapterNative; |
| std::unique_ptr<CFWL_WidgetMgr> m_pWidgetMgr; |
| IFWL_ThemeProvider* m_pThemeProvider; |
| std::unique_ptr<CFWL_NoteDriver> m_pNoteDriver; |
| IFWL_App* const m_pIface; |
| }; |
| |
| #endif // XFA_FWL_CORE_FWL_APPIMP_H_ |