// 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 #include "xfa/fwl/core/fwl_noteimp.h" class CFWL_WidgetMgr; class CXFA_FFApp; class IFWL_App; class IFWL_NoteThread; class IFWL_ThemeProvider; 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; CFWL_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 m_pWidgetMgr; IFWL_ThemeProvider* m_pThemeProvider; std::unique_ptr m_pNoteDriver; IFWL_App* const m_pIface; }; #endif // XFA_FWL_CORE_FWL_APPIMP_H_