/* externally accessible functions */ EAPI void e_canvas_add(Ecore_Evas *ee) { Evas *e; _e_canvases = eina_list_prepend(_e_canvases, ee); e = ecore_evas_get(ee); evas_image_cache_set(e, e_config->image_cache * 1024); evas_font_cache_set(e, e_config->font_cache * 1024); e_path_evas_append(path_fonts, e); if (e_config->font_hinting == 0) { if (evas_font_hinting_can_hint(e, EVAS_FONT_HINTING_BYTECODE)) evas_font_hinting_set(e, EVAS_FONT_HINTING_BYTECODE); else if (evas_font_hinting_can_hint(e, EVAS_FONT_HINTING_AUTO)) evas_font_hinting_set(e, EVAS_FONT_HINTING_AUTO); else evas_font_hinting_set(e, EVAS_FONT_HINTING_NONE); } else if (e_config->font_hinting == 1) { if (evas_font_hinting_can_hint(e, EVAS_FONT_HINTING_AUTO)) evas_font_hinting_set(e, EVAS_FONT_HINTING_AUTO); else evas_font_hinting_set(e, EVAS_FONT_HINTING_NONE); } else if (e_config->font_hinting == 2) evas_font_hinting_set(e, EVAS_FONT_HINTING_NONE); }
END_TEST #define _CHECK_SET_GET(x) \ do \ { \ Evas_Coord r, g, b, a; \ evas_object_text_##x##_set(to, 100, 150, 125, 12); \ evas_object_text_##x##_get(to, &r, &g, &b, &a); \ fail_if((r != 100) || (g != 150) || (b != 125) || (a != 12)); \ /* Set to the same value */ \ evas_object_text_##x##_set(to, 100, 150, 125, 12); \ evas_object_text_##x##_get(to, &r, &g, &b, &a); \ fail_if((r != 100) || (g != 150) || (b != 125) || (a != 12)); \ } \ while (0) START_TEST(evas_text_set_get) { START_TEXT_TEST(); const char *buf = "Test - בדיקה"; /* Text */ evas_object_text_text_set(to, buf); fail_if(strcmp(evas_object_text_text_get(to), buf)); /* Colors */ _CHECK_SET_GET(shadow_color); _CHECK_SET_GET(glow_color); _CHECK_SET_GET(glow2_color); _CHECK_SET_GET(outline_color); /* Font and size */ const char *font = TEST_FONT_NAME; Evas_Font_Size size = 14; evas_object_text_font_set(to, font, size); font = NULL; size = 0; evas_object_text_font_get(to, &font, &size); fail_if(strcmp(font, TEST_FONT_NAME)); fail_if(size != 14); evas_object_text_font_set(to, font, size); font = NULL; size = 0; evas_object_text_font_get(to, &font, &size); fail_if(strcmp(font, TEST_FONT_NAME)); fail_if(size != 14); font = "NON-EXISTING-FONT"; size = 14; evas_object_text_font_set(to, font, size); font = NULL; size = 0; evas_object_text_font_get(to, &font, &size); fail_if(strcmp(font, "NON-EXISTING-FONT")); font = "Serif"; size = 2; evas_object_text_font_set(to, font, size); font = NULL; size = 0; evas_object_text_font_get(to, &font, &size); fail_if(strcmp(font, "Serif")); fail_if(size != 2); evas_object_text_font_source_set(to, "/usr/share/fonts/Sans.ttf"); font = evas_object_text_font_source_get(to); fail_if(strcmp(font, "/usr/share/fonts/Sans.ttf")); evas_object_text_font_source_set(to, "/usr/share/fonts/Sans.ttf"); font = evas_object_text_font_source_get(to); fail_if(strcmp(font, "/usr/share/fonts/Sans.ttf")); /* BiDi Delimiters */ evas_object_text_bidi_delimiters_set(to, ",.|"); fail_if(strcmp(evas_object_text_bidi_delimiters_get(to), ",.|")); evas_object_text_bidi_delimiters_set(to, ",|"); fail_if(strcmp(evas_object_text_bidi_delimiters_get(to), ",|")); evas_object_text_bidi_delimiters_set(to, NULL); fail_if(evas_object_text_bidi_delimiters_get(to)); evas_object_text_bidi_delimiters_set(to, ",|"); fail_if(strcmp(evas_object_text_bidi_delimiters_get(to), ",|")); /* Style */ evas_object_text_text_set(to, ""); evas_object_text_style_set(to, EVAS_TEXT_STYLE_SHADOW); fail_if(evas_object_text_style_get(to) != EVAS_TEXT_STYLE_SHADOW); evas_object_text_style_set(to, EVAS_TEXT_STYLE_OUTLINE); fail_if(evas_object_text_style_get(to) != EVAS_TEXT_STYLE_OUTLINE); /* Rehinting */ evas_object_text_text_set(to, "Bla"); evas_font_hinting_set(evas, EVAS_FONT_HINTING_NONE); evas_font_hinting_set(evas, EVAS_FONT_HINTING_AUTO); evas_font_hinting_set(evas, EVAS_FONT_HINTING_BYTECODE); /* Direction of an empty text should be NEUTRAL */ evas_object_text_text_set(to, ""); fail_if(evas_object_text_direction_get(to) != EVAS_BIDI_DIRECTION_NEUTRAL); /* LTR paragraphs */ evas_object_text_text_set(to, "Test נסיון"); fail_if(evas_object_text_direction_get(to) != EVAS_BIDI_DIRECTION_LTR); /* RTL paragraphs */ evas_object_text_text_set(to, "נסיון test"); #ifdef HAVE_FRIBIDI fail_if(evas_object_text_direction_get(to) != EVAS_BIDI_DIRECTION_RTL); #else fail_if(evas_object_text_direction_get(to) != EVAS_BIDI_DIRECTION_LTR); #endif END_TEXT_TEST(); }