diff --git a/src/ClassiCube.vcxproj b/src/ClassiCube.vcxproj
index 762a10004..762dd2362 100644
--- a/src/ClassiCube.vcxproj
+++ b/src/ClassiCube.vcxproj
@@ -315,34 +315,34 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/ClassiCube.vcxproj.filters b/src/ClassiCube.vcxproj.filters
index bcd7c726f..718258a50 100644
--- a/src/ClassiCube.vcxproj.filters
+++ b/src/ClassiCube.vcxproj.filters
@@ -115,6 +115,9 @@
{b6f24d6b-c6f6-4909-9ae1-f0c478846c6e}
+
+ {bff86df8-7005-42a8-80c1-5468c1196336}
+
@@ -497,89 +500,89 @@
Source Files\Blocks
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
-
- Source Files
+
+ Source Files\Freetype
\ No newline at end of file
diff --git a/src/Drawer2D.c b/src/Drawer2D.c
index bf9e385df..cf9337247 100644
--- a/src/Drawer2D.c
+++ b/src/Drawer2D.c
@@ -400,7 +400,7 @@ Size2D Drawer2D_MeasureText(struct DrawTextArgs* args) {
size.Height = max(size.Height, partSize.Height);
}
- /* TODO: Is this font shadow offet right? */
+ /* TODO: Is this font shadow offset right? */
if (args->UseShadow) { size.Width += DRAWER2D_OFFSET; size.Height += DRAWER2D_OFFSET; }
args->Text = value;
return size;
diff --git a/src/Drawer2D.h b/src/Drawer2D.h
index 429e6fafe..d3fda842e 100644
--- a/src/Drawer2D.h
+++ b/src/Drawer2D.h
@@ -20,6 +20,7 @@ bool Drawer2D_BitmappedText;
bool Drawer2D_BlackTextShadows;
PackedCol Drawer2D_Cols[DRAWER2D_MAX_COLS];
#define DRAWER2D_OFFSET 1
+#define Drawer2D_GetCol(c) Drawer2D_Cols[(UInt8)c]
void Drawer2D_Init(void);
void Drawer2D_Free(void);
diff --git a/src/freetype/autofit.c b/src/_autofit.c
similarity index 78%
rename from src/freetype/autofit.c
rename to src/_autofit.c
index b756fa704..55038b2a3 100644
--- a/src/freetype/autofit.c
+++ b/src/_autofit.c
@@ -17,19 +17,19 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "afangles.c"
-#include "afblue.c"
-#include "afdummy.c"
-#include "afglobal.c"
-#include "afhints.c"
-#include "aflatin.c"
-#include "afloader.c"
-#include "afmodule.c"
-#include "afranges.c"
-#include "afshaper.c"
-#include "afwarp.c"
+#include "freetype/afangles.c"
+#include "freetype/afblue.c"
+#include "freetype/afdummy.c"
+#include "freetype/afglobal.c"
+#include "freetype/afhints.c"
+#include "freetype/aflatin.c"
+#include "freetype/afloader.c"
+#include "freetype/afmodule.c"
+#include "freetype/afranges.c"
+#include "freetype/afshaper.c"
+#include "freetype/afwarp.c"
/* END */
diff --git a/src/freetype/cff.c b/src/_cff.c
similarity index 85%
rename from src/freetype/cff.c
rename to src/_cff.c
index 008df534a..96167ec1c 100644
--- a/src/freetype/cff.c
+++ b/src/_cff.c
@@ -17,13 +17,13 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "cffcmap.c"
-#include "cffdrivr.c"
-#include "cffgload.c"
-#include "cffparse.c"
-#include "cffload.c"
-#include "cffobjs.c"
+#include "freetype/cffcmap.c"
+#include "freetype/cffdrivr.c"
+#include "freetype/cffgload.c"
+#include "freetype/cffparse.c"
+#include "freetype/cffload.c"
+#include "freetype/cffobjs.c"
/* END */
diff --git a/src/freetype/ftbase.c b/src/_ftbase.c
similarity index 72%
rename from src/freetype/ftbase.c
rename to src/_ftbase.c
index 7cd031c55..83c098278 100644
--- a/src/freetype/ftbase.c
+++ b/src/_ftbase.c
@@ -16,24 +16,24 @@
/***************************************************************************/
-#include "ft2build.h"
+#include "freetype/ft2build.h"
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ftadvanc.c"
-#include "ftcalc.c"
-#include "ftfntfmt.c"
-#include "ftgloadr.c"
-#include "fthash.c"
-#include "ftlcdfil.c"
-#include "ftmac.c"
-#include "ftobjs.c"
-#include "ftoutln.c"
-#include "ftpsprop.c"
-#include "ftrfork.c"
-#include "ftsnames.c"
-#include "ftstream.c"
-#include "fttrigon.c"
-#include "ftutil.c"
+#include "freetype/ftadvanc.c"
+#include "freetype/ftcalc.c"
+#include "freetype/ftfntfmt.c"
+#include "freetype/ftgloadr.c"
+#include "freetype/fthash.c"
+#include "freetype/ftlcdfil.c"
+#include "freetype/ftmac.c"
+#include "freetype/ftobjs.c"
+#include "freetype/ftoutln.c"
+#include "freetype/ftpsprop.c"
+#include "freetype/ftrfork.c"
+#include "freetype/ftsnames.c"
+#include "freetype/ftstream.c"
+#include "freetype/fttrigon.c"
+#include "freetype/ftutil.c"
/* END */
diff --git a/src/freetype/ftbbox.c b/src/_ftbbox.c
similarity index 99%
rename from src/freetype/ftbbox.c
rename to src/_ftbbox.c
index 5d3085e4c..2f4379d43 100644
--- a/src/freetype/ftbbox.c
+++ b/src/_ftbbox.c
@@ -24,14 +24,14 @@
/*************************************************************************/
-#include "ft2build.h"
-#include FT_INTERNAL_DEBUG_H
+#include "freetype/ft2build.h"
+#include FT_INTERNAL_DEBUG_H_FT
-#include FT_BBOX_H
-#include FT_IMAGE_H
-#include FT_OUTLINE_H
-#include FT_INTERNAL_CALC_H
-#include FT_INTERNAL_OBJECTS_H
+#include FT_BBOX_H_FT
+#include FT_IMAGE_H_FT
+#include FT_OUTLINE_H_FT
+#include FT_INTERNAL_CALC_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
typedef struct TBBox_Rec_
diff --git a/src/freetype/ftbitmap.c b/src/_ftbitmap.c
similarity index 99%
rename from src/freetype/ftbitmap.c
rename to src/_ftbitmap.c
index dfc3986d3..a497c35b6 100644
--- a/src/freetype/ftbitmap.c
+++ b/src/_ftbitmap.c
@@ -16,12 +16,12 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_INTERNAL_DEBUG_H
+#include "freetype/ft2build.h"
+#include FT_INTERNAL_DEBUG_H_FT
-#include FT_BITMAP_H
-#include FT_IMAGE_H
-#include FT_INTERNAL_OBJECTS_H
+#include FT_BITMAP_H_FT
+#include FT_IMAGE_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
static
diff --git a/src/freetype/ftcache.c b/src/_ftcache.c
similarity index 82%
rename from src/freetype/ftcache.c
rename to src/_ftcache.c
index a7a0a05f6..d335e3f0f 100644
--- a/src/freetype/ftcache.c
+++ b/src/_ftcache.c
@@ -17,16 +17,16 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "ftcbasic.c"
-#include "ftccache.c"
-#include "ftccmap.c"
-#include "ftcglyph.c"
-#include "ftcimage.c"
-#include "ftcmanag.c"
-#include "ftcmru.c"
-#include "ftcsbits.c"
+#include "freetype/ftcbasic.c"
+#include "freetype/ftccache.c"
+#include "freetype/ftccmap.c"
+#include "freetype/ftcglyph.c"
+#include "freetype/ftcimage.c"
+#include "freetype/ftcmanag.c"
+#include "freetype/ftcmru.c"
+#include "freetype/ftcsbits.c"
/* END */
diff --git a/src/freetype/ftcid.c b/src/_ftcid.c
similarity index 96%
rename from src/freetype/ftcid.c
rename to src/_ftcid.c
index 11b97a6e6..577d13527 100644
--- a/src/freetype/ftcid.c
+++ b/src/_ftcid.c
@@ -16,10 +16,10 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_CID_H
-#include FT_INTERNAL_OBJECTS_H
-#include FT_SERVICE_CID_H
+#include "freetype/ft2build.h"
+#include FT_CID_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
+#include FT_SERVICE_CID_H_FT
/* documentation is in ftcid.h */
diff --git a/src/freetype/ftfstype.c b/src/_ftfstype.c
similarity index 92%
rename from src/freetype/ftfstype.c
rename to src/_ftfstype.c
index 8cbb26394..eacc98280 100644
--- a/src/freetype/ftfstype.c
+++ b/src/_ftfstype.c
@@ -15,11 +15,11 @@
/* */
/***************************************************************************/
-#include "ft2build.h"
-#include FT_TYPE1_TABLES_H
-#include FT_TRUETYPE_TABLES_H
-#include FT_INTERNAL_SERVICE_H
-#include FT_SERVICE_POSTSCRIPT_INFO_H
+#include "freetype/ft2build.h"
+#include FT_TYPE1_TABLES_H_FT
+#include FT_TRUETYPE_TABLES_H_FT
+#include FT_INTERNAL_SERVICE_H_FT
+#include FT_SERVICE_POSTSCRIPT_INFO_H_FT
/* documentation is in freetype.h */
diff --git a/src/freetype/ftgasp.c b/src/_ftgasp.c
similarity index 95%
rename from src/freetype/ftgasp.c
rename to src/_ftgasp.c
index 020838ff8..1ce5f5fc7 100644
--- a/src/freetype/ftgasp.c
+++ b/src/_ftgasp.c
@@ -16,9 +16,9 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_GASP_H
-#include FT_INTERNAL_TRUETYPE_TYPES_H
+#include "freetype/ft2build.h"
+#include FT_GASP_H_FT
+#include FT_INTERNAL_TRUETYPE_TYPES_H_FT
FT_EXPORT_DEF( FT_Int )
diff --git a/src/freetype/ftglyph.c b/src/_ftglyph.c
similarity index 99%
rename from src/freetype/ftglyph.c
rename to src/_ftglyph.c
index 814fd9694..246f1e679 100644
--- a/src/freetype/ftglyph.c
+++ b/src/_ftglyph.c
@@ -28,13 +28,13 @@
/*************************************************************************/
-#include "ft2build.h"
-#include FT_INTERNAL_DEBUG_H
+#include "freetype/ft2build.h"
+#include FT_INTERNAL_DEBUG_H_FT
-#include FT_GLYPH_H
-#include FT_OUTLINE_H
-#include FT_BITMAP_H
-#include FT_INTERNAL_OBJECTS_H
+#include FT_GLYPH_H_FT
+#include FT_OUTLINE_H_FT
+#include FT_BITMAP_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
/*************************************************************************/
/* */
diff --git a/src/freetype/ftinit.c b/src/_ftinit.c
similarity index 96%
rename from src/freetype/ftinit.c
rename to src/_ftinit.c
index 021080174..f5bd2c0b4 100644
--- a/src/freetype/ftinit.c
+++ b/src/_ftinit.c
@@ -37,11 +37,11 @@
/*************************************************************************/
-#include "ft2build.h"
-#include FT_CONFIG_CONFIG_H
-#include FT_INTERNAL_OBJECTS_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_MODULE_H
+#include "freetype/ft2build.h"
+#include FT_CONFIG_CONFIG_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
+#include FT_INTERNAL_DEBUG_H_FT
+#include FT_MODULE_H_FT
/*************************************************************************/
@@ -61,7 +61,7 @@
#define FT_USE_MODULE( type, x ) extern const type x;
#endif
-#include FT_CONFIG_MODULES_H
+#include FT_CONFIG_MODULES_H_FT
#undef FT_USE_MODULE
#define FT_USE_MODULE( type, x ) (const FT_Module_Class*)&(x),
@@ -69,7 +69,7 @@
static
const FT_Module_Class* const ft_default_modules[] =
{
-#include FT_CONFIG_MODULES_H
+#include FT_CONFIG_MODULES_H_FT
0
};
diff --git a/src/freetype/ftmm.c b/src/_ftmm.c
similarity index 98%
rename from src/freetype/ftmm.c
rename to src/_ftmm.c
index 97ddc9ee1..6b1534667 100644
--- a/src/freetype/ftmm.c
+++ b/src/_ftmm.c
@@ -16,13 +16,13 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_INTERNAL_DEBUG_H
+#include "freetype/ft2build.h"
+#include FT_INTERNAL_DEBUG_H_FT
-#include FT_MULTIPLE_MASTERS_H
-#include FT_INTERNAL_OBJECTS_H
-#include FT_SERVICE_MULTIPLE_MASTERS_H
-#include FT_SERVICE_METRICS_VARIATIONS_H
+#include FT_MULTIPLE_MASTERS_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
+#include FT_SERVICE_MULTIPLE_MASTERS_H_FT
+#include FT_SERVICE_METRICS_VARIATIONS_H_FT
/*************************************************************************/
diff --git a/src/freetype/ftpfr.c b/src/_ftpfr.c
similarity index 97%
rename from src/freetype/ftpfr.c
rename to src/_ftpfr.c
index e0217bd7a..a734a1f3a 100644
--- a/src/freetype/ftpfr.c
+++ b/src/_ftpfr.c
@@ -15,11 +15,11 @@
/* */
/***************************************************************************/
-#include "ft2build.h"
-#include FT_INTERNAL_DEBUG_H
+#include "freetype/ft2build.h"
+#include FT_INTERNAL_DEBUG_H_FT
-#include FT_INTERNAL_OBJECTS_H
-#include FT_SERVICE_PFR_H
+#include FT_INTERNAL_OBJECTS_H_FT
+#include FT_SERVICE_PFR_H_FT
/* check the format */
diff --git a/src/freetype/ftstroke.c b/src/_ftstroke.c
similarity index 99%
rename from src/freetype/ftstroke.c
rename to src/_ftstroke.c
index 559367a42..88219123b 100644
--- a/src/freetype/ftstroke.c
+++ b/src/_ftstroke.c
@@ -16,13 +16,13 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_STROKER_H
-#include FT_TRIGONOMETRY_H
-#include FT_OUTLINE_H
-#include FT_INTERNAL_MEMORY_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_OBJECTS_H
+#include "freetype/ft2build.h"
+#include FT_STROKER_H_FT
+#include FT_TRIGONOMETRY_H_FT
+#include FT_OUTLINE_H_FT
+#include FT_INTERNAL_MEMORY_H_FT
+#include FT_INTERNAL_DEBUG_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
/* declare an extern to access `ft_outline_glyph_class' globally */
diff --git a/src/freetype/ftsynth.c b/src/_ftsynth.c
similarity index 97%
rename from src/freetype/ftsynth.c
rename to src/_ftsynth.c
index 964a103b8..4d1849bba 100644
--- a/src/freetype/ftsynth.c
+++ b/src/_ftsynth.c
@@ -16,12 +16,12 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_SYNTHESIS_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_OBJECTS_H
-#include FT_OUTLINE_H
-#include FT_BITMAP_H
+#include "freetype/ft2build.h"
+#include FT_SYNTHESIS_H_FT
+#include FT_INTERNAL_DEBUG_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
+#include FT_OUTLINE_H_FT
+#include FT_BITMAP_H_FT
/*************************************************************************/
diff --git a/src/freetype/ftsystem.c b/src/_ftsystem.c
similarity index 97%
rename from src/freetype/ftsystem.c
rename to src/_ftsystem.c
index 48ee19c3e..48f9c03e0 100644
--- a/src/freetype/ftsystem.c
+++ b/src/_ftsystem.c
@@ -25,13 +25,13 @@
/*************************************************************************/
-#include "ft2build.h"
-#include FT_CONFIG_CONFIG_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_STREAM_H
-#include FT_SYSTEM_H
-#include FT_ERRORS_H
-#include FT_TYPES_H
+#include "freetype/ft2build.h"
+#include FT_CONFIG_CONFIG_H_FT
+#include FT_INTERNAL_DEBUG_H_FT
+#include FT_INTERNAL_STREAM_H_FT
+#include FT_SYSTEM_H_FT
+#include FT_ERRORS_H_FT
+#include FT_TYPES_H_FT
/*************************************************************************/
diff --git a/src/freetype/fttype1.c b/src/_fttype1.c
similarity index 95%
rename from src/freetype/fttype1.c
rename to src/_fttype1.c
index c60137f7d..1e8ccee53 100644
--- a/src/freetype/fttype1.c
+++ b/src/_fttype1.c
@@ -16,11 +16,11 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_OBJECTS_H
-#include FT_INTERNAL_SERVICE_H
-#include FT_SERVICE_POSTSCRIPT_INFO_H
+#include "freetype/ft2build.h"
+#include FT_INTERNAL_DEBUG_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
+#include FT_INTERNAL_SERVICE_H_FT
+#include FT_SERVICE_POSTSCRIPT_INFO_H_FT
/* documentation is in t1tables.h */
diff --git a/src/freetype/pfr.c b/src/_pfr.c
similarity index 85%
rename from src/freetype/pfr.c
rename to src/_pfr.c
index a9f7fe79e..9028a635a 100644
--- a/src/freetype/pfr.c
+++ b/src/_pfr.c
@@ -17,14 +17,14 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "pfrcmap.c"
-#include "pfrdrivr.c"
-#include "pfrgload.c"
-#include "pfrload.c"
-#include "pfrobjs.c"
-#include "pfrsbit.c"
+#include "freetype/pfrcmap.c"
+#include "freetype/pfrdrivr.c"
+#include "freetype/pfrgload.c"
+#include "freetype/pfrload.c"
+#include "freetype/pfrobjs.c"
+#include "freetype/pfrsbit.c"
/* END */
diff --git a/src/freetype/psaux.c b/src/_psaux.c
similarity index 71%
rename from src/freetype/psaux.c
rename to src/_psaux.c
index d4907b903..091e1cc7e 100644
--- a/src/freetype/psaux.c
+++ b/src/_psaux.c
@@ -17,25 +17,25 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "afmparse.c"
-#include "psauxmod.c"
-#include "psconv.c"
-#include "psobjs.c"
-#include "t1cmap.c"
-#include "t1decode.c"
-#include "cffdecode.c"
+#include "freetype/afmparse.c"
+#include "freetype/psauxmod.c"
+#include "freetype/psconv.c"
+#include "freetype/psobjs.c"
+#include "freetype/t1cmap.c"
+#include "freetype/t1decode.c"
+#include "freetype/cffdecode.c"
-#include "psarrst.c"
-#include "psblues.c"
-#include "pserror.c"
-#include "psfont.c"
-#include "psft.c"
-#include "pshints.c"
-#include "psintrp.c"
-#include "psread.c"
-#include "psstack.c"
+#include "freetype/psarrst.c"
+#include "freetype/psblues.c"
+#include "freetype/pserror.c"
+#include "freetype/psfont.c"
+#include "freetype/psft.c"
+#include "freetype/pshints.c"
+#include "freetype/psintrp.c"
+#include "freetype/psread.c"
+#include "freetype/psstack.c"
/* END */
diff --git a/src/freetype/pshinter.c b/src/_pshinter.c
similarity index 89%
rename from src/freetype/pshinter.c
rename to src/_pshinter.c
index 4e2aab497..b5514a4c6 100644
--- a/src/freetype/pshinter.c
+++ b/src/_pshinter.c
@@ -17,12 +17,12 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "pshalgo.c"
-#include "pshglob.c"
-#include "pshmod.c"
-#include "pshrec.c"
+#include "freetype/pshalgo.c"
+#include "freetype/pshglob.c"
+#include "freetype/pshmod.c"
+#include "freetype/pshrec.c"
/* END */
diff --git a/src/freetype/psmodule.c b/src/_psmodule.c
similarity index 98%
rename from src/freetype/psmodule.c
rename to src/_psmodule.c
index dab786e6c..cbdebd066 100644
--- a/src/freetype/psmodule.c
+++ b/src/_psmodule.c
@@ -16,12 +16,12 @@
/***************************************************************************/
-#include "ft2build.h"
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_OBJECTS_H
-#include FT_SERVICE_POSTSCRIPT_CMAPS_H
+#include "freetype/ft2build.h"
+#include FT_INTERNAL_DEBUG_H_FT
+#include FT_INTERNAL_OBJECTS_H_FT
+#include FT_SERVICE_POSTSCRIPT_CMAPS_H_FT
-#include "psmodule.h"
+#include "freetype/psmodule.h"
/*
* The file `pstables.h' with its arrays and its function
@@ -35,12 +35,12 @@
* definitions, and `DEFINE_PS_TABLES_DATA' to provide both proper array
* declarations and definitions.
*/
-#include "pstables.h"
+#include "freetype/pstables.h"
#define DEFINE_PS_TABLES
#define DEFINE_PS_TABLES_DATA
-#include "pstables.h"
+#include "freetype/pstables.h"
-#include "psnamerr.h"
+#include "freetype/psnamerr.h"
#ifdef FT_CONFIG_OPTION_POSTSCRIPT_NAMES
diff --git a/src/freetype/raster.c b/src/_raster.c
similarity index 93%
rename from src/freetype/raster.c
rename to src/_raster.c
index e379b3585..a61bbca71 100644
--- a/src/freetype/raster.c
+++ b/src/_raster.c
@@ -17,10 +17,10 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "ftraster.c"
-#include "ftrend1.c"
+#include "freetype/ftraster.c"
+#include "freetype/ftrend1.c"
/* END */
diff --git a/src/freetype/sfnt.c b/src/_sfnt.c
similarity index 83%
rename from src/freetype/sfnt.c
rename to src/_sfnt.c
index f47f0f972..f16b95f31 100644
--- a/src/freetype/sfnt.c
+++ b/src/_sfnt.c
@@ -17,16 +17,16 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "sfdriver.c"
-#include "sfobjs.c"
-#include "ttcmap.c"
-#include "ttkern.c"
-#include "ttload.c"
-#include "ttmtx.c"
-#include "ttpost.c"
-#include "ttsbit.c"
+#include "freetype/sfdriver.c"
+#include "freetype/sfobjs.c"
+#include "freetype/ttcmap.c"
+#include "freetype/ttkern.c"
+#include "freetype/ttload.c"
+#include "freetype/ttmtx.c"
+#include "freetype/ttpost.c"
+#include "freetype/ttsbit.c"
/* END */
diff --git a/src/freetype/smooth.c b/src/_smooth.c
similarity index 93%
rename from src/freetype/smooth.c
rename to src/_smooth.c
index a4ab9a528..94d08064a 100644
--- a/src/freetype/smooth.c
+++ b/src/_smooth.c
@@ -17,10 +17,10 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "ftgrays.c"
-#include "ftsmooth.c"
+#include "freetype/ftgrays.c"
+#include "freetype/ftsmooth.c"
/* END */
diff --git a/src/freetype/truetype.c b/src/_truetype.c
similarity index 77%
rename from src/freetype/truetype.c
rename to src/_truetype.c
index 5f82c1d0d..629e61206 100644
--- a/src/freetype/truetype.c
+++ b/src/_truetype.c
@@ -17,15 +17,15 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "ttdriver.c" /* driver interface */
-#include "ttgload.c" /* glyph loader */
-#include "ttgxvar.c" /* gx distortable font */
-#include "ttinterp.c"
-#include "ttobjs.c" /* object manager */
-#include "ttpload.c" /* tables loader */
-#include "ttsubpix.c"
+#include "freetype/ttdriver.c" /* driver interface */
+#include "freetype/ttgload.c" /* glyph loader */
+#include "freetype/ttgxvar.c" /* gx distortable font */
+#include "freetype/ttinterp.c"
+#include "freetype/ttobjs.c" /* object manager */
+#include "freetype/ttpload.c" /* tables loader */
+#include "freetype/ttsubpix.c"
/* END */
diff --git a/src/freetype/type1.c b/src/_type1.c
similarity index 86%
rename from src/freetype/type1.c
rename to src/_type1.c
index b2b07b475..6a2b09ce0 100644
--- a/src/freetype/type1.c
+++ b/src/_type1.c
@@ -17,14 +17,14 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "t1afm.c"
-#include "t1driver.c"
-#include "t1gload.c"
-#include "t1load.c"
-#include "t1objs.c"
-#include "t1parse.c"
+#include "freetype/t1afm.c"
+#include "freetype/t1driver.c"
+#include "freetype/t1gload.c"
+#include "freetype/t1load.c"
+#include "freetype/t1objs.c"
+#include "freetype/t1parse.c"
/* END */
diff --git a/src/freetype/type1cid.c b/src/_type1cid.c
similarity index 87%
rename from src/freetype/type1cid.c
rename to src/_type1cid.c
index 60c2cca1d..ba132f491 100644
--- a/src/freetype/type1cid.c
+++ b/src/_type1cid.c
@@ -17,13 +17,13 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "cidgload.c"
-#include "cidload.c"
-#include "cidobjs.c"
-#include "cidparse.c"
-#include "cidriver.c"
+#include "freetype/cidgload.c"
+#include "freetype/cidload.c"
+#include "freetype/cidobjs.c"
+#include "freetype/cidparse.c"
+#include "freetype/cidriver.c"
/* END */
diff --git a/src/freetype/type42.c b/src/_type42.c
similarity index 91%
rename from src/freetype/type42.c
rename to src/_type42.c
index 088f33ae9..068af5ac9 100644
--- a/src/freetype/type42.c
+++ b/src/_type42.c
@@ -17,11 +17,11 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include "ft2build.h"
+#include "freetype/ft2build.h"
-#include "t42drivr.c"
-#include "t42objs.c"
-#include "t42parse.c"
+#include "freetype/t42drivr.c"
+#include "freetype/t42objs.c"
+#include "freetype/t42parse.c"
/* END */
diff --git a/src/freetype/ftheader.h b/src/freetype/ftheader.h
index 930b2ed45..c2c75282e 100644
--- a/src/freetype/ftheader.h
+++ b/src/freetype/ftheader.h
@@ -108,6 +108,7 @@
*/
#ifndef FT_CONFIG_CONFIG_H
#define FT_CONFIG_CONFIG_H "ftconfig.h"
+#define FT_CONFIG_CONFIG_H_FT "freetype/ftconfig.h"
#endif
@@ -154,6 +155,7 @@
*/
#ifndef FT_CONFIG_MODULES_H
#define FT_CONFIG_MODULES_H "ftmodule.h"
+#define FT_CONFIG_MODULES_H_FT "freetype/ftmodule.h"
#endif
/* */
@@ -186,6 +188,7 @@
*
*/
#define FT_ERRORS_H "fterrors.h"
+#define FT_ERRORS_H_FT "freetype/fterrors.h"
/*************************************************************************
@@ -215,6 +218,7 @@
*
*/
#define FT_SYSTEM_H "ftsystem.h"
+#define FT_SYSTEM_H_FT "freetype/ftsystem.h"
/*************************************************************************
@@ -231,6 +235,7 @@
*
*/
#define FT_IMAGE_H "ftimage.h"
+#define FT_IMAGE_H_FT "freetype/ftimage.h"
/*************************************************************************
@@ -246,6 +251,7 @@
*
*/
#define FT_TYPES_H "fttypes.h"
+#define FT_TYPES_H_FT "freetype/fttypes.h"
/*************************************************************************
@@ -274,6 +280,7 @@
*
*/
#define FT_OUTLINE_H "ftoutln.h"
+#define FT_OUTLINE_H_FT "freetype/ftoutln.h"
/*************************************************************************
@@ -300,6 +307,7 @@
*
*/
#define FT_MODULE_H "ftmodapi.h"
+#define FT_MODULE_H_FT "freetype/ftmodapi.h"
/*************************************************************************
@@ -384,6 +392,7 @@
*
*/
#define FT_TYPE1_TABLES_H "t1tables.h"
+#define FT_TYPE1_TABLES_H_FT "freetype/t1tables.h"
/*************************************************************************
@@ -412,6 +421,7 @@
*
*/
#define FT_TRUETYPE_TABLES_H "tttables.h"
+#define FT_TRUETYPE_TABLES_H_FT "freetype/tttables.h"
/*************************************************************************
@@ -440,6 +450,7 @@
*
*/
#define FT_CID_H "ftcid.h"
+#define FT_CID_H_FT "freetype/ftcid.h"
/*************************************************************************
@@ -453,6 +464,7 @@
*
*/
#define FT_GLYPH_H "ftglyph.h"
+#define FT_GLYPH_H_FT "freetype/ftglyph.h"
/*************************************************************************
@@ -466,6 +478,7 @@
*
*/
#define FT_BITMAP_H "ftbitmap.h"
+#define FT_BITMAP_H_FT "freetype/ftbitmap.h"
/*************************************************************************
@@ -479,6 +492,7 @@
*
*/
#define FT_BBOX_H "ftbbox.h"
+#define FT_BBOX_H_FT "freetype/ftbbox.h"
/*************************************************************************
@@ -522,6 +536,7 @@
*
*/
#define FT_MULTIPLE_MASTERS_H "ftmm.h"
+#define FT_MULTIPLE_MASTERS_H_FT "freetype/ftmm.h"
/*************************************************************************
@@ -561,6 +576,7 @@
* FreeType~2 API which provides functions to stroke outline paths.
*/
#define FT_STROKER_H "ftstroke.h"
+#define FT_STROKER_H_FT "freetype/ftstroke.h"
/*************************************************************************
@@ -573,6 +589,7 @@
* FreeType~2 API which performs artificial obliquing and emboldening.
*/
#define FT_SYNTHESIS_H "ftsynth.h"
+#define FT_SYNTHESIS_H_FT "freetype/ftsynth.h"
/*************************************************************************
@@ -601,6 +618,7 @@
* cosines and arc tangents).
*/
#define FT_TRIGONOMETRY_H "fttrigon.h"
+#define FT_TRIGONOMETRY_H_FT "freetype/fttrigon.h"
/*************************************************************************
@@ -637,6 +655,7 @@
* FreeType~2 API which returns entries from the TrueType GASP table.
*/
#define FT_GASP_H "ftgasp.h"
+#define FT_GASP_H_FT "freetype/ftgasp.h"
/*************************************************************************
diff --git a/src/freetype/ftserv.h b/src/freetype/ftserv.h
index df5179ed1..5eeffc0fd 100644
--- a/src/freetype/ftserv.h
+++ b/src/freetype/ftserv.h
@@ -985,24 +985,28 @@ FT_BEGIN_HEADER
* The header files containing the services.
*/
-#define FT_SERVICE_BDF_H "svbdf.h"
#define FT_SERVICE_CFF_TABLE_LOAD_H "svcfftl.h"
#define FT_SERVICE_CID_H "svcid.h"
+#define FT_SERVICE_CID_H_FT "freetype/svcid.h"
#define FT_SERVICE_FONT_FORMAT_H "svfntfmt.h"
#define FT_SERVICE_GLYPH_DICT_H "svgldict.h"
#define FT_SERVICE_KERNING_H "svkern.h"
#define FT_SERVICE_METRICS_VARIATIONS_H "svmetric.h"
+#define FT_SERVICE_METRICS_VARIATIONS_H_FT "freetype/svmetric.h"
#define FT_SERVICE_MULTIPLE_MASTERS_H "svmm.h"
+#define FT_SERVICE_MULTIPLE_MASTERS_H_FT "freetype/svmm.h"
#define FT_SERVICE_PFR_H "svpfr.h"
+#define FT_SERVICE_PFR_H_FT "freetype/svpfr.h"
#define FT_SERVICE_POSTSCRIPT_CMAPS_H "svpscmap.h"
+#define FT_SERVICE_POSTSCRIPT_CMAPS_H_FT "freetype/svpscmap.h"
#define FT_SERVICE_POSTSCRIPT_INFO_H "svpsinfo.h"
+#define FT_SERVICE_POSTSCRIPT_INFO_H_FT "freetype/svpsinfo.h"
#define FT_SERVICE_POSTSCRIPT_NAME_H "svpostnm.h"
#define FT_SERVICE_PROPERTIES_H "svprop.h"
#define FT_SERVICE_SFNT_H "svsfnt.h"
#define FT_SERVICE_TRUETYPE_ENGINE_H "svtteng.h"
#define FT_SERVICE_TRUETYPE_GLYF_H "svttglyf.h"
#define FT_SERVICE_TT_CMAP_H "svttcmap.h"
-#define FT_SERVICE_WINFNT_H "svwinfnt.h"
/* */
diff --git a/src/freetype/internal.h b/src/freetype/internal.h
index 4dd718a3c..3ba6f2683 100644
--- a/src/freetype/internal.h
+++ b/src/freetype/internal.h
@@ -25,21 +25,27 @@
#define FT_INTERNAL_OBJECTS_H "ftobjs.h"
-#define FT_INTERNAL_PIC_H "ftpic.h"
+#define FT_INTERNAL_OBJECTS_H_FT "freetype/ftobjs.h"
#define FT_INTERNAL_STREAM_H "ftstream.h"
+#define FT_INTERNAL_STREAM_H_FT "freetype/ftstream.h"
#define FT_INTERNAL_MEMORY_H "ftmemory.h"
+#define FT_INTERNAL_MEMORY_H_FT "freetype/ftmemory.h"
#define FT_INTERNAL_DEBUG_H "ftdebug.h"
+#define FT_INTERNAL_DEBUG_H_FT "freetype/ftdebug.h"
#define FT_INTERNAL_CALC_H "ftcalc.h"
+#define FT_INTERNAL_CALC_H_FT "freetype/ftcalc.h"
#define FT_INTERNAL_HASH_H "fthash.h"
#define FT_INTERNAL_DRIVER_H "ftdrv.h"
#define FT_INTERNAL_TRACE_H "fttrace.h"
#define FT_INTERNAL_GLYPH_LOADER_H "ftgloadr.h"
#define FT_INTERNAL_SFNT_H "sfnt.h"
#define FT_INTERNAL_SERVICE_H "ftserv.h"
+#define FT_INTERNAL_SERVICE_H_FT "freetype/ftserv.h"
#define FT_INTERNAL_RFORK_H "ftrfork.h"
#define FT_INTERNAL_VALIDATE_H "ftvalid.h"
#define FT_INTERNAL_TRUETYPE_TYPES_H "tttypes.h"
+#define FT_INTERNAL_TRUETYPE_TYPES_H_FT "freetype/tttypes.h"
#define FT_INTERNAL_TYPE1_TYPES_H "t1types.h"
#define FT_INTERNAL_POSTSCRIPT_AUX_H "psaux.h"
diff --git a/src/freetype/svwinfnt.h b/src/freetype/svwinfnt.h
deleted file mode 100644
index 80d481cbd..000000000
--- a/src/freetype/svwinfnt.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/***************************************************************************/
-/* */
-/* svwinfnt.h */
-/* */
-/* The FreeType Windows FNT/FONT service (specification). */
-/* */
-/* Copyright 2003-2018 by */
-/* David Turner, Robert Wilhelm, and Werner Lemberg. */
-/* */
-/* This file is part of the FreeType project, and may only be used, */
-/* modified, and distributed under the terms of the FreeType project */
-/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
-/* this file you indicate that you have read the license and */
-/* understand and accept it fully. */
-/* */
-/***************************************************************************/
-
-
-#ifndef SVWINFNT_H_
-#define SVWINFNT_H_
-
-#include FT_INTERNAL_SERVICE_H
-#include FT_WINFONTS_H
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_WINFNT "winfonts"
-
- typedef FT_Error
- (*FT_WinFnt_GetHeaderFunc)( FT_Face face,
- FT_WinFNT_HeaderRec *aheader );
-
-
- FT_DEFINE_SERVICE( WinFnt )
- {
- FT_WinFnt_GetHeaderFunc get_header;
- };
-
- /* */
-
-
-FT_END_HEADER
-
-
-#endif /* SVWINFNT_H_ */
-
-
-/* END */