summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Sherlock <chris.sherlock79@gmail.com>2021-09-14 00:17:06 +1000
committerMike Kaganski <mike.kaganski@collabora.com>2021-10-08 19:22:59 +0200
commit3f5fb07565d0e08773ddfcda4d5acbb1446aa2f2 (patch)
treec0830ab69aac8f1424e6788448bb68690883ab9e
parent677434a572b8f07a386937b2f7edf2e9b801bbd0 (diff)
vcl: test PhysicalFontCollection and move to vcl::font namespace
- tested PhysicalFontCollection, noted odd behaviour with search names and normalization - moved PhysicalFontCollection.hxx to vcl/inc/font - moved PhysicalFontCollection into vcl::font namespace Note that I needed to regenerate the pch file otherwise errors were generated. Change-Id: Ifa0c7b871c40687bd15002565d2f7a3e408218f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122036 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
-rw-r--r--include/vcl/outdev.hxx4
-rw-r--r--solenv/clang-format/excludelist4
-rw-r--r--vcl/CppunitTest_vcl_font.mk2
-rw-r--r--vcl/headless/svptext.cxx4
-rw-r--r--vcl/inc/font/PhysicalFontCollection.hxx (renamed from vcl/inc/PhysicalFontCollection.hxx)11
-rw-r--r--vcl/inc/font/PhysicalFontFamily.hxx3
-rw-r--r--vcl/inc/headless/svpgdi.hxx4
-rw-r--r--vcl/inc/impfontcache.hxx8
-rw-r--r--vcl/inc/pch/precompiled_vcl.hxx4
-rw-r--r--vcl/inc/qt5/QtGraphics.hxx7
-rw-r--r--vcl/inc/quartz/salgdi.h6
-rw-r--r--vcl/inc/salgdi.hxx6
-rw-r--r--vcl/inc/svdata.hxx9
-rw-r--r--vcl/inc/textrender.hxx4
-rw-r--r--vcl/inc/unx/freetype_glyphcache.hxx2
-rw-r--r--vcl/inc/unx/freetypetextrender.hxx4
-rw-r--r--vcl/inc/unx/geninst.h8
-rw-r--r--vcl/inc/unx/genpspgraphics.h13
-rw-r--r--vcl/inc/unx/glyphcache.hxx5
-rw-r--r--vcl/inc/unx/salgdi.h9
-rw-r--r--vcl/inc/win/salgdi.h6
-rw-r--r--vcl/inc/window.h4
-rw-r--r--vcl/qa/cppunit/physicalfontcollection.cxx118
-rw-r--r--vcl/qt5/QtFontFace.cxx2
-rw-r--r--vcl/qt5/QtGraphics_Text.cxx6
-rw-r--r--vcl/quartz/ctfonts.cxx4
-rw-r--r--vcl/quartz/salgdi.cxx8
-rw-r--r--vcl/source/app/svmain.cxx4
-rw-r--r--vcl/source/font/PhysicalFontCollection.cxx160
-rw-r--r--vcl/source/font/PhysicalFontFamily.cxx4
-rw-r--r--vcl/source/font/fontcache.cxx2
-rw-r--r--vcl/source/gdi/embeddedfontshelper.cxx4
-rw-r--r--vcl/source/gdi/print.cxx4
-rw-r--r--vcl/source/gdi/virdev.cxx2
-rw-r--r--vcl/source/outdev/font.cxx2
-rw-r--r--vcl/unx/generic/fontmanager/fontsubst.cxx4
-rw-r--r--vcl/unx/generic/gdi/font.cxx4
-rw-r--r--vcl/unx/generic/gdi/freetypetextrender.cxx4
-rw-r--r--vcl/unx/generic/glyphs/freetype_glyphcache.cxx6
-rw-r--r--vcl/unx/generic/print/genpspgraphics.cxx10
-rw-r--r--vcl/win/gdi/salfont.cxx12
41 files changed, 318 insertions, 169 deletions
diff --git a/include/vcl/outdev.hxx b/include/vcl/outdev.hxx
index f44a9d5e3b70..50ee0324af3d 100644
--- a/include/vcl/outdev.hxx
+++ b/include/vcl/outdev.hxx
@@ -69,7 +69,6 @@ struct ImplOutDevData;
class LogicalFontInstance;
struct SystemGraphicsData;
class ImplFontCache;
-class PhysicalFontCollection;
class ImplMultiTextLineInfo;
class SalGraphics;
class Gradient;
@@ -105,6 +104,7 @@ namespace vcl
class WindowOutputDevice;
namespace font {
struct Feature;
+ class PhysicalFontCollection;
class PhysicalFontFaceCollection;
}
@@ -256,7 +256,7 @@ private:
mutable bool mbEnableRTL : 1;
protected:
- mutable std::shared_ptr<PhysicalFontCollection> mxFontCollection;
+ mutable std::shared_ptr<vcl::font::PhysicalFontCollection> mxFontCollection;
mutable std::shared_ptr<ImplFontCache> mxFontCache;
/** @name Initialization and accessor functions
diff --git a/solenv/clang-format/excludelist b/solenv/clang-format/excludelist
index 9240bffc7064..92219dba46ae 100644
--- a/solenv/clang-format/excludelist
+++ b/solenv/clang-format/excludelist
@@ -14419,7 +14419,6 @@ vcl/headless/svptext.cxx
vcl/headless/svpvd.cxx
vcl/inc/IconThemeSelector.hxx
vcl/inc/IPrioritable.hxx
-vcl/inc/PhysicalFontCollection.hxx
vcl/inc/PhysicalFontFamily.hxx
vcl/inc/ResampleKernel.hxx
vcl/inc/WidgetThemeLibraryTypes.hxx
@@ -14439,6 +14438,7 @@ vcl/inc/dndlistenercontainer.hxx
vcl/inc/factory.hxx
vcl/inc/fltcall.hxx
vcl/inc/font/FontSelectPattern.hxx
+vcl/inc/font/PhysicalFontCollection.hxx
vcl/inc/font/PhysicalFontFace.hxx
vcl/inc/fontattributes.hxx
vcl/inc/fontinstance.hxx
@@ -14484,7 +14484,6 @@ vcl/inc/osx/salprn.h
vcl/inc/osx/salsys.h
vcl/inc/osx/saltimer.h
vcl/inc/osx/vclnsapp.h
-vcl/inc/outdev.h
vcl/inc/pdf/pdffontcache.hxx
vcl/inc/pdf/pdfwriter_impl.hxx
vcl/inc/ppdparser.hxx
@@ -14940,6 +14939,7 @@ vcl/source/filter/wmf/emfwr.hxx
vcl/source/filter/wmf/wmf.cxx
vcl/source/filter/wmf/wmfwr.cxx
vcl/source/filter/wmf/wmfwr.hxx
+vcl/source/font/DirectFontSubstitution.cxx
vcl/source/font/FontSelectPattern.cxx
vcl/source/font/PhysicalFontCollection.cxx
vcl/source/font/PhysicalFontFace.cxx
diff --git a/vcl/CppunitTest_vcl_font.mk b/vcl/CppunitTest_vcl_font.mk
index 5c9da11d4f19..891352508a1c 100644
--- a/vcl/CppunitTest_vcl_font.mk
+++ b/vcl/CppunitTest_vcl_font.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_CppunitTest_add_exception_objects,vcl_font, \
vcl/qa/cppunit/physicalfontface \
vcl/qa/cppunit/physicalfontfacecollection \
vcl/qa/cppunit/physicalfontfamily \
+ vcl/qa/cppunit/physicalfontcollection \
))
$(eval $(call gb_CppunitTest_use_externals,vcl_font,\
@@ -38,6 +39,7 @@ $(eval $(call gb_CppunitTest_use_libraries,vcl_font, \
tl \
tk \
unotest \
+ utl \
vcl \
))
diff --git a/vcl/headless/svptext.cxx b/vcl/headless/svptext.cxx
index 3822bac4070c..c79dadc9a4fc 100644
--- a/vcl/headless/svptext.cxx
+++ b/vcl/headless/svptext.cxx
@@ -47,7 +47,7 @@ bool SvpSalGraphics::GetFontCapabilities(vcl::FontCapabilities &rFontCapabilitie
return m_aTextRenderImpl.GetFontCapabilities(rFontCapabilities);
}
-void SvpSalGraphics::GetDevFontList( PhysicalFontCollection* pFontCollection )
+void SvpSalGraphics::GetDevFontList( vcl::font::PhysicalFontCollection* pFontCollection )
{
m_aTextRenderImpl.GetDevFontList(pFontCollection);
}
@@ -57,7 +57,7 @@ void SvpSalGraphics::ClearDevFontCache()
m_aTextRenderImpl.ClearDevFontCache();
}
-bool SvpSalGraphics::AddTempDevFont( PhysicalFontCollection* pFontCollection,
+bool SvpSalGraphics::AddTempDevFont( vcl::font::PhysicalFontCollection* pFontCollection,
const OUString& rFileURL, const OUString& rFontName)
{
return m_aTextRenderImpl.AddTempDevFont(pFontCollection, rFileURL, rFontName);
diff --git a/vcl/inc/PhysicalFontCollection.hxx b/vcl/inc/font/PhysicalFontCollection.hxx
index e9907b8f5f6c..5cad84ca15f7 100644
--- a/vcl/inc/PhysicalFontCollection.hxx
+++ b/vcl/inc/font/PhysicalFontCollection.hxx
@@ -23,8 +23,10 @@
#include <vcl/dllapi.h>
-#include "fontinstance.hxx"
-#include "font/PhysicalFontFamily.hxx"
+#include <fontinstance.hxx>
+
+#include "PhysicalFontFamily.hxx"
+
#include <array>
#define MAX_GLYPHFALLBACK 16
@@ -38,6 +40,9 @@ class PreMatchFontSubstitution;
// TODO: merge with ImplFontCache
// TODO: rename to LogicalFontManager
+namespace vcl::font
+{
+
class VCL_PLUGIN_PUBLIC PhysicalFontCollection final
{
public:
@@ -92,4 +97,6 @@ private:
};
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/vcl/inc/font/PhysicalFontFamily.hxx b/vcl/inc/font/PhysicalFontFamily.hxx
index 7bbcf566c395..fa0036b8599a 100644
--- a/vcl/inc/font/PhysicalFontFamily.hxx
+++ b/vcl/inc/font/PhysicalFontFamily.hxx
@@ -28,8 +28,6 @@
#include <unotools/fontcfg.hxx>
-class PhysicalFontCollection;
-
namespace vcl::font
{
// flags for mnTypeFaces member
@@ -57,6 +55,7 @@ struct typed_flags<vcl::font::FontTypeFaces> : is_typed_flags<vcl::font::FontTyp
namespace vcl::font
{
class FontSelectPattern;
+class PhysicalFontCollection;
class PhysicalFontFace;
class PhysicalFontFaceCollection;
diff --git a/vcl/inc/headless/svpgdi.hxx b/vcl/inc/headless/svpgdi.hxx
index 125d00c0d99c..32168d87e727 100644
--- a/vcl/inc/headless/svpgdi.hxx
+++ b/vcl/inc/headless/svpgdi.hxx
@@ -179,9 +179,9 @@ public:
virtual void GetFontMetric( ImplFontMetricDataRef&, int nFallbackLevel ) override;
virtual FontCharMapRef GetFontCharMap() const override;
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const override;
- virtual void GetDevFontList( PhysicalFontCollection* ) override;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) override;
virtual void ClearDevFontCache() override;
- virtual bool AddTempDevFont( PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
+ virtual bool AddTempDevFont( vcl::font::PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
virtual bool CreateFontSubset( const OUString& rToFile,
const vcl::font::PhysicalFontFace*,
const sal_GlyphId* pGlyphIds,
diff --git a/vcl/inc/impfontcache.hxx b/vcl/inc/impfontcache.hxx
index 72e7a44dc9a2..aa5efdbc5441 100644
--- a/vcl/inc/impfontcache.hxx
+++ b/vcl/inc/impfontcache.hxx
@@ -31,7 +31,7 @@
class Size;
namespace vcl { class Font; }
-class PhysicalFontCollection;
+namespace vcl::font { class PhysicalFontCollection; }
// TODO: closely couple with PhysicalFontCollection
@@ -74,15 +74,15 @@ private:
FontInstanceList maFontInstanceList;
GlyphBoundRectCache m_aBoundRectCache;
- rtl::Reference<LogicalFontInstance> GetFontInstance(PhysicalFontCollection const*, vcl::font::FontSelectPattern&);
+ rtl::Reference<LogicalFontInstance> GetFontInstance(vcl::font::PhysicalFontCollection const*, vcl::font::FontSelectPattern&);
public:
ImplFontCache();
~ImplFontCache();
- rtl::Reference<LogicalFontInstance> GetFontInstance(PhysicalFontCollection const *,
+ rtl::Reference<LogicalFontInstance> GetFontInstance(vcl::font::PhysicalFontCollection const *,
const vcl::Font&, const Size& rPixelSize, float fExactHeight, bool bNonAntialias = false);
- rtl::Reference<LogicalFontInstance> GetGlyphFallbackFont( PhysicalFontCollection const *, vcl::font::FontSelectPattern&,
+ rtl::Reference<LogicalFontInstance> GetGlyphFallbackFont( vcl::font::PhysicalFontCollection const *, vcl::font::FontSelectPattern&,
LogicalFontInstance* pLogicalFont,
int nFallbackLevel, OUString& rMissingCodes );
diff --git a/vcl/inc/pch/precompiled_vcl.hxx b/vcl/inc/pch/precompiled_vcl.hxx
index afa6ea5c6562..2a87404a6069 100644
--- a/vcl/inc/pch/precompiled_vcl.hxx
+++ b/vcl/inc/pch/precompiled_vcl.hxx
@@ -13,7 +13,7 @@
manual changes will be rewritten by the next run of update_pch.sh (which presumably
also fixes all possible problems, so it's usually better to use it).
- Generated on 2021-10-06 16:34:16 using:
+ Generated on 2021-10-06 19:41:09 using:
./bin/update_pch vcl vcl --cutoff=6 --exclude:system --include:module --include:local
If after updating build fails, use the following command to locate conflicting headers:
@@ -195,6 +195,7 @@
#include <cppuhelper/weakagg.hxx>
#include <cppuhelper/weakref.hxx>
#include <font/FontSelectPattern.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/PhysicalFontFace.hxx>
#include <font/PhysicalFontFaceCollection.hxx>
#include <i18nlangtag/lang.h>
@@ -265,7 +266,6 @@
#endif // PCH_LEVEL >= 3
#if PCH_LEVEL >= 4
#include <ImplOutDevData.hxx>
-#include <PhysicalFontCollection.hxx>
#include <accel.hxx>
#include <brdwin.hxx>
#include <configsettings.hxx>
diff --git a/vcl/inc/qt5/QtGraphics.hxx b/vcl/inc/qt5/QtGraphics.hxx
index a285f07bb353..fed7c2cb88f0 100644
--- a/vcl/inc/qt5/QtGraphics.hxx
+++ b/vcl/inc/qt5/QtGraphics.hxx
@@ -31,7 +31,10 @@
#include "QtGraphicsBase.hxx"
+namespace vcl::font
+{
class PhysicalFontCollection;
+}
class QImage;
class QPushButton;
class QtFont;
@@ -224,9 +227,9 @@ public:
virtual void GetFontMetric(ImplFontMetricDataRef&, int nFallbackLevel) override;
virtual FontCharMapRef GetFontCharMap() const override;
virtual bool GetFontCapabilities(vcl::FontCapabilities& rFontCapabilities) const override;
- virtual void GetDevFontList(PhysicalFontCollection*) override;
+ virtual void GetDevFontList(vcl::font::PhysicalFontCollection*) override;
virtual void ClearDevFontCache() override;
- virtual bool AddTempDevFont(PhysicalFontCollection*, const OUString& rFileURL,
+ virtual bool AddTempDevFont(vcl::font::PhysicalFontCollection*, const OUString& rFileURL,
const OUString& rFontName) override;
virtual bool CreateFontSubset(const OUString& rToFile, const vcl::font::PhysicalFontFace* pFont,
const sal_GlyphId* pGlyphIds, const sal_uInt8* pEncoding,
diff --git a/vcl/inc/quartz/salgdi.h b/vcl/inc/quartz/salgdi.h
index 4210499c52d9..f0aa925c6083 100644
--- a/vcl/inc/quartz/salgdi.h
+++ b/vcl/inc/quartz/salgdi.h
@@ -122,7 +122,7 @@ public:
bool Init( void );
void AddFont( CoreTextFontFace* );
- void AnnounceFonts( PhysicalFontCollection& ) const;
+ void AnnounceFonts( vcl::font::PhysicalFontCollection& ) const;
CoreTextFontFace* GetFontDataFromId( sal_IntPtr nFontId ) const;
CTFontCollectionRef fontCollection() { return mpCTFontCollection; }
@@ -535,10 +535,10 @@ public:
virtual FontCharMapRef GetFontCharMap() const override;
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const override;
// graphics must fill supplied font list
- virtual void GetDevFontList( PhysicalFontCollection* ) override;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) override;
// graphics must drop any cached font info
virtual void ClearDevFontCache() override;
- virtual bool AddTempDevFont( PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
+ virtual bool AddTempDevFont( vcl::font::PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
// CreateFontSubset: a method to get a subset of glyhps of a font
// inside a new valid font file
// returns TRUE if creation of subset was successful
diff --git a/vcl/inc/salgdi.hxx b/vcl/inc/salgdi.hxx
index 3abfbd726eb4..716c9aa934a6 100644
--- a/vcl/inc/salgdi.hxx
+++ b/vcl/inc/salgdi.hxx
@@ -35,12 +35,12 @@
#include <map>
#include <vector>
-class PhysicalFontCollection;
class SalBitmap;
class FontAttributes;
namespace vcl::font {
class FontSelectPattern;
class PhysicalFontFace;
+ class PhysicalFontCollection;
}
class SalLayout;
namespace tools { class Rectangle; }
@@ -152,13 +152,13 @@ public:
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const = 0;
// graphics must fill supplied font list
- virtual void GetDevFontList( PhysicalFontCollection* ) = 0;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) = 0;
// graphics must drop any cached font info
virtual void ClearDevFontCache() = 0;
virtual bool AddTempDevFont(
- PhysicalFontCollection*,
+ vcl::font::PhysicalFontCollection*,
const OUString& rFileURL,
const OUString& rFontName ) = 0;
diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx
index 1995df30ba95..21d12597d4e2 100644
--- a/vcl/inc/svdata.hxx
+++ b/vcl/inc/svdata.hxx
@@ -52,12 +52,15 @@ struct ImplPostEventData;
struct ImplTimerData;
struct ImplIdleData;
struct ImplConfigData;
-namespace vcl::font { class DirectFontSubstitution; }
+namespace vcl::font
+{
+ class DirectFontSubstitution;
+ class PhysicalFontCollection;
+}
struct ImplHotKey;
struct ImplEventHook;
class Point;
class ImplAccelManager;
-class PhysicalFontCollection;
class ImplFontCache;
class HelpTextWindow;
class ImplTBDragMgr;
@@ -221,7 +224,7 @@ struct ImplSVGDIData
OpenGLContext* mpLastContext = nullptr; // Last OpenGLContext
VclPtr<Printer> mpFirstPrinter; // First Printer
std::unique_ptr<ImplPrnQueueList> mpPrinterQueueList; // List of all printer queue
- std::shared_ptr<PhysicalFontCollection> mxScreenFontList; // Screen-Font-List
+ std::shared_ptr<vcl::font::PhysicalFontCollection> mxScreenFontList; // Screen-Font-List
std::shared_ptr<ImplFontCache> mxScreenFontCache; // Screen-Font-Cache
lru_scale_cache maScaleCache = lru_scale_cache(10); // Cache for scaled images
vcl::font::DirectFontSubstitution* mpDirectFontSubst = nullptr; // Font-Substitutions defined in Tools->Options->Fonts
diff --git a/vcl/inc/textrender.hxx b/vcl/inc/textrender.hxx
index fc7b81d55f27..9e6fcc95cbd2 100644
--- a/vcl/inc/textrender.hxx
+++ b/vcl/inc/textrender.hxx
@@ -39,9 +39,9 @@ public:
virtual void GetFontMetric( ImplFontMetricDataRef&, int nFallbackLevel ) = 0;
virtual FontCharMapRef GetFontCharMap() const = 0;
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const = 0;
- virtual void GetDevFontList( PhysicalFontCollection* ) = 0;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) = 0;
virtual void ClearDevFontCache() = 0;
- virtual bool AddTempDevFont( PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) = 0;
+ virtual bool AddTempDevFont( vcl::font::PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) = 0;
virtual bool CreateFontSubset(
const OUString& rToFile,
const vcl::font::PhysicalFontFace*,
diff --git a/vcl/inc/unx/freetype_glyphcache.hxx b/vcl/inc/unx/freetype_glyphcache.hxx
index d7b71514cd69..64a55dce60c6 100644
--- a/vcl/inc/unx/freetype_glyphcache.hxx
+++ b/vcl/inc/unx/freetype_glyphcache.hxx
@@ -71,7 +71,7 @@ public:
bool IsSymbolFont() const { return maDevFontAttributes.IsSymbolFont(); }
const FontAttributes& GetFontAttributes() const { return maDevFontAttributes; }
- void AnnounceFont( PhysicalFontCollection* );
+ void AnnounceFont( vcl::font::PhysicalFontCollection* );
const FontCharMapRef & GetFontCharMap() const;
bool GetFontCapabilities(vcl::FontCapabilities&) const;
diff --git a/vcl/inc/unx/freetypetextrender.hxx b/vcl/inc/unx/freetypetextrender.hxx
index 6b17a15db06f..994edb5eb3e7 100644
--- a/vcl/inc/unx/freetypetextrender.hxx
+++ b/vcl/inc/unx/freetypetextrender.hxx
@@ -44,9 +44,9 @@ public:
virtual void GetFontMetric( ImplFontMetricDataRef&, int nFallbackLevel ) override;
virtual FontCharMapRef GetFontCharMap() const override;
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const override;
- virtual void GetDevFontList( PhysicalFontCollection* ) override;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) override;
virtual void ClearDevFontCache() override;
- virtual bool AddTempDevFont( PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
+ virtual bool AddTempDevFont( vcl::font::PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
virtual bool CreateFontSubset(
const OUString& rToFile,
const vcl::font::PhysicalFontFace*,
diff --git a/vcl/inc/unx/geninst.h b/vcl/inc/unx/geninst.h
index 5a4f037b548f..984e91a53925 100644
--- a/vcl/inc/unx/geninst.h
+++ b/vcl/inc/unx/geninst.h
@@ -38,7 +38,11 @@ public:
* Abstract generic class to build vclplugin's instance classes from
*/
class GenPspGraphics;
-class PhysicalFontCollection;
+namespace vcl::font
+{
+ class PhysicalFontCollection;
+}
+
class VCL_DLLPUBLIC SalGenericInstance : public SalInstance
{
protected:
@@ -67,7 +71,7 @@ public:
virtual OUString getOSVersion() override;
// prolly belongs somewhere else ... just a font help
- static void RegisterFontSubstitutors( PhysicalFontCollection* pFontCollection );
+ static void RegisterFontSubstitutors( vcl::font::PhysicalFontCollection* pFontCollection );
protected:
static void configurePspInfoPrinter( PspSalInfoPrinter* pInfoPrinter,
diff --git a/vcl/inc/unx/genpspgraphics.h b/vcl/inc/unx/genpspgraphics.h
index 977083b948c2..75c1e4cd0852 100644
--- a/vcl/inc/unx/genpspgraphics.h
+++ b/vcl/inc/unx/genpspgraphics.h
@@ -30,8 +30,11 @@
#include <unx/GenPspGfxBackend.hxx>
-namespace vcl::font { class PhysicalFontFace; }
+namespace vcl::font
+{
+class PhysicalFontFace;
class PhysicalFontCollection;
+}
namespace psp { struct JobData; class PrinterGfx; }
@@ -66,7 +69,7 @@ public:
Ucs2UIntMap& rUnicodeEnc );
static FontAttributes Info2FontAttributes( const psp::FastPrintFontInfo& );
- static void AnnounceFonts( PhysicalFontCollection*,
+ static void AnnounceFonts( vcl::font::PhysicalFontCollection*,
const psp::FastPrintFontInfo& );
// override all pure virtual methods
@@ -82,13 +85,13 @@ public:
virtual void GetFontMetric( ImplFontMetricDataRef&, int nFallbackLevel ) override;
virtual FontCharMapRef GetFontCharMap() const override;
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const override;
- virtual void GetDevFontList( PhysicalFontCollection* ) override;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) override;
// graphics must drop any cached font info
virtual void ClearDevFontCache() override;
- virtual bool AddTempDevFont( PhysicalFontCollection*,
+ virtual bool AddTempDevFont( vcl::font::PhysicalFontCollection*,
const OUString& rFileURL,
const OUString& rFontName ) override;
- static bool AddTempDevFontHelper( PhysicalFontCollection* pFontCollection,
+ static bool AddTempDevFontHelper( vcl::font::PhysicalFontCollection* pFontCollection,
const OUString& rFileURL,
const OUString& rFontName);
diff --git a/vcl/inc/unx/glyphcache.hxx b/vcl/inc/unx/glyphcache.hxx
index 228351fbe046..b6120e2899ee 100644
--- a/vcl/inc/unx/glyphcache.hxx
+++ b/vcl/inc/unx/glyphcache.hxx
@@ -43,7 +43,10 @@ class FreetypeFontFile;
class FreetypeFontInstance;
class FreetypeFontInfo;
class FontConfigFontOptions;
+namespace vcl::font
+{
class PhysicalFontCollection;
+}
class FreetypeFont;
class SvpGcpHelper;
@@ -84,7 +87,7 @@ public:
sal_IntPtr nFontId,
const FontAttributes&);
- void AnnounceFonts( PhysicalFontCollection* ) const;
+ void AnnounceFonts( vcl::font::PhysicalFontCollection* ) const;
void ClearFontCache();
diff --git a/vcl/inc/unx/salgdi.h b/vcl/inc/unx/salgdi.h
index bc5653e05c41..2a1a9945bd17 100644
--- a/vcl/inc/unx/salgdi.h
+++ b/vcl/inc/unx/salgdi.h
@@ -50,8 +50,11 @@ class SalFrame;
class X11SalVirtualDevice;
class X11SalGraphicsImpl;
class X11SkiaSalVirtualDevice;
+namespace vcl::font
+{
class PhysicalFontCollection;
-namespace vcl::font { class PhysicalFontFace; }
+class PhysicalFontFace;
+}
class SalGraphicsImpl;
class TextRenderImpl;
@@ -116,9 +119,9 @@ public:
virtual void GetFontMetric( ImplFontMetricDataRef&, int nFallbackLevel ) override;
virtual FontCharMapRef GetFontCharMap() const override;
virtual bool GetFontCapabilities(vcl::FontCapabilities &rFontCapabilities) const override;
- virtual void GetDevFontList( PhysicalFontCollection* ) override;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) override;
virtual void ClearDevFontCache() override;
- virtual bool AddTempDevFont( PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
+ virtual bool AddTempDevFont( vcl::font::PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
virtual bool CreateFontSubset(
const OUString& rToFile,
diff --git a/vcl/inc/win/salgdi.h b/vcl/inc/win/salgdi.h
index f02eadf60c14..9555cc158b75 100644
--- a/vcl/inc/win/salgdi.h
+++ b/vcl/inc/win/salgdi.h
@@ -45,11 +45,11 @@
namespace vcl::font
{
+class PhysicalFontCollection;
class FontSelectPattern;
}
class WinFontInstance;
class ImplFontAttrCache;
-class PhysicalFontCollection;
class SalGraphicsImpl;
class WinSalGraphicsImplBase;
class ImplFontMetricData;
@@ -347,10 +347,10 @@ public:
// get the layout capabilities of the current font
virtual bool GetFontCapabilities(vcl::FontCapabilities &rGetFontCapabilities) const override;
// graphics must fill supplied font list
- virtual void GetDevFontList( PhysicalFontCollection* ) override;
+ virtual void GetDevFontList( vcl::font::PhysicalFontCollection* ) override;
// graphics must drop any cached font info
virtual void ClearDevFontCache() override;
- virtual bool AddTempDevFont( PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
+ virtual bool AddTempDevFont( vcl::font::PhysicalFontCollection*, const OUString& rFileURL, const OUString& rFontName ) override;
// CreateFontSubset: a method to get a subset of glyhps of a font
// inside a new valid font file
// returns TRUE if creation of subset was successful
diff --git a/vcl/inc/window.h b/vcl/inc/window.h
index 8f61cce11a9d..bc4b1ee1fe49 100644
--- a/vcl/inc/window.h
+++ b/vcl/inc/window.h
@@ -41,7 +41,7 @@
class FixedText;
class VclSizeGroup;
class VirtualDevice;
-class PhysicalFontCollection;
+namespace vcl::font { class PhysicalFontCollection; }
class ImplFontCache;
class VCLXWindow;
class WindowStateData;
@@ -132,7 +132,7 @@ struct ImplFrameData
VclPtr<vcl::Window> mpMouseMoveWin; //< last window, where MouseMove() called
VclPtr<vcl::Window> mpMouseDownWin; //< last window, where MouseButtonDown() called
std::vector<VclPtr<vcl::Window> > maOwnerDrawList; //< List of system windows with owner draw decoration
- std::shared_ptr<PhysicalFontCollection> mxFontCollection; //< Font-List for this frame
+ std::shared_ptr<vcl::font::PhysicalFontCollection> mxFontCollection; //< Font-List for this frame
std::shared_ptr<ImplFontCache> mxFontCache; //< Font-Cache for this frame
sal_Int32 mnDPIX; //< Original Screen Resolution
sal_Int32 mnDPIY; //< Original Screen Resolution
diff --git a/vcl/qa/cppunit/physicalfontcollection.cxx b/vcl/qa/cppunit/physicalfontcollection.cxx
new file mode 100644
index 000000000000..ea76fde542e8
--- /dev/null
+++ b/vcl/qa/cppunit/physicalfontcollection.cxx
@@ -0,0 +1,118 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <sal/config.h>
+
+#include <test/bootstrapfixture.hxx>
+#include <cppunit/TestAssert.h>
+
+#include <font/PhysicalFontCollection.hxx>
+#include <font/PhysicalFontFamily.hxx>
+
+#include "fontmocks.hxx"
+
+#include <memory>
+
+class VclPhysicalFontCollectionTest : public test::BootstrapFixture
+{
+public:
+ VclPhysicalFontCollectionTest()
+ : BootstrapFixture(true, false)
+ {
+ }
+
+ void testShouldCreateAndAddFontFamilyToCollection();
+ void testShouldFindFontFamily();
+ void testShouldNotFindFontFamily();
+ void testShouldFindFontFamilyByTokenNames();
+ void testShouldFindNoFamilyWithWorthlessAttributes();
+
+ CPPUNIT_TEST_SUITE(VclPhysicalFontCollectionTest);
+ CPPUNIT_TEST(testShouldCreateAndAddFontFamilyToCollection);
+ CPPUNIT_TEST(testShouldFindFontFamily);
+ CPPUNIT_TEST(testShouldNotFindFontFamily);
+ CPPUNIT_TEST(testShouldFindFontFamilyByTokenNames);
+ CPPUNIT_TEST(testShouldFindNoFamilyWithWorthlessAttributes);
+ CPPUNIT_TEST_SUITE_END();
+};
+
+void VclPhysicalFontCollectionTest::testShouldCreateAndAddFontFamilyToCollection()
+{
+ vcl::font::PhysicalFontCollection aFontCollection;
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("Empty font collection", static_cast<int>(0),
+ aFontCollection.Count());
+
+ // please note that fonts created this way are NOT normalized and will not be found if you search for them in the collection
+ vcl::font::PhysicalFontFamily* pFontFamily
+ = aFontCollection.FindOrCreateFontFamily("Test Font Family Name");
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("One font family in collection", static_cast<int>(1),
+ aFontCollection.Count());
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("Font family name correct", OUString("Test Font Family Name"),
+ pFontFamily->GetSearchName());
+
+ vcl::font::PhysicalFontFamily* pFontFamily2
+ = aFontCollection.FindOrCreateFontFamily("Test Font Family Name");
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("Still only one font family in collection", static_cast<int>(1),
+ aFontCollection.Count());
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("Font family name correct", OUString("Test Font Family Name"),
+ pFontFamily2->GetSearchName());
+}
+
+void VclPhysicalFontCollectionTest::testShouldFindFontFamily()
+{
+ // note: you must normalize the search family name (first parameter of PhysicalFontFamily constructor)
+ vcl::font::PhysicalFontCollection aFontCollection;
+ aFontCollection.FindOrCreateFontFamily(GetEnglishSearchFontName("Test Font Family Name"));
+
+ vcl::font::PhysicalFontFamily* pFontFamily
+ = aFontCollection.FindFontFamily("Test Font Family Name");
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("Font family name correct",
+ GetEnglishSearchFontName("Test Font Family Name"),
+ pFontFamily->GetSearchName());
+}
+
+void VclPhysicalFontCollectionTest::testShouldNotFindFontFamily()
+{
+ // note: you must normalize the search family name (first parameter of PhysicalFontFamily constructor)
+ vcl::font::PhysicalFontCollection aFontCollection;
+ aFontCollection.FindOrCreateFontFamily(GetEnglishSearchFontName("Test Font Family Name"));
+
+ CPPUNIT_ASSERT(!aFontCollection.FindFontFamily("blah"));
+}
+
+void VclPhysicalFontCollectionTest::testShouldFindFontFamilyByTokenNames()
+{
+ // note: you must normalize the search family name (first parameter of PhysicalFontFamily constructor)
+ vcl::font::PhysicalFontCollection aFontCollection;
+ aFontCollection.FindOrCreateFontFamily(GetEnglishSearchFontName("Test Font Family Name"));
+
+ OUString sTokenNames(GetEnglishSearchFontName("Test Font Family Name;"));
+ sTokenNames += GetEnglishSearchFontName("Test 2");
+
+ vcl::font::PhysicalFontFamily* pFontFamily
+ = aFontCollection.FindFontFamilyByTokenNames("Test Font Family Name");
+ CPPUNIT_ASSERT_MESSAGE("Found the font family", pFontFamily);
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("Font family name correct",
+ GetEnglishSearchFontName("Test Font Family Name"),
+ pFontFamily->GetSearchName());
+}
+
+void VclPhysicalFontCollectionTest::testShouldFindNoFamilyWithWorthlessAttributes()
+{
+ // note: you must normalize the search family name (first parameter of PhysicalFontFamily constructor)
+ vcl::font::PhysicalFontCollection aFontCollection;
+ aFontCollection.FindOrCreateFontFamily(GetEnglishSearchFontName("Test Font Family Name"));
+
+ CPPUNIT_ASSERT(!aFontCollection.FindFontFamilyByAttributes(ImplFontAttrs::None, WEIGHT_NORMAL,
+ WIDTH_NORMAL, ITALIC_NONE, ""));
+}
+
+CPPUNIT_TEST_SUITE_REGISTRATION(VclPhysicalFontCollectionTest);
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/qt5/QtFontFace.cxx b/vcl/qt5/QtFontFace.cxx
index ffe88f242835..e69bfa717e45 100644
--- a/vcl/qt5/QtFontFace.cxx
+++ b/vcl/qt5/QtFontFace.cxx
@@ -29,7 +29,7 @@
#include <impfontcharmap.hxx>
#include <fontinstance.hxx>
#include <font/FontSelectPattern.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <QtGui/QFont>
#include <QtGui/QFontDatabase>
diff --git a/vcl/qt5/QtGraphics_Text.cxx b/vcl/qt5/QtGraphics_Text.cxx
index 457338888323..b509c2a946bd 100644
--- a/vcl/qt5/QtGraphics_Text.cxx
+++ b/vcl/qt5/QtGraphics_Text.cxx
@@ -32,7 +32,7 @@
#include <unx/genpspgraphics.h>
#include <sallayout.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <QtGui/QGlyphRun>
#include <QtGui/QFontDatabase>
@@ -84,7 +84,7 @@ bool QtGraphics::GetFontCapabilities(vcl::FontCapabilities& rFontCapabilities) c
return m_pTextStyle[0]->GetFontFace()->GetFontCapabilities(rFontCapabilities);
}
-void QtGraphics::GetDevFontList(PhysicalFontCollection* pPFC)
+void QtGraphics::GetDevFontList(vcl::font::PhysicalFontCollection* pPFC)
{
static const bool bUseFontconfig = (nullptr == getenv("SAL_VCL_QT5_NO_FONTCONFIG"));
@@ -124,7 +124,7 @@ void QtGraphics::GetDevFontList(PhysicalFontCollection* pPFC)
void QtGraphics::ClearDevFontCache() {}
-bool QtGraphics::AddTempDevFont(PhysicalFontCollection*, const OUString& /*rFileURL*/,
+bool QtGraphics::AddTempDevFont(vcl::font::PhysicalFontCollection*, const OUString& /*rFileURL*/,
const OUString& /*rFontName*/)
{
return false;
diff --git a/vcl/quartz/ctfonts.cxx b/vcl/quartz/ctfonts.cxx
index 5e958f73c35a..7de60b88f24d 100644
--- a/vcl/quartz/ctfonts.cxx
+++ b/vcl/quartz/ctfonts.cxx
@@ -35,7 +35,7 @@
#include <fontinstance.hxx>
#include <fontattributes.hxx>
#include <impglyphitem.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <quartz/salgdi.h>
#include <quartz/utils.h>
#include <sallayout.hxx>
@@ -506,7 +506,7 @@ void SystemFontList::AddFont( CoreTextFontFace* pFontData )
maFontContainer[ nFontId ] = pFontData;
}
-void SystemFontList::AnnounceFonts( PhysicalFontCollection& rFontCollection ) const
+void SystemFontList::AnnounceFonts( vcl::font::PhysicalFontCollection& rFontCollection ) const
{
for(const auto& rEntry : maFontContainer )
{
diff --git a/vcl/quartz/salgdi.cxx b/vcl/quartz/salgdi.cxx
index 9fed99165cf9..9928cc4df3a2 100644
--- a/vcl/quartz/salgdi.cxx
+++ b/vcl/quartz/salgdi.cxx
@@ -44,7 +44,7 @@
#include <impfontcharmap.hxx>
#include <impfontmetricdata.hxx>
#include <font/fontsubstitution.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#ifdef MACOSX
#include <osx/salframe.h>
@@ -323,7 +323,7 @@ static void AddLocalTempFontDirs()
AddTempFontDir( aBrandStr + "/" LIBO_SHARE_FOLDER "/fonts/truetype/" );
}
-void AquaSalGraphics::GetDevFontList( PhysicalFontCollection* pFontCollection )
+void AquaSalGraphics::GetDevFontList(vcl::font::PhysicalFontCollection* pFontCollection)
{
SAL_WARN_IF( !pFontCollection, "vcl", "AquaSalGraphics::GetDevFontList(NULL) !");
@@ -355,8 +355,8 @@ void AquaSalGraphics::ClearDevFontCache()
pSalData->mpFontList = nullptr;
}
-bool AquaSalGraphics::AddTempDevFont( PhysicalFontCollection*,
- const OUString& rFontFileURL, const OUString& /*rFontName*/ )
+bool AquaSalGraphics::AddTempDevFont(vcl::font::PhysicalFontCollection*,
+ const OUString& rFontFileURL, const OUString& /*rFontName*/)
{
return ::AddTempDevFont(rFontFileURL);
}
diff --git a/vcl/source/app/svmain.cxx b/vcl/source/app/svmain.cxx
index d3559ed029bd..30169e7428c1 100644
--- a/vcl/source/app/svmain.cxx
+++ b/vcl/source/app/svmain.cxx
@@ -73,7 +73,7 @@
#include <vcl/svmain.hxx>
#include <dbggui.hxx>
#include <accmgr.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <print.h>
#include <salsys.hxx>
#include <saltimer.hxx>
@@ -361,7 +361,7 @@ bool InitVCL()
pSVData->maAppData.mxAppFileName = aNativeFileName;
// Initialize global data
- pSVData->maGDIData.mxScreenFontList = std::make_shared<PhysicalFontCollection>();
+ pSVData->maGDIData.mxScreenFontList = std::make_shared<vcl::font::PhysicalFontCollection>();
pSVData->maGDIData.mxScreenFontCache = std::make_shared<ImplFontCache>();
pSVData->maGDIData.mxGrfConverter.reset(new GraphicConverter);
diff --git a/vcl/source/font/PhysicalFontCollection.cxx b/vcl/source/font/PhysicalFontCollection.cxx
index c78055075206..bbccffc0b23c 100644
--- a/vcl/source/font/PhysicalFontCollection.cxx
+++ b/vcl/source/font/PhysicalFontCollection.cxx
@@ -28,7 +28,7 @@
#include <o3tl/sorted_vector.hxx>
#include <font/PhysicalFontFaceCollection.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/fontsubstitution.hxx>
static ImplFontAttrs lcl_IsCJKFont( const OUString& rFontName )
@@ -65,6 +65,9 @@ static ImplFontAttrs lcl_IsCJKFont( const OUString& rFontName )
return ImplFontAttrs::None;
}
+namespace vcl::font
+{
+
PhysicalFontCollection::PhysicalFontCollection()
: mbMatchData( false )
, mpPreMatchHook( nullptr )
@@ -77,12 +80,12 @@ PhysicalFontCollection::~PhysicalFontCollection()
Clear();
}
-void PhysicalFontCollection::SetPreMatchHook( vcl::font::PreMatchFontSubstitution* pHook )
+void PhysicalFontCollection::SetPreMatchHook(PreMatchFontSubstitution* pHook)
{
mpPreMatchHook = pHook;
}
-void PhysicalFontCollection::SetFallbackHook( vcl::font::GlyphFallbackFontSubstitution* pHook )
+void PhysicalFontCollection::SetFallbackHook(GlyphFallbackFontSubstitution* pHook)
{
mpFallbackHook = pHook;
}
@@ -132,7 +135,7 @@ void PhysicalFontCollection::ImplInitGenericGlyphFallback() const
bool bHasEudc = false;
int nMaxLevel = 0;
int nBestQuality = 0;
- std::unique_ptr<std::array<vcl::font::PhysicalFontFamily*,MAX_GLYPHFALLBACK>> pFallbackList;
+ std::unique_ptr<std::array<PhysicalFontFamily*,MAX_GLYPHFALLBACK>> pFallbackList;
for( const char** ppNames = &aGlyphFallbackList[0];; ++ppNames )
{
@@ -152,7 +155,7 @@ void PhysicalFontCollection::ImplInitGenericGlyphFallback() const
// test if the glyph fallback candidate font is available and scalable
OUString aTokenName( *ppNames, strlen(*ppNames), RTL_TEXTENCODING_UTF8 );
- vcl::font::PhysicalFontFamily* pFallbackFont = FindFontFamily( aTokenName );
+ PhysicalFontFamily* pFallbackFont = FindFontFamily( aTokenName );
if( !pFallbackFont )
continue;
@@ -163,7 +166,7 @@ void PhysicalFontCollection::ImplInitGenericGlyphFallback() const
nBestQuality = pFallbackFont->GetMinQuality();
// store available glyph fallback fonts
if( !pFallbackList )
- pFallbackList.reset(new std::array<vcl::font::PhysicalFontFamily*,MAX_GLYPHFALLBACK>);
+ pFallbackList.reset(new std::array<PhysicalFontFamily*,MAX_GLYPHFALLBACK>);
(*pFallbackList)[ nMaxLevel ] = pFallbackFont;
if( !bHasEudc && !nMaxLevel )
@@ -175,12 +178,12 @@ void PhysicalFontCollection::ImplInitGenericGlyphFallback() const
mpFallbackList = std::move(pFallbackList);
}
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::GetGlyphFallbackFont( vcl::font::FontSelectPattern& rFontSelData,
- LogicalFontInstance* pFontInstance,
- OUString& rMissingCodes,
- int nFallbackLevel ) const
+PhysicalFontFamily* PhysicalFontCollection::GetGlyphFallbackFont(FontSelectPattern& rFontSelData,
+ LogicalFontInstance* pFontInstance,
+ OUString& rMissingCodes,
+ int nFallbackLevel) const
{
- vcl::font::PhysicalFontFamily* pFallbackData = nullptr;
+ PhysicalFontFamily* pFallbackData = nullptr;
// find a matching font candidate for platform specific glyph fallback
if( mpFallbackHook )
@@ -277,17 +280,17 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::GetGlyphFallbackFont( vcl
return pFallbackData;
}
-void PhysicalFontCollection::Add( vcl::font::PhysicalFontFace* pNewData )
+void PhysicalFontCollection::Add(PhysicalFontFace* pNewData)
{
OUString aSearchName = GetEnglishSearchFontName( pNewData->GetFamilyName() );
- vcl::font::PhysicalFontFamily* pFoundData = FindOrCreateFontFamily( aSearchName );
+ PhysicalFontFamily* pFoundData = FindOrCreateFontFamily(aSearchName);
pFoundData->AddFontFace( pNewData );
}
// find the font from the normalized font family name
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyBySearchName( const OUString& rSearchName ) const
+PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyBySearchName(const OUString& rSearchName) const
{
// must be called with a normalized name.
assert( GetEnglishSearchFontName( rSearchName ) == rSearchName );
@@ -296,35 +299,35 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyBySearc
if( it == maPhysicalFontFamilies.end() )
return nullptr;
- vcl::font::PhysicalFontFamily* pFoundData = (*it).second.get();
+ PhysicalFontFamily* pFoundData = (*it).second.get();
return pFoundData;
}
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( const OUString& rFontName ) const
+PhysicalFontFamily* PhysicalFontCollection::FindFontFamily(OUString const& rFontName) const
{
return ImplFindFontFamilyBySearchName( GetEnglishSearchFontName( rFontName ) );
}
-vcl::font::PhysicalFontFamily *PhysicalFontCollection::FindOrCreateFontFamily( const OUString &rFamilyName )
+PhysicalFontFamily *PhysicalFontCollection::FindOrCreateFontFamily(OUString const& rFamilyName)
{
PhysicalFontFamilies::const_iterator it = maPhysicalFontFamilies.find( rFamilyName );
- vcl::font::PhysicalFontFamily* pFoundData = nullptr;
+ PhysicalFontFamily* pFoundData = nullptr;
if( it != maPhysicalFontFamilies.end() )
pFoundData = (*it).second.get();
if( !pFoundData )
{
- pFoundData = new vcl::font::PhysicalFontFamily( rFamilyName );
+ pFoundData = new PhysicalFontFamily(rFamilyName);
maPhysicalFontFamilies[ rFamilyName ].reset(pFoundData);
}
return pFoundData;
}
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByTokenNames(const OUString& rTokenStr) const
+PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByTokenNames(OUString const& rTokenStr) const
{
- vcl::font::PhysicalFontFamily* pFoundData = nullptr;
+ PhysicalFontFamily* pFoundData = nullptr;
// use normalized font name tokens to find the font
for( sal_Int32 nTokenPos = 0; nTokenPos != -1; )
@@ -342,9 +345,9 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByTokenName
return pFoundData;
}
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyBySubstFontAttr( const utl::FontNameAttr& rFontAttr ) const
+PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyBySubstFontAttr(utl::FontNameAttr const& rFontAttr) const
{
- vcl::font::PhysicalFontFamily* pFoundData = nullptr;
+ PhysicalFontFamily* pFoundData = nullptr;
// use the font substitutions suggested by the FontNameAttr to find the font
for (auto const& substitution : rFontAttr.Substitutions)
@@ -388,17 +391,17 @@ void PhysicalFontCollection::ImplInitMatchData() const
for (auto const& family : maPhysicalFontFamilies)
{
const OUString& rSearchName = family.first;
- vcl::font::PhysicalFontFamily* pEntry = family.second.get();
+ PhysicalFontFamily* pEntry = family.second.get();
pEntry->InitMatchData( rFontSubst, rSearchName );
}
}
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttributes( ImplFontAttrs nSearchType,
- FontWeight eSearchWeight,
- FontWidth eSearchWidth,
- FontItalic eSearchItalic,
- const OUString& rSearchFamilyName ) const
+PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttributes(ImplFontAttrs nSearchType,
+ FontWeight eSearchWeight,
+ FontWidth eSearchWidth,
+ FontItalic eSearchItalic,
+ OUString const& rSearchFamilyName ) const
{
if( (eSearchItalic != ITALIC_NONE) && (eSearchItalic != ITALIC_DONTKNOW) )
nSearchType |= ImplFontAttrs::Italic;
@@ -410,14 +413,14 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttribute
return nullptr;
ImplInitMatchData();
- vcl::font::PhysicalFontFamily* pFoundData = nullptr;
+ PhysicalFontFamily* pFoundData = nullptr;
tools::Long nBestMatch = 40000;
ImplFontAttrs nBestType = ImplFontAttrs::None;
for (auto const& family : maPhysicalFontFamilies)
{
- vcl::font::PhysicalFontFamily* pData = family.second.get();
+ PhysicalFontFamily* pData = family.second.get();
// Get all information about the matching font
ImplFontAttrs nMatchType = pData->GetMatchType();
@@ -498,7 +501,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttribute
{
nTestMatch += 10000000*5;
}
- else if ( pData->GetTypeFaces() & vcl::font::FontTypeFaces::Symbol )
+ else if (pData->GetTypeFaces() & FontTypeFaces::Symbol)
{
nTestMatch += 10000000*4;
}
@@ -510,7 +513,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttribute
nTestMatch += 10000000;
}
}
- else if ( (pData->GetTypeFaces() & (vcl::font::FontTypeFaces::Symbol | vcl::font::FontTypeFaces::NoneSymbol)) == vcl::font::FontTypeFaces::Symbol )
+ else if ((pData->GetTypeFaces() & (FontTypeFaces::Symbol | FontTypeFaces::NoneSymbol)) == FontTypeFaces::Symbol)
{
nTestMatch -= 10000000;
}
@@ -677,14 +680,14 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttribute
// test ITALIC attribute
if( nSearchType & ImplFontAttrs::Italic )
{
- if( pData->GetTypeFaces() & vcl::font::FontTypeFaces::Italic )
+ if (pData->GetTypeFaces() & FontTypeFaces::Italic)
nTestMatch += 1000000*3;
if( nMatchType & ImplFontAttrs::Italic )
nTestMatch += 1000000;
}
- else if( !(nSearchType & ImplFontAttrs::AllScript) &&
- ((nMatchType & ImplFontAttrs::Italic) ||
- !(pData->GetTypeFaces() & vcl::font::FontTypeFaces::NoneItalic)) )
+ else if (!(nSearchType & ImplFontAttrs::AllScript)
+ && ((nMatchType & ImplFontAttrs::Italic)
+ || !(pData->GetTypeFaces() & FontTypeFaces::NoneItalic)))
{
nTestMatch -= 1000000*2;
}
@@ -719,29 +722,29 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttribute
{
if( eSearchWeight < WEIGHT_NORMAL )
{
- if( pData->GetTypeFaces() & vcl::font::FontTypeFaces::Light )
+ if (pData->GetTypeFaces() & FontTypeFaces::Light)
nTestMatch += 1000000;
if( (eMatchWeight < WEIGHT_NORMAL) && (eMatchWeight != WEIGHT_DONTKNOW) )
nTestMatch += 1000000;
}
else
{
- if( pData->GetTypeFaces() & vcl::font::FontTypeFaces::Bold )
+ if (pData->GetTypeFaces() & FontTypeFaces::Bold)
nTestMatch += 1000000;
if( eMatchWeight > WEIGHT_BOLD )
nTestMatch += 1000000;
}
}
- else if( ((eMatchWeight != WEIGHT_DONTKNOW) &&
- (eMatchWeight != WEIGHT_NORMAL) &&
- (eMatchWeight != WEIGHT_MEDIUM)) ||
- !(pData->GetTypeFaces() & vcl::font::FontTypeFaces::Normal) )
+ else if (((eMatchWeight != WEIGHT_DONTKNOW)
+ && (eMatchWeight != WEIGHT_NORMAL)
+ && (eMatchWeight != WEIGHT_MEDIUM))
+ || !(pData->GetTypeFaces() & FontTypeFaces::Normal))
{
nTestMatch -= 1000000;
}
// prefer scalable fonts
- if( pData->GetTypeFaces() & vcl::font::FontTypeFaces::Scalable )
+ if (pData->GetTypeFaces() & FontTypeFaces::Scalable)
nTestMatch += 10000*4;
else
nTestMatch -= 10000*4;
@@ -815,11 +818,11 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamilyByAttribute
return pFoundData;
}
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyOfDefaultFont() const
+PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyOfDefaultFont() const
{
// try to find one of the default fonts of the
// UNICODE, SANSSERIF, SERIF or FIXED default font lists
- vcl::font::PhysicalFontFamily* pFoundData = nullptr;
+ PhysicalFontFamily* pFoundData = nullptr;
if (!utl::ConfigManager::IsFuzzing())
{
const utl::DefaultFontConfiguration& rDefaults = utl::DefaultFontConfiguration::get();
@@ -852,7 +855,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::ImplFindFontFamilyOfDefau
for (auto const& family : maPhysicalFontFamilies)
{
- vcl::font::PhysicalFontFamily* pData = family.second.get();
+ PhysicalFontFamily* pData = family.second.get();
if( pData->GetMatchType() & ImplFontAttrs::Symbol )
continue;
@@ -882,20 +885,20 @@ std::shared_ptr<PhysicalFontCollection> PhysicalFontCollection::Clone() const
for (auto const& family : maPhysicalFontFamilies)
{
- const vcl::font::PhysicalFontFamily* pFontFace = family.second.get();
+ const PhysicalFontFamily* pFontFace = family.second.get();
pFontFace->UpdateCloneFontList(*xClonedCollection);
}
return xClonedCollection;
}
-std::unique_ptr<vcl::font::PhysicalFontFaceCollection> PhysicalFontCollection::GetFontFaceCollection() const
+std::unique_ptr<PhysicalFontFaceCollection> PhysicalFontCollection::GetFontFaceCollection() const
{
- std::unique_ptr<vcl::font::PhysicalFontFaceCollection> pDeviceFontList(new vcl::font::PhysicalFontFaceCollection);
+ std::unique_ptr<PhysicalFontFaceCollection> pDeviceFontList(new PhysicalFontFaceCollection);
for (auto const& family : maPhysicalFontFamilies)
{
- const vcl::font::PhysicalFontFamily* pFontFamily = family.second.get();
+ const PhysicalFontFamily* pFontFamily = family.second.get();
pFontFamily->UpdateDevFontList( *pDeviceFontList );
}
@@ -915,7 +918,7 @@ const std::vector<std::pair<OUString, OUString>> aMetricCompatibleMap =
{ "Calibri", "Carlito" },
};
-static bool FindMetricCompatibleFont(vcl::font::FontSelectPattern& rFontSelData)
+static bool FindMetricCompatibleFont(FontSelectPattern& rFontSelData)
{
for (const auto& aSub : aMetricCompatibleMap)
{
@@ -929,7 +932,7 @@ static bool FindMetricCompatibleFont(vcl::font::FontSelectPattern& rFontSelData)
return false;
}
-vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font::FontSelectPattern& rFSD ) const
+PhysicalFontFamily* PhysicalFontCollection::FindFontFamily(FontSelectPattern& rFSD) const
{
// give up if no fonts are available
if( !Count() )
@@ -942,7 +945,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
sal_Int32 nIndex = 0;
rFSD.maTargetName = GetNextFontToken(rFSD.GetFamilyName(), nIndex);
rFSD.maSearchName = "liberationsans";
- vcl::font::PhysicalFontFamily* pFont = ImplFindFontFamilyBySearchName(rFSD.maSearchName);
+ PhysicalFontFamily* pFont = ImplFindFontFamilyBySearchName(rFSD.maSearchName);
assert(pFont);
return pFont;
}
@@ -957,7 +960,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
// Until features are properly supported, they are appended to the
// font name, so we need to strip them off so the font is found.
- sal_Int32 nFeat = aSearchName.indexOf(vcl::font::FontSelectPattern::FEAT_PREFIX);
+ sal_Int32 nFeat = aSearchName.indexOf(FontSelectPattern::FEAT_PREFIX);
OUString aOrigName = rFSD.maTargetName;
OUString aBaseFontName = aSearchName.copy( 0, (nFeat != -1) ? nFeat : aSearchName.getLength() );
@@ -968,7 +971,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
}
aSearchName = GetEnglishSearchFontName( aSearchName );
- vcl::font::ImplFontSubstitute(aSearchName);
+ ImplFontSubstitute(aSearchName);
// #114999# special emboldening for Ricoh fonts
// TODO: smarter check for special cases by using PreMatch infrastructure?
if( (rFSD.GetWeight() > WEIGHT_MEDIUM) &&
@@ -1001,7 +1004,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
rFSD.maTargetName = aOrigName;
// check if the current font name token or its substitute is valid
- vcl::font::PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName( aSearchName );
+ PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName(aSearchName);
if( pFoundData )
return pFoundData;
@@ -1065,8 +1068,8 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
{
aSearchName = GetEnglishSearchFontName( aSearchName );
}
- vcl::font::ImplFontSubstitute( aSearchName );
- vcl::font::PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName( aSearchName );
+ ImplFontSubstitute(aSearchName);
+ PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName(aSearchName);
if( pFoundData )
return pFoundData;
}
@@ -1092,7 +1095,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
// use the font's shortened name if needed
if ( aSearchShortName != aSearchName )
{
- vcl::font::PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName( aSearchShortName );
+ PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName(aSearchShortName);
if( pFoundData )
{
#ifdef UNX
@@ -1125,7 +1128,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
// try the font substitutions suggested by the fallback info
if( pFontAttr )
{
- vcl::font::PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySubstFontAttr( *pFontAttr );
+ PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySubstFontAttr(*pFontAttr);
if( pFoundData )
return pFoundData;
}
@@ -1139,7 +1142,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
aSearchName = "OpenSymbol";
else
aSearchName = utl::DefaultFontConfiguration::get().getDefaultFont( aDefaultLanguageTag, DefaultFontType::SYMBOL );
- vcl::font::PhysicalFontFamily* pFoundData = FindFontFamilyByTokenNames( aSearchName );
+ PhysicalFontFamily* pFoundData = FindFontFamilyByTokenNames(aSearchName);
if( pFoundData )
return pFoundData;
}
@@ -1164,7 +1167,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
// use a shortened token name if available
if( aTempShortName != aSearchName )
{
- vcl::font::PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName( aTempShortName );
+ PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySearchName(aTempShortName);
if( pFoundData )
return pFoundData;
}
@@ -1188,7 +1191,7 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
// try the font substitutions suggested by the fallback info
if( pTempFontAttr )
{
- vcl::font::PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySubstFontAttr( *pTempFontAttr );
+ PhysicalFontFamily* pFoundData = ImplFindFontFamilyBySubstFontAttr(*pTempFontAttr);
if( pFoundData )
return pFoundData;
if( !pFontAttr )
@@ -1212,31 +1215,31 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
nSearchType |= ImplFontAttrs::Symbol;
}
- vcl::font::PhysicalFontFamily::CalcType( nSearchType, eSearchWeight, eSearchWidth, rFSD.GetFamilyType(), pFontAttr );
- vcl::font::PhysicalFontFamily* pFoundData = FindFontFamilyByAttributes( nSearchType,
- eSearchWeight, eSearchWidth, rFSD.GetItalic(), aSearchFamilyName );
+ PhysicalFontFamily::CalcType(nSearchType, eSearchWeight, eSearchWidth, rFSD.GetFamilyType(), pFontAttr);
+ PhysicalFontFamily* pFoundData = FindFontFamilyByAttributes(nSearchType,
+ eSearchWeight, eSearchWidth, rFSD.GetItalic(), aSearchFamilyName);
if( pFoundData )
{
// overwrite font selection attributes using info from the typeface flags
- if( (eSearchWeight >= WEIGHT_BOLD) &&
- (eSearchWeight > rFSD.GetWeight()) &&
- (pFoundData->GetTypeFaces() & vcl::font::FontTypeFaces::Bold) )
+ if ((eSearchWeight >= WEIGHT_BOLD)
+ && (eSearchWeight > rFSD.GetWeight())
+ && (pFoundData->GetTypeFaces() & FontTypeFaces::Bold))
{
rFSD.SetWeight( eSearchWeight );
}
- else if( (eSearchWeight < WEIGHT_NORMAL) &&
- (eSearchWeight < rFSD.GetWeight()) &&
- (eSearchWeight != WEIGHT_DONTKNOW) &&
- (pFoundData->GetTypeFaces() & vcl::font::FontTypeFaces::Light) )
+ else if ((eSearchWeight < WEIGHT_NORMAL)
+ && (eSearchWeight < rFSD.GetWeight())
+ && (eSearchWeight != WEIGHT_DONTKNOW)
+ && (pFoundData->GetTypeFaces() & FontTypeFaces::Light))
{
rFSD.SetWeight( eSearchWeight );
}
- if( (nSearchType & ImplFontAttrs::Italic) &&
- ((rFSD.GetItalic() == ITALIC_DONTKNOW) ||
- (rFSD.GetItalic() == ITALIC_NONE)) &&
- (pFoundData->GetTypeFaces() & vcl::font::FontTypeFaces::Italic) )
+ if ((nSearchType & ImplFontAttrs::Italic)
+ && ((rFSD.GetItalic() == ITALIC_DONTKNOW)
+ || (rFSD.GetItalic() == ITALIC_NONE))
+ && (pFoundData->GetTypeFaces() & FontTypeFaces::Italic))
{
rFSD.SetItalic( ITALIC_NORMAL );
}
@@ -1249,5 +1252,6 @@ vcl::font::PhysicalFontFamily* PhysicalFontCollection::FindFontFamily( vcl::font
return pFoundData;
}
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/vcl/source/font/PhysicalFontFamily.cxx b/vcl/source/font/PhysicalFontFamily.cxx
index 31d19e6da55a..5e3f64fc7cc1 100644
--- a/vcl/source/font/PhysicalFontFamily.cxx
+++ b/vcl/source/font/PhysicalFontFamily.cxx
@@ -23,7 +23,7 @@
#include <unotools/fontdefs.hxx>
#include <font/PhysicalFontFaceCollection.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
namespace vcl::font
{
@@ -247,7 +247,7 @@ void PhysicalFontFamily::UpdateDevFontList( vcl::font::PhysicalFontFaceCollectio
}
}
-void PhysicalFontFamily::UpdateCloneFontList(PhysicalFontCollection& rFontCollection) const
+void PhysicalFontFamily::UpdateCloneFontList(vcl::font::PhysicalFontCollection& rFontCollection) const
{
OUString aFamilyName = GetEnglishSearchFontName( GetFamilyName() );
PhysicalFontFamily* pFamily(nullptr);
diff --git a/vcl/source/font/fontcache.cxx b/vcl/source/font/fontcache.cxx
index c125d49f0d1b..bdc474223008 100644
--- a/vcl/source/font/fontcache.cxx
+++ b/vcl/source/font/fontcache.cxx
@@ -21,7 +21,7 @@
#include <sal/log.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/PhysicalFontFace.hxx>
#include <font/PhysicalFontFamily.hxx>
#include <fontinstance.hxx>
diff --git a/vcl/source/gdi/embeddedfontshelper.cxx b/vcl/source/gdi/embeddedfontshelper.cxx
index b699a33de11f..846f23262a03 100644
--- a/vcl/source/gdi/embeddedfontshelper.cxx
+++ b/vcl/source/gdi/embeddedfontshelper.cxx
@@ -21,7 +21,7 @@
#include <com/sun/star/io/XInputStream.hpp>
#include <font/PhysicalFontFaceCollection.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <salgdi.hxx>
#include <sft.hxx>
@@ -256,7 +256,7 @@ OUString EmbeddedFontsHelper::fontFileUrl( std::u16string_view familyName, FontF
}
bool ok = false;
SalGraphics* graphics = Application::GetDefaultDevice()->GetGraphics();
- PhysicalFontCollection fonts;
+ vcl::font::PhysicalFontCollection fonts;
graphics->GetDevFontList( &fonts );
std::unique_ptr< vcl::font::PhysicalFontFaceCollection > fontInfo( fonts.GetFontFaceCollection());
vcl::font::PhysicalFontFace* selected = nullptr;
diff --git a/vcl/source/gdi/print.cxx b/vcl/source/gdi/print.cxx
index 864755c9ae96..1b7e4210e691 100644
--- a/vcl/source/gdi/print.cxx
+++ b/vcl/source/gdi/print.cxx
@@ -34,7 +34,7 @@
#include <jobset.h>
#include <print.h>
#include <ImplOutDevData.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/PhysicalFontFaceCollection.hxx>
#include <font/fontsubstitution.hxx>
#include <impfontcache.hxx>
@@ -665,7 +665,7 @@ void Printer::ImplInit( SalPrinterQueueInfo* pInfo )
// Init data
ImplUpdatePageData();
- mxFontCollection = std::make_shared<PhysicalFontCollection>();
+ mxFontCollection = std::make_shared<vcl::font::PhysicalFontCollection>();
mxFontCache = std::make_shared<ImplFontCache>();
mpGraphics->GetDevFontList(mxFontCollection.get());
}
diff --git a/vcl/source/gdi/virdev.cxx b/vcl/source/gdi/virdev.cxx
index ea6e97a73ed1..6a44cc1cd136 100644
--- a/vcl/source/gdi/virdev.cxx
+++ b/vcl/source/gdi/virdev.cxx
@@ -26,8 +26,8 @@
#include <vcl/virdev.hxx>
#include <ImplOutDevData.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/PhysicalFontFaceCollection.hxx>
-#include <PhysicalFontCollection.hxx>
#include <impfontcache.hxx>
#include <salinst.hxx>
#include <salgdi.hxx>
diff --git a/vcl/source/outdev/font.cxx b/vcl/source/outdev/font.cxx
index 435b554f411b..9ac3d7492307 100644
--- a/vcl/source/outdev/font.cxx
+++ b/vcl/source/outdev/font.cxx
@@ -41,7 +41,7 @@
#include <impfontcache.hxx>
#include <font/DirectFontSubstitution.hxx>
#include <font/PhysicalFontFaceCollection.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/FeatureCollector.hxx>
#include <impglyphitem.hxx>
#include <sallayout.hxx>
diff --git a/vcl/unx/generic/fontmanager/fontsubst.cxx b/vcl/unx/generic/fontmanager/fontsubst.cxx
index 7945da6179c4..afbe53dd4a81 100644
--- a/vcl/unx/generic/fontmanager/fontsubst.cxx
+++ b/vcl/unx/generic/fontmanager/fontsubst.cxx
@@ -20,9 +20,9 @@
#include <sal/config.h>
#include <unx/geninst.h>
+#include <font/PhysicalFontCollection.hxx>
#include <font/fontsubstitution.hxx>
#include <unx/fontmanager.hxx>
-#include <PhysicalFontCollection.hxx>
// platform specific font substitution hooks
@@ -49,7 +49,7 @@ public:
}
-void SalGenericInstance::RegisterFontSubstitutors( PhysicalFontCollection* pFontCollection )
+void SalGenericInstance::RegisterFontSubstitutors(vcl::font::PhysicalFontCollection* pFontCollection)
{
// register font fallback substitutions
static FcPreMatchSubstitution aSubstPreMatch;
diff --git a/vcl/unx/generic/gdi/font.cxx b/vcl/unx/generic/gdi/font.cxx
index bc56b56286c5..57ff99a1c10a 100644
--- a/vcl/unx/generic/gdi/font.cxx
+++ b/vcl/unx/generic/gdi/font.cxx
@@ -53,7 +53,7 @@ X11SalGraphics::SetTextColor( Color nColor )
mxTextRenderImpl->SetTextColor(nColor);
}
-bool X11SalGraphics::AddTempDevFont( PhysicalFontCollection* pFontCollection,
+bool X11SalGraphics::AddTempDevFont( vcl::font::PhysicalFontCollection* pFontCollection,
const OUString& rFileURL,
const OUString& rFontName )
{
@@ -65,7 +65,7 @@ void X11SalGraphics::ClearDevFontCache()
mxTextRenderImpl->ClearDevFontCache();
}
-void X11SalGraphics::GetDevFontList( PhysicalFontCollection* pFontCollection )
+void X11SalGraphics::GetDevFontList( vcl::font::PhysicalFontCollection* pFontCollection )
{
mxTextRenderImpl->GetDevFontList(pFontCollection);
}
diff --git a/vcl/unx/generic/gdi/freetypetextrender.cxx b/vcl/unx/generic/gdi/freetypetextrender.cxx
index 2b39d8787605..ea8474e69fee 100644
--- a/vcl/unx/generic/gdi/freetypetextrender.cxx
+++ b/vcl/unx/generic/gdi/freetypetextrender.cxx
@@ -93,7 +93,7 @@ FreeTypeTextRenderImpl::SetTextColor( Color nColor )
}
}
-bool FreeTypeTextRenderImpl::AddTempDevFont( PhysicalFontCollection* pFontCollection,
+bool FreeTypeTextRenderImpl::AddTempDevFont( vcl::font::PhysicalFontCollection* pFontCollection,
const OUString& rFileURL,
const OUString& rFontName )
{
@@ -105,7 +105,7 @@ void FreeTypeTextRenderImpl::ClearDevFontCache()
FreetypeManager::get().ClearFontCache();
}
-void FreeTypeTextRenderImpl::GetDevFontList( PhysicalFontCollection* pFontCollection )
+void FreeTypeTextRenderImpl::GetDevFontList( vcl::font::PhysicalFontCollection* pFontCollection )
{
// prepare the FreetypeManager using psprint's font infos
FreetypeManager& rFreetypeManager = FreetypeManager::get();
diff --git a/vcl/unx/generic/glyphs/freetype_glyphcache.cxx b/vcl/unx/generic/glyphs/freetype_glyphcache.cxx
index 645afddabc73..74e3d6f55c37 100644
--- a/vcl/unx/generic/glyphs/freetype_glyphcache.cxx
+++ b/vcl/unx/generic/glyphs/freetype_glyphcache.cxx
@@ -36,7 +36,7 @@
#include <sal/log.hxx>
#include <langboost.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <sft.hxx>
#include <ft2build.h>
@@ -281,7 +281,7 @@ const unsigned char* FreetypeFontInfo::GetTable( const char* pTag, sal_uLong* pL
return nullptr;
}
-void FreetypeFontInfo::AnnounceFont( PhysicalFontCollection* pFontCollection )
+void FreetypeFontInfo::AnnounceFont( vcl::font::PhysicalFontCollection* pFontCollection )
{
rtl::Reference<FreetypeFontFace> pFD(new FreetypeFontFace( this, maDevFontAttributes ));
pFontCollection->Add( pFD.get() );
@@ -358,7 +358,7 @@ void FreetypeManager::AddFontFile(const OString& rNormalizedName,
m_nMaxFontId = nFontId;
}
-void FreetypeManager::AnnounceFonts( PhysicalFontCollection* pToAdd ) const
+void FreetypeManager::AnnounceFonts( vcl::font::PhysicalFontCollection* pToAdd ) const
{
for (auto const& font : m_aFontInfoList)
{
diff --git a/vcl/unx/generic/print/genpspgraphics.cxx b/vcl/unx/generic/print/genpspgraphics.cxx
index 3ae0e8fa40af..359c33026cfd 100644
--- a/vcl/unx/generic/print/genpspgraphics.cxx
+++ b/vcl/unx/generic/print/genpspgraphics.cxx
@@ -47,7 +47,7 @@
#include <fontattributes.hxx>
#include <impfontmetricdata.hxx>
#include <font/FontSelectPattern.hxx>
-#include <PhysicalFontCollection.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/PhysicalFontFace.hxx>
#include <sallayout.hxx>
@@ -232,12 +232,12 @@ void GenPspGraphics::SetTextColor( Color nColor )
m_pPrinterGfx->SetTextColor (aColor);
}
-bool GenPspGraphics::AddTempDevFont( PhysicalFontCollection*, const OUString&,const OUString& )
+bool GenPspGraphics::AddTempDevFont( vcl::font::PhysicalFontCollection*, const OUString&,const OUString& )
{
return false;
}
-bool GenPspGraphics::AddTempDevFontHelper( PhysicalFontCollection* pFontCollection,
+bool GenPspGraphics::AddTempDevFontHelper( vcl::font::PhysicalFontCollection* pFontCollection,
const OUString& rFileURL,
const OUString& rFontName)
{
@@ -271,7 +271,7 @@ bool GenPspGraphics::AddTempDevFontHelper( PhysicalFontCollection* pFontCollecti
return true;
}
-void GenPspGraphics::GetDevFontList( PhysicalFontCollection *pFontCollection )
+void GenPspGraphics::GetDevFontList( vcl::font::PhysicalFontCollection *pFontCollection )
{
::std::vector< psp::fontID > aList;
psp::PrintFontManager& rMgr = psp::PrintFontManager::get();
@@ -406,7 +406,7 @@ namespace vcl
}
}
-void GenPspGraphics::AnnounceFonts( PhysicalFontCollection* pFontCollection, const psp::FastPrintFontInfo& aInfo )
+void GenPspGraphics::AnnounceFonts( vcl::font::PhysicalFontCollection* pFontCollection, const psp::FastPrintFontInfo& aInfo )
{
int nQuality = 0;
diff --git a/vcl/win/gdi/salfont.cxx b/vcl/win/gdi/salfont.cxx
index 522793f68580..f1c621cd5947 100644
--- a/vcl/win/gdi/salfont.cxx
+++ b/vcl/win/gdi/salfont.cxx
@@ -53,8 +53,8 @@
#include <font/FontSelectPattern.hxx>
#include <fontsubset.hxx>
+#include <font/PhysicalFontCollection.hxx>
#include <font/PhysicalFontFaceCollection.hxx>
-#include <PhysicalFontCollection.hxx>
#include <font/PhysicalFontFace.hxx>
#include <font/fontsubstitution.hxx>
#include <sft.hxx>
@@ -243,7 +243,7 @@ bool WinGlyphFallbackSubstititution::HasMissingChars(vcl::font::PhysicalFontFace
namespace
{
//used by 2-level font fallback
- vcl::font::PhysicalFontFamily* findDevFontListByLocale(const PhysicalFontCollection &rFontCollection,
+ vcl::font::PhysicalFontFamily* findDevFontListByLocale(const vcl::font::PhysicalFontCollection &rFontCollection,
const LanguageTag& rLanguageTag )
{
// get the default font for a specified locale
@@ -300,7 +300,7 @@ bool WinGlyphFallbackSubstititution::FindFontSubstitute(vcl::font::FontSelectPat
// first level fallback:
// try use the locale specific default fonts defined in VCL.xcu
- const PhysicalFontCollection* pFontCollection = ImplGetSVData()->maGDIData.mxScreenFontList.get();
+ const vcl::font::PhysicalFontCollection* pFontCollection = ImplGetSVData()->maGDIData.mxScreenFontList.get();
vcl::font::PhysicalFontFamily* pFontFamily = findDevFontListByLocale(*pFontCollection, aLanguageTag);
if( pFontFamily )
{
@@ -355,7 +355,7 @@ namespace {
struct ImplEnumInfo
{
HDC mhDC;
- PhysicalFontCollection* mpList;
+ vcl::font::PhysicalFontCollection* mpList;
OUString* mpName;
LOGFONTW* mpLogFont;
bool mbPrinter;
@@ -1116,7 +1116,7 @@ static OUString lcl_GetFontFamilyName(const OUString& rFontFileURL)
return OUString(aBuffer + nNameOfs, nPos - nNameOfs, osl_getThreadTextEncoding());
}
-bool WinSalGraphics::AddTempDevFont(PhysicalFontCollection* pFontCollection,
+bool WinSalGraphics::AddTempDevFont(vcl::font::PhysicalFontCollection* pFontCollection,
const OUString& rFontFileURL, const OUString& rFontName)
{
OUString aFontFamily = lcl_GetFontFamilyName(rFontFileURL);
@@ -1158,7 +1158,7 @@ bool WinSalGraphics::AddTempDevFont(PhysicalFontCollection* pFontCollection,
return true;
}
-void WinSalGraphics::GetDevFontList( PhysicalFontCollection* pFontCollection )
+void WinSalGraphics::GetDevFontList( vcl::font::PhysicalFontCollection* pFontCollection )
{
// make sure all LO shared fonts are registered temporarily
static std::once_flag init;