Elm engines: Added "buffer" engine.

This engine just creates a buffer and renders everything to that buffer.
It's really useful for creating emulations of input/output and taking
window captures from them.

SVN revision: 61688
This commit is contained in:
Tom Hacohen 2011-07-25 12:02:52 +00:00
parent 26ba21efa3
commit 7db652a383
3 changed files with 8 additions and 0 deletions

View File

@ -30,6 +30,7 @@ const char *_elm_engines[] = {
"sdl",
"software_16_sdl",
"opengl_sdl",
"buffer",
NULL
};
@ -1460,6 +1461,8 @@ _env_get(void)
(!strcasecmp(s, "software-16-wince-gdi")) ||
(!strcasecmp(s, "software_16_wince_gdi")))
eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_16_WINCE);
else if (!strcasecmp(s, "buffer"))
eina_stringshare_replace(&_elm_config->engine, ELM_BUFFER);
else if ((!strncmp(s, "shot:", 5)))
eina_stringshare_replace(&_elm_config->engine, s);
}

View File

@ -78,6 +78,7 @@ extern const char *_elm_engines[];
#define ELM_SOFTWARE_SDL (_elm_engines[9])
#define ELM_SOFTWARE_16_SDL (_elm_engines[10])
#define ELM_OPENGL_SDL (_elm_engines[11])
#define ELM_BUFFER (_elm_engines[12])
#define ELM_FONT_TOKEN_STYLE ":style="

View File

@ -1527,6 +1527,10 @@ elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type)
win->ee = ecore_evas_gl_sdl_new(NULL, 1, 1, 0, 0);
FALLBACK_TRY("OpenGL SDL");
}
else if (ENGINE_COMPARE(ELM_BUFFER))
{
win->ee = ecore_evas_buffer_new(1, 1);
}
else if (!strncmp(_elm_config->engine, "shot:", 5))
{
win->ee = ecore_evas_buffer_new(1, 1);