group "Elm_Config" struct {
value "config_version" int: 65537;
- value "engine" int: 0;
+ value "engine" string: "software_x11";
value "thumbscroll_enable" uchar: 1;
value "thumbscroll_threshold" int: 24;
value "thumbscroll_momentum_threshold" double: 100.0;
group "Elm_Config" struct {
value "config_version" int: 65537;
- value "engine" int: 0;
+ value "engine" string: "software_x11";
value "thumbscroll_enable" uchar: 1;
value "thumbscroll_threshold" int: 24;
value "thumbscroll_momentum_threshold" double: 100.0;
group "Elm_Config" struct {
value "config_version" int: 65537;
- value "engine" int: 0;
+ value "engine" string: "software_x11";
value "thumbscroll_enable" uchar: 0;
value "thumbscroll_threshold" int: 4;
value "thumbscroll_momentum_threshold" double: 100.0;
char *_elm_profile = NULL;
static Eet_Data_Descriptor *_config_edd = NULL;
+const char *_elm_engines[] = {
+ "software_x11",
+ "fb",
+ "directfb",
+ "software_16_x11",
+ "software_8_x11",
+ "xrender_x11",
+ "opengl_x11",
+ "software_gdi",
+ "software_16_wince_gdi",
+ "sdl",
+ "software_16_sdl",
+ "opengl_sdl",
+ NULL
+};
+
static void _desc_init(void);
static void _desc_shutdown(void);
static void _profile_fetch_from_conf(void);
EET_DATA_DESCRIPTOR_ADD_BASIC(_config_edd, Elm_Config, "config_version",
config_version, EET_T_INT);
EET_DATA_DESCRIPTOR_ADD_BASIC(_config_edd, Elm_Config, "engine", engine,
- EET_T_INT);
+ EET_T_STRING);
EET_DATA_DESCRIPTOR_ADD_BASIC(_config_edd, Elm_Config, "thumbscroll_enable",
thumbscroll_enable, EET_T_UCHAR);
EET_DATA_DESCRIPTOR_ADD_BASIC(_config_edd, Elm_Config,
{
eina_stringshare_del(fontdir);
}
+ if (_elm_config->engine) eina_stringshare_del(_elm_config->engine);
if (_elm_config->theme) eina_stringshare_del(_elm_config->theme);
if (_elm_config->modules) eina_stringshare_del(_elm_config->modules);
free(_elm_config);
* without the config, but do we want that? */
_elm_config = ELM_NEW(Elm_Config);
_elm_config->config_version = ELM_CONFIG_VERSION;
- _elm_config->engine = ELM_SOFTWARE_X11;
+ _elm_config->engine = eina_stringshare_add("software_x11");
_elm_config->thumbscroll_enable = EINA_TRUE;
_elm_config->thumbscroll_threshold = 24;
_elm_config->thumbscroll_momentum_threshold = 100.0;
(!strcasecmp(s, "x")) ||
(!strcasecmp(s, "software-x11")) ||
(!strcasecmp(s, "software_x11")))
- _elm_config->engine = ELM_SOFTWARE_X11;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_X11);
else if ((!strcasecmp(s, "opengl")) ||
(!strcasecmp(s, "gl")) ||
(!strcasecmp(s, "opengl-x11")) ||
(!strcasecmp(s, "opengl_x11")))
- _elm_config->engine = ELM_OPENGL_X11;
+ eina_stringshare_replace(&_elm_config->engine, ELM_OPENGL_X11);
else if ((!strcasecmp(s, "x11-8")) ||
(!strcasecmp(s, "x18")) ||
(!strcasecmp(s, "software-8-x11")) ||
(!strcasecmp(s, "software_8_x11")))
- _elm_config->engine = ELM_SOFTWARE_8_X11;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_8_X11);
else if ((!strcasecmp(s, "x11-16")) ||
(!strcasecmp(s, "x16")) ||
(!strcasecmp(s, "software-16-x11")) ||
(!strcasecmp(s, "software_16_x11")))
- _elm_config->engine = ELM_SOFTWARE_16_X11;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_16_X11);
else if ((!strcasecmp(s, "xrender")) ||
(!strcasecmp(s, "xr")) ||
(!strcasecmp(s, "xrender-x11")) ||
(!strcasecmp(s, "xrender_x11")))
- _elm_config->engine = ELM_XRENDER_X11;
+ eina_stringshare_replace(&_elm_config->engine, ELM_XRENDER_X11);
else if ((!strcasecmp(s, "fb")) ||
(!strcasecmp(s, "software-fb")) ||
(!strcasecmp(s, "software_fb")))
- _elm_config->engine = ELM_SOFTWARE_FB;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_FB);
else if ((!strcasecmp(s, "directfb")) ||
(!strcasecmp(s, "dfb")))
- _elm_config->engine = ELM_SOFTWARE_DIRECTFB;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_DIRECTFB);
else if ((!strcasecmp(s, "sdl")) ||
(!strcasecmp(s, "software-sdl")) ||
(!strcasecmp(s, "software_sdl")))
- _elm_config->engine = ELM_SOFTWARE_SDL;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_SDL);
else if ((!strcasecmp(s, "sdl-16")) ||
(!strcasecmp(s, "software-16-sdl")) ||
(!strcasecmp(s, "software_16_sdl")))
- _elm_config->engine = ELM_SOFTWARE_16_SDL;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_16_SDL);
else if ((!strcasecmp(s, "opengl-sdl")) ||
(!strcasecmp(s, "opengl_sdl")) ||
(!strcasecmp(s, "gl-sdl")) ||
(!strcasecmp(s, "gl_sdl")))
- _elm_config->engine = ELM_OPENGL_SDL;
+ eina_stringshare_replace(&_elm_config->engine, ELM_OPENGL_SDL);
else if ((!strcasecmp(s, "gdi")) ||
(!strcasecmp(s, "software-gdi")) ||
(!strcasecmp(s, "software_gdi")))
- _elm_config->engine = ELM_SOFTWARE_WIN32;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_WIN32);
else if ((!strcasecmp(s, "wince-gdi")) ||
(!strcasecmp(s, "software-16-wince-gdi")) ||
(!strcasecmp(s, "software_16_wince_gdi")))
- _elm_config->engine = ELM_SOFTWARE_16_WINCE;
+ eina_stringshare_replace(&_elm_config->engine, ELM_SOFTWARE_16_WINCE);
}
s = getenv("ELM_THUMBSCROLL_ENABLE");
void
_elm_config_sub_init(void)
{
- if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
- (_elm_config->engine == ELM_XRENDER_X11) ||
- (_elm_config->engine == ELM_OPENGL_X11))
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
+ ENGINE_COMPARE(ELM_XRENDER_X11) ||
+ ENGINE_COMPARE(ELM_OPENGL_X11))
+#undef ENGINE_COMPARE
{
#ifdef HAVE_ELEMENTARY_X
unsigned int val = 1000;
void
_elm_config_shutdown(void)
{
- if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
- (_elm_config->engine == ELM_XRENDER_X11) ||
- (_elm_config->engine == ELM_OPENGL_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_SDL) ||
- (_elm_config->engine == ELM_SOFTWARE_16_SDL) ||
- (_elm_config->engine == ELM_OPENGL_SDL) ||
- (_elm_config->engine == ELM_SOFTWARE_WIN32) ||
- (_elm_config->engine == ELM_SOFTWARE_16_WINCE))
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
+ ENGINE_COMPARE(ELM_XRENDER_X11) ||
+ ENGINE_COMPARE(ELM_OPENGL_X11))
+#undef ENGINE_COMPARE
{
#ifdef HAVE_ELEMENTARY_X
ecore_event_handler_del(_prop_change_handler);
evas_init();
edje_init();
_elm_config_sub_init();
- if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
- (_elm_config->engine == ELM_XRENDER_X11) ||
- (_elm_config->engine == ELM_OPENGL_X11))
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
+ ENGINE_COMPARE(ELM_XRENDER_X11) ||
+ ENGINE_COMPARE(ELM_OPENGL_X11))
+#undef ENGINE_COMPARE
{
#ifdef HAVE_ELEMENTARY_X
ecore_x_init(NULL);
_elm_module_shutdown();
ecore_imf_shutdown();
ecore_evas_shutdown();
- if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
- (_elm_config->engine == ELM_XRENDER_X11) ||
- (_elm_config->engine == ELM_OPENGL_X11))
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
+ ENGINE_COMPARE(ELM_XRENDER_X11) ||
+ ENGINE_COMPARE(ELM_OPENGL_X11))
+#undef ENGINE_COMPARE
{
#ifdef HAVE_ELEMENTARY_X
ecore_x_disconnect();
#endif
}
- if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
- (_elm_config->engine == ELM_XRENDER_X11) ||
- (_elm_config->engine == ELM_OPENGL_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_SDL) ||
- (_elm_config->engine == ELM_SOFTWARE_16_SDL) ||
- (_elm_config->engine == ELM_OPENGL_SDL) ||
- (_elm_config->engine == ELM_SOFTWARE_WIN32) ||
- (_elm_config->engine == ELM_SOFTWARE_16_WINCE))
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
+ ENGINE_COMPARE(ELM_XRENDER_X11) ||
+ ENGINE_COMPARE(ELM_OPENGL_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_SDL) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_SDL) ||
+ ENGINE_COMPARE(ELM_OPENGL_SDL) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_WIN32) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_WINCE))
+#undef ENGINE_COMPARE
evas_cserve_disconnect();
edje_shutdown();
evas_shutdown();
ecore_main_loop_iterate();
evas_object_del(win);
ecore_main_loop_iterate();
- if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
- (_elm_config->engine == ELM_XRENDER_X11) ||
- (_elm_config->engine == ELM_OPENGL_X11))
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
+ ENGINE_COMPARE(ELM_XRENDER_X11) ||
+ ENGINE_COMPARE(ELM_OPENGL_X11))
+#undef ENGINE_COMPARE
{
# ifdef HAVE_ELEMENTARY_X
ecore_x_sync();
evas_init();
edje_init();
_elm_config_sub_init();
- if ((_elm_config->engine == ELM_SOFTWARE_X11) ||
- (_elm_config->engine == ELM_SOFTWARE_16_X11) ||
- (_elm_config->engine == ELM_XRENDER_X11) ||
- (_elm_config->engine == ELM_OPENGL_X11))
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
+ ENGINE_COMPARE(ELM_XRENDER_X11) ||
+ ENGINE_COMPARE(ELM_OPENGL_X11))
+#undef ENGINE_COMPARE
{
# ifdef HAVE_ELEMENTARY_X
ecore_x_init(NULL);
int ref;
};
-typedef enum _Elm_Engine
-{
- ELM_SOFTWARE_X11,
- ELM_SOFTWARE_FB,
- ELM_SOFTWARE_DIRECTFB,
- ELM_SOFTWARE_16_X11,
- ELM_SOFTWARE_8_X11,
- ELM_XRENDER_X11,
- ELM_OPENGL_X11,
- ELM_SOFTWARE_WIN32,
- ELM_SOFTWARE_16_WINCE,
- ELM_SOFTWARE_SDL,
- ELM_SOFTWARE_16_SDL,
- ELM_OPENGL_SDL
-} Elm_Engine;
-
-
-
/* increment this whenever we change config enough that you need new
* defaults for elm to work.
*/
#define ELM_CONFIG_FILE_GENERATION 0x0001
#define ELM_CONFIG_VERSION ((ELM_CONFIG_EPOCH << 16) | ELM_CONFIG_FILE_GENERATION)
+/* note: always remember to sync it with elm_config.c */
+extern const char *_elm_engines[];
+
+#define ELM_SOFTWARE_X11 (_elm_engines[0])
+#define ELM_SOFTWARE_FB (_elm_engines[1])
+#define ELM_SOFTWARE_DIRECTFB (_elm_engines[2])
+#define ELM_SOFTWARE_16_X11 (_elm_engines[3])
+#define ELM_SOFTWARE_8_X11 (_elm_engines[4])
+#define ELM_XRENDER_X11 (_elm_engines[5])
+#define ELM_OPENGL_X11 (_elm_engines[6])
+#define ELM_SOFTWARE_WIN32 (_elm_engines[7])
+#define ELM_SOFTWARE_16_WINCE (_elm_engines[8])
+#define ELM_SOFTWARE_SDL (_elm_engines[9])
+#define ELM_SOFTWARE_16_SDL (_elm_engines[10])
+#define ELM_OPENGL_SDL (_elm_engines[11])
+
struct _Elm_Config
{
int config_version;
- int engine;
+ const char *engine;
Eina_Bool thumbscroll_enable;
int thumbscroll_threshold;
double thumbscroll_momentum_threshold;
_elm_win_xwindow_get(Elm_Win *win)
{
win->xwin = 0;
- switch (_elm_config->engine)
+
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11))
+ {
+ if (win->ee) win->xwin = ecore_evas_software_x11_window_get(win->ee);
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_FB) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_WINCE) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_SDL) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_SDL) ||
+ ENGINE_COMPARE(ELM_OPENGL_SDL))
+ {
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_16_X11))
{
- case ELM_SOFTWARE_X11:
- if (win->ee) win->xwin = ecore_evas_software_x11_window_get(win->ee);
- break;
- case ELM_SOFTWARE_FB:
- case ELM_SOFTWARE_DIRECTFB:
- case ELM_SOFTWARE_16_WINCE:
- case ELM_SOFTWARE_SDL:
- case ELM_SOFTWARE_16_SDL:
- case ELM_OPENGL_SDL:
- break;
- case ELM_SOFTWARE_16_X11:
if (win->ee) win->xwin = ecore_evas_software_x11_16_window_get(win->ee);
- break;
- case ELM_SOFTWARE_8_X11:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_8_X11))
+ {
if (win->ee) win->xwin = ecore_evas_software_x11_8_window_get(win->ee);
- break;
- case ELM_XRENDER_X11:
+ }
+ else if (ENGINE_COMPARE(ELM_XRENDER_X11))
+ {
if (win->ee) win->xwin = ecore_evas_xrender_x11_window_get(win->ee);
- break;
- case ELM_OPENGL_X11:
+ }
+ else if (ENGINE_COMPARE(ELM_OPENGL_X11))
+ {
if (win->ee) win->xwin = ecore_evas_gl_x11_window_get(win->ee);
- break;
- case ELM_SOFTWARE_WIN32:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_WIN32))
+ {
if (win->ee) win->xwin = (long)ecore_evas_win32_window_get(win->ee);
- break;
- default:
- break;
}
+#undef ENGINE_COMPARE
}
#endif
const char *fontpath;
win = ELM_NEW(Elm_Win);
- switch (_elm_config->engine)
+
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_X11))
{
- case ELM_SOFTWARE_X11:
win->ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1);
#ifdef HAVE_ELEMENTARY_X
win->client_message_handler = ecore_event_handler_add
(ECORE_X_EVENT_CLIENT_MESSAGE, _elm_win_client_message, win);
#endif
- break;
- case ELM_SOFTWARE_FB:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_FB))
+ {
win->ee = ecore_evas_fb_new(NULL, 0, 1, 1);
- break;
- case ELM_SOFTWARE_DIRECTFB:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_DIRECTFB))
+ {
win->ee = ecore_evas_directfb_new(NULL, 1, 0, 0, 1, 1);
- break;
- case ELM_SOFTWARE_16_X11:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_16_X11))
+ {
win->ee = ecore_evas_software_x11_16_new(NULL, 0, 0, 0, 1, 1);
if (!win->ee)
{
win->client_message_handler = ecore_event_handler_add
(ECORE_X_EVENT_CLIENT_MESSAGE, _elm_win_client_message, win);
#endif
- break;
- case ELM_SOFTWARE_8_X11:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_8_X11))
+ {
win->ee = ecore_evas_software_x11_8_new(NULL, 0, 0, 0, 1, 1);
if (!win->ee)
{
win->client_message_handler = ecore_event_handler_add
(ECORE_X_EVENT_CLIENT_MESSAGE, _elm_win_client_message, win);
#endif
- break;
- case ELM_XRENDER_X11:
+ }
+ else if (ENGINE_COMPARE(ELM_XRENDER_X11))
+ {
win->ee = ecore_evas_xrender_x11_new(NULL, 0, 0, 0, 1, 1);
if (!win->ee)
{
win->client_message_handler = ecore_event_handler_add
(ECORE_X_EVENT_CLIENT_MESSAGE, _elm_win_client_message, win);
#endif
- break;
- case ELM_OPENGL_X11:
+ }
+ else if (ENGINE_COMPARE(ELM_OPENGL_X11))
+ {
win->ee = ecore_evas_gl_x11_new(NULL, 0, 0, 0, 1, 1);
if (!win->ee)
{
win->client_message_handler = ecore_event_handler_add
(ECORE_X_EVENT_CLIENT_MESSAGE, _elm_win_client_message, win);
#endif
- break;
- case ELM_SOFTWARE_WIN32:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_WIN32))
+ {
win->ee = ecore_evas_software_gdi_new(NULL, 0, 0, 1, 1);
- break;
- case ELM_SOFTWARE_16_WINCE:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_16_WINCE))
+ {
win->ee = ecore_evas_software_wince_gdi_new(NULL, 0, 0, 1, 1);
- break;
- case ELM_SOFTWARE_SDL:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_SDL))
+ {
win->ee = ecore_evas_sdl_new(NULL, 0, 0, 0, 0, 0, 1);
if (!win->ee)
{
CRITICAL("Software SDL engine create failed. Try software.");
win->ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1);
}
- break;
- case ELM_SOFTWARE_16_SDL:
+ }
+ else if (ENGINE_COMPARE(ELM_SOFTWARE_16_SDL))
+ {
win->ee = ecore_evas_sdl16_new(NULL, 0, 0, 0, 0, 0, 1);
if (!win->ee)
{
CRITICAL("Sofware-16-SDL engine create failed. Try software.");
win->ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1);
}
- break;
- case ELM_OPENGL_SDL:
+ }
+ else if (ENGINE_COMPARE(ELM_OPENGL_SDL))
+ {
win->ee = ecore_evas_gl_sdl_new(NULL, 1, 1, 0, 0);
if (!win->ee)
{
CRITICAL("OpenGL SDL engine create failed. Try software.");
win->ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 1, 1);
}
- break;
- default:
- break;
}
+
if (!win->ee)
{
ERR("Cannot create window.");
_elm_win_list = eina_list_append(_elm_win_list, win->win_obj);
- switch (_elm_config->engine)
+ if (ENGINE_COMPARE(ELM_SOFTWARE_FB))
{
- case ELM_SOFTWARE_16_WINCE:
- case ELM_SOFTWARE_FB:
ecore_evas_fullscreen_set(win->ee, 1);
- break;
- case ELM_SOFTWARE_X11:
- case ELM_SOFTWARE_16_X11:
- case ELM_SOFTWARE_8_X11:
- case ELM_XRENDER_X11:
- case ELM_OPENGL_X11:
- case ELM_SOFTWARE_WIN32:
- case ELM_SOFTWARE_SDL:
- case ELM_SOFTWARE_16_SDL:
- case ELM_OPENGL_SDL:
- default:
- break;
}
+#undef ENGINE_COMPARE
if (_elm_config->focus_highlight_enable)
elm_win_focus_highlight_enabled_set(win->win_obj, EINA_TRUE);
ELM_CHECK_WIDTYPE(obj, widtype);
win = elm_widget_data_get(obj);
if (!win) return;
- switch (_elm_config->engine)
+
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_FB) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_WINCE))
{
- case ELM_SOFTWARE_16_WINCE:
- case ELM_SOFTWARE_FB:
// these engines... can ONLY be fullscreen
- break;
- default:
+ return;
+ }
+ else
+ {
ecore_evas_fullscreen_set(win->ee, fullscreen);
#ifdef HAVE_ELEMENTARY_X
_elm_win_xwin_update(win);
#endif
- break;
}
+#undef ENGINE_COMPARE
}
/**
ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
win = elm_widget_data_get(obj);
if (!win) return EINA_FALSE;
- switch (_elm_config->engine)
+
+#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
+ if (ENGINE_COMPARE(ELM_SOFTWARE_FB) ||
+ ENGINE_COMPARE(ELM_SOFTWARE_16_WINCE))
{
- case ELM_SOFTWARE_16_WINCE:
- case ELM_SOFTWARE_FB:
// these engines... can ONLY be fullscreen
return EINA_TRUE;
- break;
- default:
+ }
+ else
+ {
return ecore_evas_fullscreen_get(win->ee);
- break;
}
- return EINA_FALSE;
+#undef ENGINE_COMPARE
}
/**