Chromium Code Reviews| Index: xfa/src/fwl/src/core/fwl_appimp.cpp |
| diff --git a/xfa/src/fwl/src/core/fwl_appimp.cpp b/xfa/src/fwl/src/core/fwl_appimp.cpp |
| index 5df995c9bbd79900da76f8a2ea23b6438006d30a..983219a683136b94a6d166e4a6060da24dbd7a79 100644 |
| --- a/xfa/src/fwl/src/core/fwl_appimp.cpp |
| +++ b/xfa/src/fwl/src/core/fwl_appimp.cpp |
| @@ -10,11 +10,36 @@ |
| #include "include/fwl_noteimp.h" |
| #include "include/fwl_widgetmgrimp.h" |
| #include "include/fwl_appimp.h" |
| + |
| IFWL_App* IFWL_App::Create(IFWL_AdapterNative* pAdapter) { |
| - return (IFWL_App*)new CFWL_AppImp(pAdapter); |
| + IFWL_App* pApp = new IFWL_App; |
| + pApp->SetImpl(new CFWL_AppImp(pApp, pAdapter)); |
| + return pApp; |
| +} |
| +FWL_ERR IFWL_App::Initialize() { |
| + return static_cast<CFWL_AppImp*>(GetImpl())->Initialize(); |
|
Lei Zhang
2015/12/09 03:22:52
Do you want to implement IFWL_App::GetAppImpl() so
Tom Sepez
2015/12/09 19:56:07
That would require putting a
class CFWL_AppImp
|
| +} |
| +FWL_ERR IFWL_App::Finalize() { |
| + return static_cast<CFWL_AppImp*>(GetImpl())->Finalize(); |
| +} |
| +IFWL_AdapterNative* IFWL_App::GetAdapterNative() { |
| + return static_cast<CFWL_AppImp*>(GetImpl())->GetAdapterNative(); |
| +} |
| +IFWL_WidgetMgr* IFWL_App::GetWidgetMgr() { |
| + return static_cast<CFWL_AppImp*>(GetImpl())->GetWidgetMgr(); |
| } |
| -CFWL_AppImp::CFWL_AppImp(IFWL_AdapterNative* pAdapter) |
| - : m_pWidgetMgr(NULL), m_pThemeProvider(NULL) { |
| +IFWL_ThemeProvider* IFWL_App::GetThemeProvider() { |
| + return static_cast<CFWL_AppImp*>(GetImpl())->GetThemeProvider(); |
| +} |
| +FWL_ERR IFWL_App::SetThemeProvider(IFWL_ThemeProvider* pThemeProvider) { |
| + return static_cast<CFWL_AppImp*>(GetImpl())->SetThemeProvider(pThemeProvider); |
| +} |
| +FWL_ERR IFWL_App::Exit(int32_t iExitCode) { |
| + return static_cast<CFWL_AppImp*>(GetImpl())->Exit(iExitCode); |
| +} |
| + |
| +CFWL_AppImp::CFWL_AppImp(IFWL_App* pIface, IFWL_AdapterNative* pAdapter) |
| + : CFWL_NoteThreadImp(pIface), m_pWidgetMgr(NULL), m_pThemeProvider(NULL) { |
| if (!pAdapter) { |
| pAdapter = FWL_CreateFuelAdapterNative(); |
| m_bFuelAdapter = TRUE; |