add hd51; mostly ported from TangoCash's neutrino-mp

Origin commit data
------------------
Branch: ni/coolstream
Commit: 09ae4c3a51
Author: vanhofen <vanhofen@gmx.de>
Date: 2017-10-05 (Thu, 05 Oct 2017)

Origin message was:
------------------
- add hd51; mostly ported from TangoCash's neutrino-mp

------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
vanhofen
2017-10-05 12:52:53 +02:00
parent a3487eb052
commit a84d642cff
27 changed files with 1948 additions and 247 deletions

View File

@@ -73,7 +73,7 @@ void LcdFontRenderClass::InitFontCache()
{
printf("[LCDFONT] Intializing font cache...");
fflush(stdout);
if (FTC_Manager_New(library, 0, 0, 0, myFTC_Face_Requester, this, &cacheManager))
if (FTC_Manager_New(library, 3, 0, 0, myFTC_Face_Requester, this, &cacheManager))
{
printf(" manager failed!\n");
return;
@@ -321,11 +321,6 @@ void LcdFont::RenderString(int x, int y, const int width, const char * text, con
pthread_mutex_unlock(&renderer->render_mutex);
}
int LcdFont::getRenderWidth(const std::string &text, const bool utf8_encoded)
{
return getRenderWidth(text.c_str(), utf8_encoded);
};
int LcdFont::getRenderWidth(const char * text, const bool utf8_encoded)
{
pthread_mutex_lock(&renderer->render_mutex);

View File

@@ -56,15 +56,13 @@ class LcdFont
FT_Error getGlyphBitmap(FT_ULong glyph_index, FTC_SBit *sbit);
public:
void RenderString(int x, int y, int width, const char *text, int color,
int selected = 0, const bool utf8_encoded = true);
public:
void RenderString(int x, int y, int width, const char *text, int color, int selected=0, const bool utf8_encoded = false);
int getRenderWidth(const char *text, const bool utf8_encoded = true);
int getRenderWidth(const std::string &text, const bool utf8_encoded = true);
int getRenderWidth(const char *text, const bool utf8_encoded = false);
LcdFont(CLCDDisplay *fb, LcdFontRenderClass *render, FTC_FaceID faceid, int isize);
~LcdFont(){}
LcdFont(CLCDDisplay *fb, LcdFontRenderClass *render, FTC_FaceID faceid, int isize);
~LcdFont(){}
};

View File

@@ -25,7 +25,7 @@
*/
#include <config.h>
#ifdef HAVE_SPARK_HARDWARE
#if HAVE_SPARK_HARDWARE
#define HAVE_GENERIC_HARDWARE 1
#endif
#include "lcddisplay.h"
@@ -458,7 +458,11 @@ bool CLCDDisplay::load_png(const char * const filename)
png_destroy_read_struct(&png_ptr, (png_infopp)NULL, (png_infopp)NULL);
else
{
#if (PNG_LIBPNG_VER < 10500)
if (!(setjmp(png_ptr->jmpbuf)))
#else
if (!setjmp(png_jmpbuf(png_ptr)))
#endif
{
png_init_io(png_ptr,fh);