Merge XFA to PDFium master at 4dc95e7 on 10/28/2014
[pdfium.git] / xfa / src / fwl / src / lightwidget / app.cpp
1 // Copyright 2014 PDFium Authors. All rights reserved.\r
2 // Use of this source code is governed by a BSD-style license that can be\r
3 // found in the LICENSE file.\r
4 \r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
6 \r
7 #include "../../../foxitlib.h"\r
8 CFWL_App::CFWL_App()\r
9     : m_pAppImp(NULL)\r
10     , m_pThemeProvider(NULL)\r
11 {\r
12     m_pAppImp = IFWL_App::Create(NULL);\r
13 }\r
14 CFWL_App::~CFWL_App()\r
15 {\r
16     if (m_pThemeProvider) {\r
17         m_pThemeProvider->Finalize();\r
18         delete m_pThemeProvider;\r
19         m_pThemeProvider = NULL;\r
20     }\r
21     m_pAppImp->Release();\r
22 }\r
23 FWL_ERR CFWL_App::Initialize()\r
24 {\r
25     m_pThemeProvider = FX_NEW CFWL_Theme;\r
26     m_pThemeProvider->Initialize();\r
27     m_pAppImp->SetThemeProvider((IFWL_ThemeProvider*)m_pThemeProvider);\r
28     return m_pAppImp->Initialize();\r
29 }\r
30 CFWL_Theme*     CFWL_App::GetTheme()\r
31 {\r
32     return m_pThemeProvider;\r
33 }\r
34 FWL_ERR CFWL_App::Exit(FX_INT32 iExitCode )\r
35 {\r
36     _FWL_RETURN_VALUE_IF_FAIL(m_pAppImp, FWL_ERR_Indefinite);\r
37     return m_pAppImp->Exit(iExitCode);\r
38 }\r
39 IFWL_App* CFWL_App::GetApp()\r
40 {\r
41     return m_pAppImp;\r
42 }\r