save the last used gradient colors and use them the next time the dialog is shown
SVN revision: 24959
This commit is contained in:
parent
cc6b1d0f99
commit
47ded57d3f
|
@ -473,6 +473,13 @@ e_config_init(void)
|
|||
|
||||
E_CONFIG_VAL(D, T, wallpaper_import_last_dev, STR);
|
||||
E_CONFIG_VAL(D, T, wallpaper_import_last_path, STR);
|
||||
|
||||
E_CONFIG_VAL(D, T, wallpaper_grad_c1_r, INT);
|
||||
E_CONFIG_VAL(D, T, wallpaper_grad_c1_g, INT);
|
||||
E_CONFIG_VAL(D, T, wallpaper_grad_c1_b, INT);
|
||||
E_CONFIG_VAL(D, T, wallpaper_grad_c2_r, INT);
|
||||
E_CONFIG_VAL(D, T, wallpaper_grad_c2_g, INT);
|
||||
E_CONFIG_VAL(D, T, wallpaper_grad_c2_b, INT);
|
||||
|
||||
e_config = e_config_domain_load("e", _e_config_edd);
|
||||
if (e_config)
|
||||
|
@ -1168,6 +1175,15 @@ e_config_init(void)
|
|||
e_config->wallpaper_import_last_dev = evas_stringshare_add("~/");
|
||||
e_config->wallpaper_import_last_path = evas_stringshare_add("/");
|
||||
IFCFGEND;
|
||||
|
||||
IFCFG(0x0098);
|
||||
e_config->wallpaper_grad_c1_r = 0;
|
||||
e_config->wallpaper_grad_c1_g = 0;
|
||||
e_config->wallpaper_grad_c1_b = 0;
|
||||
e_config->wallpaper_grad_c2_r = 255;
|
||||
e_config->wallpaper_grad_c2_g = 255;
|
||||
e_config->wallpaper_grad_c2_b = 255;
|
||||
IFCFGEND;
|
||||
|
||||
#if 0 /* example of new config */
|
||||
IFCFG(0x0090); /* the version # where this value(s) was introduced */
|
||||
|
|
|
@ -50,7 +50,7 @@ typedef Eet_Data_Descriptor E_Config_DD;
|
|||
/* increment this whenever a new set of config values are added but the users
|
||||
* config doesn't need top be wiped - simply new values need to be put in
|
||||
*/
|
||||
#define E_CONFIG_FILE_GENERATION 0x0097
|
||||
#define E_CONFIG_FILE_GENERATION 0x0098
|
||||
#define E_CONFIG_FILE_VERSION ((E_CONFIG_FILE_EPOCH << 16) | E_CONFIG_FILE_GENERATION)
|
||||
|
||||
#define E_EVAS_ENGINE_DEFAULT 0
|
||||
|
@ -236,6 +236,13 @@ struct _E_Config
|
|||
|
||||
const char *wallpaper_import_last_dev; // INTERNAL
|
||||
const char *wallpaper_import_last_path; // INTERNAL
|
||||
|
||||
int wallpaper_grad_c1_r; // INTERNAL
|
||||
int wallpaper_grad_c1_g; // INTERNAL
|
||||
int wallpaper_grad_c1_b; // INTERNAL
|
||||
int wallpaper_grad_c2_r; // INTERNAL
|
||||
int wallpaper_grad_c2_g; // INTERNAL
|
||||
int wallpaper_grad_c2_b; // INTERNAL
|
||||
};
|
||||
|
||||
struct _E_Config_Module
|
||||
|
|
|
@ -57,6 +57,7 @@ static int _import_cb_edje_cc_exit(void *data, int type, void *event);
|
|||
static void _import_cb_delete(E_Win *win);
|
||||
static void _import_cb_close(void *data, E_Dialog *dia);
|
||||
static void _import_cb_ok(void *data, E_Dialog *dia);
|
||||
static void _import_config_save(Import *import);
|
||||
|
||||
EAPI E_Dialog *
|
||||
e_int_config_wallpaper_gradient(E_Config_Dialog *parent)
|
||||
|
@ -69,10 +70,10 @@ e_int_config_wallpaper_gradient(E_Config_Dialog *parent)
|
|||
E_Radio_Group *rg;
|
||||
Evas_Coord w, h;
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
|
||||
|
||||
import = E_NEW(Import, 1);
|
||||
if (!import) return NULL;
|
||||
|
||||
|
||||
dia = e_dialog_new(parent->con, "E", "_wallpaper_gradient_dialog");
|
||||
if (!dia)
|
||||
{
|
||||
|
@ -89,26 +90,31 @@ e_int_config_wallpaper_gradient(E_Config_Dialog *parent)
|
|||
import->dia = dia;
|
||||
|
||||
cfdata->name = strdup("gradient");
|
||||
|
||||
|
||||
evas = e_win_evas_get(dia->win);
|
||||
|
||||
|
||||
import->parent = parent;
|
||||
|
||||
e_dialog_title_set(dia, _("Create a gradient..."));
|
||||
// e_win_delete_callback_set(dia->win, _import_cb_delete);
|
||||
|
||||
// e_win_delete_callback_set(dia->win, _import_cb_delete);
|
||||
|
||||
cfdata->color1 = calloc(1, sizeof(E_Color));
|
||||
cfdata->color1->a = 255;
|
||||
cfdata->color2 = calloc(1, sizeof(E_Color));
|
||||
cfdata->color2->a = 255;
|
||||
|
||||
// XXX load last used colors from config.
|
||||
cfdata->color1->r = e_config->wallpaper_grad_c1_r;
|
||||
cfdata->color1->g = e_config->wallpaper_grad_c1_g;
|
||||
cfdata->color1->b = e_config->wallpaper_grad_c1_b;
|
||||
cfdata->color2->r = e_config->wallpaper_grad_c2_r;
|
||||
cfdata->color2->g = e_config->wallpaper_grad_c2_g;
|
||||
cfdata->color2->b = e_config->wallpaper_grad_c2_b;
|
||||
|
||||
ol = e_widget_list_add(evas, 0, 0);
|
||||
|
||||
ot = e_widget_table_add(evas, 0);
|
||||
evas_object_show(ot);
|
||||
|
||||
|
||||
o = e_widget_label_add(evas, _("Name:"));
|
||||
evas_object_show(o);
|
||||
e_widget_table_object_append(ot, o, 1, 1, 1, 1, 0, 1, 0, 1);
|
||||
|
@ -170,7 +176,7 @@ e_int_config_wallpaper_gradient(E_Config_Dialog *parent)
|
|||
|
||||
e_dialog_button_add(dia, _("OK"), NULL, _import_cb_ok, cfdata);
|
||||
e_dialog_button_add(dia, _("Cancel"), NULL, _import_cb_close, cfdata);
|
||||
|
||||
|
||||
_import_opt_disabled_set(import, 1);
|
||||
e_dialog_resizable_set(dia, 0);
|
||||
e_dialog_show(dia);
|
||||
|
@ -180,9 +186,10 @@ e_int_config_wallpaper_gradient(E_Config_Dialog *parent)
|
|||
void
|
||||
e_int_config_wallpaper_gradient_del(E_Dialog *dia)
|
||||
{
|
||||
Import *import;
|
||||
Import *import;
|
||||
|
||||
import = dia->win->data;
|
||||
import = dia->win->data;
|
||||
_import_config_save(import);
|
||||
|
||||
if (import->exe_handler) ecore_event_handler_del(import->exe_handler);
|
||||
import->exe_handler = NULL;
|
||||
|
@ -209,7 +216,18 @@ _import_opt_disabled_set(Import *import, int disabled)
|
|||
static void
|
||||
_import_config_save(Import *import)
|
||||
{
|
||||
// XXX save last used colors
|
||||
if (import->cfdata->color1)
|
||||
{
|
||||
e_config->wallpaper_grad_c1_r = import->cfdata->color1->r;
|
||||
e_config->wallpaper_grad_c1_g = import->cfdata->color1->g;
|
||||
e_config->wallpaper_grad_c1_b = import->cfdata->color1->b;
|
||||
}
|
||||
if (import->cfdata->color2)
|
||||
{
|
||||
e_config->wallpaper_grad_c2_r = import->cfdata->color2->r;
|
||||
e_config->wallpaper_grad_c2_g = import->cfdata->color2->g;
|
||||
e_config->wallpaper_grad_c2_b = import->cfdata->color2->b;
|
||||
}
|
||||
e_config_save_queue();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue