1 // Copyright 2014 PDFium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #ifndef _FWL_APP_H 8 #define _FWL_APP_H 9 class IFWL_NoteThread; 10 class IFWL_AdapterNative; 11 class IFWL_Widget; 12 class IFWL_WidgetMgr; 13 class IFWL_ThemeProvider; 14 class IFWL_AdapterWidgetMgr; 15 16 class IFWL_App : public IFWL_NoteThread { 17 public: 18 static IFWL_App* Create(IFWL_AdapterNative* pAdapter); 19 20 FWL_ERR Initialize(); 21 FWL_ERR Finalize(); 22 IFWL_AdapterNative* GetAdapterNative(); 23 IFWL_WidgetMgr* GetWidgetMgr(); 24 IFWL_ThemeProvider* GetThemeProvider(); 25 FWL_ERR SetThemeProvider(IFWL_ThemeProvider* pThemeProvider); 26 FWL_ERR Exit(int32_t iExitCode); 27 28 private: IFWL_App()29 IFWL_App() {} 30 }; 31 IFWL_App* FWL_GetApp(); 32 void FWL_SetApp(IFWL_App* pApp); 33 IFWL_AdapterNative* FWL_GetAdapterNative(); 34 IFWL_AdapterWidgetMgr* FWL_GetAdapterWidgetMgr(); 35 IFWL_ThemeProvider* FWL_GetThemeProvider(); 36 extern FWL_ERR FWL_Execute(const CFX_WideStringC& wsExecutable, 37 const CFX_WideStringC& wsParameters); 38 FWL_ERR FWL_SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen); 39 FX_BOOL FWL_AppIsActived(); 40 #endif 41