summaryrefslogtreecommitdiff
path: root/src/cguittfont
diff options
context:
space:
mode:
authorBlockMen <nmuelll@web.de>2013-12-12 21:02:09 +0100
committerPilzAdam <pilzadam@minetest.net>2013-12-14 21:11:38 +0100
commit977232261388fa80bd6ab3bb849ae4d7a8ade73e (patch)
treeb857e64f9181ef2f713fce992e3aaf04e9577284 /src/cguittfont
parent7a4c1e7327a19820ec1e943d031c0e6e057e0156 (diff)
downloadminetest-977232261388fa80bd6ab3bb849ae4d7a8ade73e.tar.gz
minetest-977232261388fa80bd6ab3bb849ae4d7a8ade73e.tar.bz2
minetest-977232261388fa80bd6ab3bb849ae4d7a8ade73e.zip
Add alpha setting to font shadow
Diffstat (limited to 'src/cguittfont')
-rw-r--r--src/cguittfont/CGUITTFont.cpp5
-rw-r--r--src/cguittfont/CGUITTFont.h3
2 files changed, 5 insertions, 3 deletions
diff --git a/src/cguittfont/CGUITTFont.cpp b/src/cguittfont/CGUITTFont.cpp
index b9c979090..9a702cad7 100644
--- a/src/cguittfont/CGUITTFont.cpp
+++ b/src/cguittfont/CGUITTFont.cpp
@@ -199,7 +199,7 @@ void SGUITTGlyph::unload()
//////////////////////
-CGUITTFont* CGUITTFont::createTTFont(IGUIEnvironment *env, const io::path& filename, const u32 size, const bool antialias, const bool transparency, const u32 shadow)
+CGUITTFont* CGUITTFont::createTTFont(IGUIEnvironment *env, const io::path& filename, const u32 size, const bool antialias, const bool transparency, const u32 shadow, const u32 shadow_alpha)
{
if (!c_libraryLoaded)
{
@@ -217,6 +217,7 @@ CGUITTFont* CGUITTFont::createTTFont(IGUIEnvironment *env, const io::path& filen
}
font->shadow_offset = shadow;
+ font->shadow_alpha = shadow_alpha;
return font;
}
@@ -631,7 +632,7 @@ void CGUITTFont::draw(const core::stringw& text, const core::rect<s32>& position
if (shadow_offset) {
for (size_t i = 0; i < page->render_positions.size(); ++i)
page->render_positions[i] += core::vector2di(shadow_offset, shadow_offset);
- Driver->draw2DImageBatch(page->texture, page->render_positions, page->render_source_rects, clip, video::SColor(255, 0, 0, 0), true);
+ Driver->draw2DImageBatch(page->texture, page->render_positions, page->render_source_rects, clip, video::SColor(shadow_alpha,0,0,0), true);
for (size_t i = 0; i < page->render_positions.size(); ++i)
page->render_positions[i] -= core::vector2di(shadow_offset, shadow_offset);
}
diff --git a/src/cguittfont/CGUITTFont.h b/src/cguittfont/CGUITTFont.h
index a58873da6..e24d8f18b 100644
--- a/src/cguittfont/CGUITTFont.h
+++ b/src/cguittfont/CGUITTFont.h
@@ -207,7 +207,7 @@ namespace gui
//! \param antialias set the use_monochrome (opposite to antialias) flag
//! \param transparency set the use_transparency flag
//! \return Returns a pointer to a CGUITTFont. Will return 0 if the font failed to load.
- static CGUITTFont* createTTFont(IGUIEnvironment *env, const io::path& filename, const u32 size, const bool antialias = true, const bool transparency = true, const u32 shadow = 0);
+ static CGUITTFont* createTTFont(IGUIEnvironment *env, const io::path& filename, const u32 size, const bool antialias = true, const bool transparency = true, const u32 shadow = 0, const u32 shadow_alpha = 255);
static CGUITTFont* createTTFont(IrrlichtDevice *device, const io::path& filename, const u32 size, const bool antialias = true, const bool transparency = true);
static CGUITTFont* create(IGUIEnvironment *env, const io::path& filename, const u32 size, const bool antialias = true, const bool transparency = true);
static CGUITTFont* create(IrrlichtDevice *device, const io::path& filename, const u32 size, const bool antialias = true, const bool transparency = true);
@@ -370,6 +370,7 @@ namespace gui
s32 GlobalKerningHeight;
core::ustring Invisible;
u32 shadow_offset;
+ u32 shadow_alpha;
};
} // end namespace gui