From 26b86e625a2c9e0f4e6a01047fef051ffa81e40a Mon Sep 17 00:00:00 2001 From: npm Date: Thu, 4 Aug 2016 17:22:14 -0700 Subject: Move CFX_GEModule into its own file This is the first CL in an attempt to split up the classes in fxge/include/fx_ge.h into their own files. Review-Url: https://codereview.chromium.org/2217663002 --- core/fxge/ge/cfx_gemodule.cpp | 71 +++++++++++++++++++++++++++++++++++++++++++ core/fxge/ge/fx_ge.cpp | 71 ------------------------------------------- core/fxge/ge/fx_ge_font.cpp | 2 +- core/fxge/ge/fx_ge_linux.cpp | 2 +- core/fxge/ge/fx_ge_text.cpp | 1 + 5 files changed, 74 insertions(+), 73 deletions(-) create mode 100644 core/fxge/ge/cfx_gemodule.cpp delete mode 100644 core/fxge/ge/fx_ge.cpp (limited to 'core/fxge/ge') diff --git a/core/fxge/ge/cfx_gemodule.cpp b/core/fxge/ge/cfx_gemodule.cpp new file mode 100644 index 0000000000..98649a1c6e --- /dev/null +++ b/core/fxge/ge/cfx_gemodule.cpp @@ -0,0 +1,71 @@ +// 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 + +#include "core/fxge/include/cfx_gemodule.h" + +#include "core/fxge/ge/cfx_folderfontinfo.h" +#include "core/fxge/ge/fx_text_int.h" +#include "core/fxge/include/cfx_fontmgr.h" + +namespace { + +CFX_GEModule* g_pGEModule = nullptr; + +} // namespace + +CFX_GEModule::CFX_GEModule() + : m_FTLibrary(nullptr), + m_pFontCache(nullptr), + m_pFontMgr(new CFX_FontMgr), + m_pCodecModule(nullptr), + m_pPlatformData(nullptr), + m_pUserFontPaths(nullptr) {} + +CFX_GEModule::~CFX_GEModule() { + delete m_pFontCache; + DestroyPlatform(); +} + +// static +CFX_GEModule* CFX_GEModule::Get() { + if (!g_pGEModule) + g_pGEModule = new CFX_GEModule(); + return g_pGEModule; +} + +// static +void CFX_GEModule::Destroy() { + ASSERT(g_pGEModule); + delete g_pGEModule; + g_pGEModule = nullptr; +} + +void CFX_GEModule::Init(const char** userFontPaths, + CCodec_ModuleMgr* pCodecModule) { + ASSERT(g_pGEModule); + m_pCodecModule = pCodecModule; + m_pUserFontPaths = userFontPaths; + InitPlatform(); + SetTextGamma(2.2f); +} + +CFX_FontCache* CFX_GEModule::GetFontCache() { + if (!m_pFontCache) + m_pFontCache = new CFX_FontCache(); + return m_pFontCache; +} + +void CFX_GEModule::SetTextGamma(FX_FLOAT gammaValue) { + gammaValue /= 2.2f; + for (int i = 0; i < 256; ++i) { + m_GammaValue[i] = static_cast( + FXSYS_pow(static_cast(i) / 255, gammaValue) * 255.0f + 0.5f); + } +} + +const uint8_t* CFX_GEModule::GetTextGammaTable() const { + return m_GammaValue; +} diff --git a/core/fxge/ge/fx_ge.cpp b/core/fxge/ge/fx_ge.cpp deleted file mode 100644 index 0a1b1ab041..0000000000 --- a/core/fxge/ge/fx_ge.cpp +++ /dev/null @@ -1,71 +0,0 @@ -// 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 - -#include "core/fxge/include/fx_ge.h" - -#include "core/fxge/ge/cfx_folderfontinfo.h" -#include "core/fxge/ge/fx_text_int.h" -#include "core/fxge/include/cfx_fontmgr.h" - -namespace { - -CFX_GEModule* g_pGEModule = nullptr; - -} // namespace - -CFX_GEModule::CFX_GEModule() - : m_FTLibrary(nullptr), - m_pFontCache(nullptr), - m_pFontMgr(new CFX_FontMgr), - m_pCodecModule(nullptr), - m_pPlatformData(nullptr), - m_pUserFontPaths(nullptr) {} - -CFX_GEModule::~CFX_GEModule() { - delete m_pFontCache; - DestroyPlatform(); -} - -// static -CFX_GEModule* CFX_GEModule::Get() { - if (!g_pGEModule) - g_pGEModule = new CFX_GEModule(); - return g_pGEModule; -} - -// static -void CFX_GEModule::Destroy() { - ASSERT(g_pGEModule); - delete g_pGEModule; - g_pGEModule = nullptr; -} - -void CFX_GEModule::Init(const char** userFontPaths, - CCodec_ModuleMgr* pCodecModule) { - ASSERT(g_pGEModule); - m_pCodecModule = pCodecModule; - m_pUserFontPaths = userFontPaths; - InitPlatform(); - SetTextGamma(2.2f); -} - -CFX_FontCache* CFX_GEModule::GetFontCache() { - if (!m_pFontCache) - m_pFontCache = new CFX_FontCache(); - return m_pFontCache; -} - -void CFX_GEModule::SetTextGamma(FX_FLOAT gammaValue) { - gammaValue /= 2.2f; - for (int i = 0; i < 256; ++i) { - m_GammaValue[i] = static_cast( - FXSYS_pow(static_cast(i) / 255, gammaValue) * 255.0f + 0.5f); - } -} - -const uint8_t* CFX_GEModule::GetTextGammaTable() const { - return m_GammaValue; -} diff --git a/core/fxge/ge/fx_ge_font.cpp b/core/fxge/ge/fx_ge_font.cpp index bbbe10adb8..4d3328551f 100644 --- a/core/fxge/ge/fx_ge_font.cpp +++ b/core/fxge/ge/fx_ge_font.cpp @@ -9,8 +9,8 @@ #include "core/fpdfapi/fpdf_font/include/cpdf_font.h" #include "core/fxge/include/cfx_fontmgr.h" #include "core/fxge/ge/fx_text_int.h" +#include "core/fxge/include/cfx_gemodule.h" #include "core/fxge/include/fx_freetype.h" -#include "core/fxge/include/fx_ge.h" #define EM_ADJUST(em, a) (em == 0 ? (a) : (a)*1000 / em) diff --git a/core/fxge/ge/fx_ge_linux.cpp b/core/fxge/ge/fx_ge_linux.cpp index d5a1d956cd..642bbc4561 100644 --- a/core/fxge/ge/fx_ge_linux.cpp +++ b/core/fxge/ge/fx_ge_linux.cpp @@ -12,7 +12,7 @@ #include "core/fxge/ge/cfx_folderfontinfo.h" #include "core/fxge/ge/fx_text_int.h" -#include "core/fxge/include/fx_ge.h" +#include "core/fxge/include/cfx_gemodule.h" #include "core/fxge/include/ifx_systemfontinfo.h" #if _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_ diff --git a/core/fxge/ge/fx_ge_text.cpp b/core/fxge/ge/fx_ge_text.cpp index eb6aafd5c6..b3c234f45a 100644 --- a/core/fxge/ge/fx_ge_text.cpp +++ b/core/fxge/ge/fx_ge_text.cpp @@ -10,6 +10,7 @@ #include "core/fxcodec/include/fx_codec.h" #include "core/fxge/ge/fx_text_int.h" #include "core/fxge/include/cfx_fontmgr.h" +#include "core/fxge/include/cfx_gemodule.h" #include "core/fxge/include/fx_freetype.h" #include "core/fxge/include/fx_ge.h" #include "core/fxge/include/ifx_renderdevicedriver.h" -- cgit v1.2.3