colorselector: Do not add custom palette color to the palette of config

Summary:
elm_colorselector_palette_color_add() clears the palette if config_load is true.
It means that this API will add paletter color only for this colorselector object.

Fixes T786

Test Plan: Added elm_colorselector_palette.

Reviewers: seoz, raster

Maniphest Tasks: T786

Differential Revision: https://phab.enlightenment.org/D557
This commit is contained in:
Ryuan Choi 2014-02-17 21:26:14 +09:00 committed by Carsten Haitzler (Rasterman)
parent bd7c5cbbff
commit 7c4288548b
5 changed files with 41 additions and 3 deletions

View File

@ -2115,9 +2115,6 @@ _palette_color_add(Eo *obj, void *_pd, va_list *list)
item->color->g = g;
item->color->b = b;
item->color->a = a;
_elm_config_color_set
(sd->palette_name, item->color->r, item->color->g, item->color->b,
item->color->a);
elm_box_pack_end(sd->palette_box, VIEW(item));
evas_object_color_set(item->color_obj,

View File

@ -7,6 +7,7 @@ check_PROGRAMS = elm_suite
elm_suite_SOURCES = \
elm_suite.c \
elm_test_check.c \
elm_test_colorselector.c \
elm_test_init.c
elm_suite_CPPFLAGS = \

View File

@ -16,6 +16,7 @@ struct _Elementary_Test_Case
static const Elementary_Test_Case etc[] = {
{ "Elementary", elm_test_init },
{ "elm_check", elm_test_check },
{ "elm_colorselector", elm_test_colorselector },
{ NULL, NULL }
};

View File

@ -5,5 +5,6 @@
void elm_test_init(TCase *tc);
void elm_test_check(TCase *tc);
void elm_test_colorselector(TCase *tc);
#endif /* _ELM_SUITE_H */

View File

@ -0,0 +1,38 @@
#ifdef HAVE_CONFIG_H
# include "elementary_config.h"
#endif
#include <Elementary.h>
#include "elm_suite.h"
START_TEST (elm_colorselector_palette)
{
Evas_Object *win, *c;
unsigned int palette_cnt;
elm_init(1, NULL);
win = elm_win_add(NULL, "check", ELM_WIN_BASIC);
c = elm_colorselector_add(win);
/* Get the count of default palettes */
palette_cnt = eina_list_count(elm_colorselector_palette_items_get(c));
evas_object_del(c);
c = elm_colorselector_add(win);
ck_assert(eina_list_count(elm_colorselector_palette_items_get(c)) == palette_cnt);
elm_colorselector_palette_color_add(c, 255, 255, 255, 255);
ck_assert(eina_list_count(elm_colorselector_palette_items_get(c)) == 1);
evas_object_del(c);
c = elm_colorselector_add(win);
ck_assert(eina_list_count(elm_colorselector_palette_items_get(c)) == palette_cnt);
evas_object_del(c);
elm_shutdown();
}
END_TEST
void elm_test_colorselector(TCase *tc)
{
tcase_add_test(tc, elm_colorselector_palette);
}