forked from enlightenment/enlightenment
Basic Dropshadow Config Dialogue. Still needs work
SVN revision: 19188
This commit is contained in:
parent
a9165fa7c1
commit
467e989903
|
@ -32,7 +32,9 @@ INCLUDES = -I. \
|
||||||
pkgdir = $(libdir)/enlightenment/modules/$(MODULE)/$(MODULE_ARCH)
|
pkgdir = $(libdir)/enlightenment/modules/$(MODULE)/$(MODULE_ARCH)
|
||||||
pkg_LTLIBRARIES = module.la
|
pkg_LTLIBRARIES = module.la
|
||||||
module_la_SOURCES = e_mod_main.c \
|
module_la_SOURCES = e_mod_main.c \
|
||||||
e_mod_main.h
|
e_mod_main.h \
|
||||||
|
e_mod_config.c \
|
||||||
|
e_mod_config.h
|
||||||
module_la_LIBADD = @e_libs@ @dlopen_libs@
|
module_la_LIBADD = @e_libs@ @dlopen_libs@
|
||||||
module_la_LDFLAGS = -module -avoid-version
|
module_la_LDFLAGS = -module -avoid-version
|
||||||
module_la_DEPENDENCIES = $(top_builddir)/config.h
|
module_la_DEPENDENCIES = $(top_builddir)/config.h
|
||||||
|
|
|
@ -0,0 +1,202 @@
|
||||||
|
#include "e.h"
|
||||||
|
#include "e_mod_main.h"
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
typedef struct _cfdata CFData;
|
||||||
|
typedef struct _Cfg_File_Data Cfg_File_Data;
|
||||||
|
|
||||||
|
struct _cfdata
|
||||||
|
{
|
||||||
|
int quality;
|
||||||
|
int blur_size;
|
||||||
|
int shadow_x;
|
||||||
|
int darkness;
|
||||||
|
double shadow_darkness;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct _Cfg_File_Data
|
||||||
|
{
|
||||||
|
E_Config_Dialog *cfd;
|
||||||
|
char *file;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Protos */
|
||||||
|
static void *_create_data(E_Config_Dialog *cfd);
|
||||||
|
static void _free_data(E_Config_Dialog *cfd, CFData *cfdata);
|
||||||
|
static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata);
|
||||||
|
static int _basic_apply_data(E_Config_Dialog *cfd, CFData *cfdata);
|
||||||
|
|
||||||
|
void
|
||||||
|
_config_dropshadow_module(E_Container *con, Dropshadow *ds)
|
||||||
|
{
|
||||||
|
E_Config_Dialog *cfd;
|
||||||
|
E_Config_Dialog_View v;
|
||||||
|
|
||||||
|
v.create_cfdata = _create_data;
|
||||||
|
v.free_cfdata = _free_data;
|
||||||
|
v.basic.apply_cfdata = _basic_apply_data;
|
||||||
|
v.basic.create_widgets = _basic_create_widgets;
|
||||||
|
v.advanced.apply_cfdata = NULL;
|
||||||
|
v.advanced.create_widgets = NULL;
|
||||||
|
|
||||||
|
cfd = e_config_dialog_new(con, _("Dropshadow Configuration"), NULL, 0, &v, ds);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_fill_data(Dropshadow *ds, CFData *cfdata)
|
||||||
|
{
|
||||||
|
cfdata->quality = ds->conf->quality;
|
||||||
|
cfdata->blur_size = ds->conf->blur_size;
|
||||||
|
cfdata->shadow_x = ds->conf->shadow_x;
|
||||||
|
if (cfdata->shadow_x >= 32)
|
||||||
|
{
|
||||||
|
cfdata->shadow_x = 32;
|
||||||
|
}
|
||||||
|
else if ((cfdata->shadow_x < 32) && (cfdata->shadow_x >= 16))
|
||||||
|
{
|
||||||
|
cfdata->shadow_x = 16;
|
||||||
|
}
|
||||||
|
else if ((cfdata->shadow_x < 16) && (cfdata->shadow_x >= 8))
|
||||||
|
{
|
||||||
|
cfdata->shadow_x = 8;
|
||||||
|
}
|
||||||
|
else if ((cfdata->shadow_x < 8) && (cfdata->shadow_x >= 4))
|
||||||
|
{
|
||||||
|
cfdata->shadow_x = 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
cfdata->shadow_darkness = ds->conf->shadow_darkness;
|
||||||
|
if (cfdata->shadow_darkness == 1.0)
|
||||||
|
{
|
||||||
|
cfdata->darkness = 0;
|
||||||
|
}
|
||||||
|
else if (cfdata->shadow_darkness == 0.75)
|
||||||
|
{
|
||||||
|
cfdata->darkness = 1;
|
||||||
|
}
|
||||||
|
else if (cfdata->shadow_darkness == 0.5)
|
||||||
|
{
|
||||||
|
cfdata->darkness = 2;
|
||||||
|
}
|
||||||
|
else if (cfdata->shadow_darkness == 0.25)
|
||||||
|
{
|
||||||
|
cfdata->darkness = 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
*_create_data(E_Config_Dialog *cfd)
|
||||||
|
{
|
||||||
|
CFData *cfdata;
|
||||||
|
Dropshadow *ds;
|
||||||
|
|
||||||
|
ds = cfd->data;
|
||||||
|
cfdata = E_NEW(CFData, 1);
|
||||||
|
_fill_data(ds, cfdata);
|
||||||
|
return cfdata;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_free_data(E_Config_Dialog *cfd, CFData *cfdata)
|
||||||
|
{
|
||||||
|
free(cfdata);
|
||||||
|
}
|
||||||
|
|
||||||
|
static Evas_Object
|
||||||
|
*_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata)
|
||||||
|
{
|
||||||
|
Evas_Object *o, *ob, *of;
|
||||||
|
E_Radio_Group *rg;
|
||||||
|
Dropshadow *ds;
|
||||||
|
|
||||||
|
ds = cfd->data;
|
||||||
|
_fill_data(ds, cfdata);
|
||||||
|
|
||||||
|
o = e_widget_list_add(evas, 0, 0);
|
||||||
|
|
||||||
|
of = e_widget_framelist_add(evas, _("Quality"), 0);
|
||||||
|
rg = e_widget_radio_group_new(&(cfdata->quality));
|
||||||
|
ob = e_widget_radio_add(evas, _("High Quality"), 1, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Medium Quality"), 2, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Low Quality"), 4, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||||
|
|
||||||
|
of = e_widget_framelist_add(evas, _("Blur Type"), 0);
|
||||||
|
rg = e_widget_radio_group_new(&(cfdata->blur_size));
|
||||||
|
ob = e_widget_radio_add(evas, _("Very Fuzzy"), 80, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Fuzzy"), 40, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Medium"), 20, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Sharp"), 10, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Very Sharp"), 5, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||||
|
|
||||||
|
of = e_widget_framelist_add(evas, _("Shadow Distance"), 0);
|
||||||
|
rg = e_widget_radio_group_new(&(cfdata->shadow_x));
|
||||||
|
ob = e_widget_radio_add(evas, _("Very Far"), 32, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Far"), 16, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Near"), 8, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Very Near"), 4, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||||
|
|
||||||
|
of = e_widget_framelist_add(evas, _("Shadow Darkness"), 0);
|
||||||
|
rg = e_widget_radio_group_new(&(cfdata->darkness));
|
||||||
|
ob = e_widget_radio_add(evas, _("Very Dark"), 0, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Dark"), 1, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Light"), 2, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
ob = e_widget_radio_add(evas, _("Very Light"), 3, rg);
|
||||||
|
e_widget_framelist_object_append(of, ob);
|
||||||
|
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||||
|
|
||||||
|
return o;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
_basic_apply_data(E_Config_Dialog *cfd, CFData *cfdata)
|
||||||
|
{
|
||||||
|
Dropshadow *ds;
|
||||||
|
|
||||||
|
ds = cfd->data;
|
||||||
|
e_border_button_bindings_ungrab_all();
|
||||||
|
|
||||||
|
ds->conf->quality = cfdata->quality;
|
||||||
|
ds->conf->blur_size = cfdata->blur_size;
|
||||||
|
ds->conf->shadow_x = cfdata->shadow_x;
|
||||||
|
ds->conf->shadow_y = cfdata->shadow_x;
|
||||||
|
switch (cfdata->darkness)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
ds->conf->shadow_darkness = 1.0;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
ds->conf->shadow_darkness = 0.75;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
ds->conf->shadow_darkness = 0.5;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
ds->conf->shadow_darkness = 0.25;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
e_config_save_queue();
|
||||||
|
e_border_button_bindings_grab_all();
|
||||||
|
|
||||||
|
/* Update Config */
|
||||||
|
_dropshadow_cb_config_updated(ds);
|
||||||
|
return 1;
|
||||||
|
}
|
|
@ -0,0 +1,8 @@
|
||||||
|
#ifdef E_TYPEDEFS
|
||||||
|
#else
|
||||||
|
#ifndef E_MOD_CONFIG_H
|
||||||
|
#define E_MOD_CONFIG_H
|
||||||
|
#include "e_mod_main.h"
|
||||||
|
EAPI void _config_dropshadow_module(E_Container *con, Dropshadow *ds);
|
||||||
|
#endif
|
||||||
|
#endif
|
|
@ -17,22 +17,7 @@
|
||||||
/* module private routines */
|
/* module private routines */
|
||||||
static Dropshadow *_ds_init(E_Module *m);
|
static Dropshadow *_ds_init(E_Module *m);
|
||||||
static void _ds_shutdown(Dropshadow *ds);
|
static void _ds_shutdown(Dropshadow *ds);
|
||||||
static E_Menu *_ds_config_menu_new(Dropshadow *ds);
|
//static E_Menu *_ds_config_menu_new(Dropshadow *ds);
|
||||||
static void _ds_menu_very_fuzzy(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_fuzzy(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_medium(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_sharp(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_very_sharp(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_very_dark(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_dark(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_light(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_very_light(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_very_far(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_far(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_close(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_very_close(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_extremely_close(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_under(void *data, E_Menu *m, E_Menu_Item *mi);
|
|
||||||
static void _ds_menu_high_quality(void *data, E_Menu *m, E_Menu_Item *mi);
|
static void _ds_menu_high_quality(void *data, E_Menu *m, E_Menu_Item *mi);
|
||||||
static void _ds_menu_medium_quality(void *data, E_Menu *m, E_Menu_Item *mi);
|
static void _ds_menu_medium_quality(void *data, E_Menu *m, E_Menu_Item *mi);
|
||||||
static void _ds_menu_low_quality(void *data, E_Menu *m, E_Menu_Item *mi);
|
static void _ds_menu_low_quality(void *data, E_Menu *m, E_Menu_Item *mi);
|
||||||
|
@ -102,7 +87,7 @@ e_modapi_init(E_Module *m)
|
||||||
Dropshadow *ds;
|
Dropshadow *ds;
|
||||||
|
|
||||||
ds = _ds_init(m);
|
ds = _ds_init(m);
|
||||||
m->config_menu = _ds_config_menu_new(ds);
|
//m->config_menu = _ds_config_menu_new(ds);
|
||||||
#if 0
|
#if 0
|
||||||
{
|
{
|
||||||
Shpix *sh;
|
Shpix *sh;
|
||||||
|
@ -148,16 +133,7 @@ e_modapi_shutdown(E_Module *m)
|
||||||
Dropshadow *ds;
|
Dropshadow *ds;
|
||||||
|
|
||||||
ds = m->data;
|
ds = m->data;
|
||||||
if (ds)
|
if (ds) _ds_shutdown(ds);
|
||||||
{
|
|
||||||
if (m->config_menu)
|
|
||||||
{
|
|
||||||
e_menu_deactivate(m->config_menu);
|
|
||||||
e_object_del(E_OBJECT(m->config_menu));
|
|
||||||
m->config_menu = NULL;
|
|
||||||
}
|
|
||||||
_ds_shutdown(ds);
|
|
||||||
}
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -191,6 +167,19 @@ e_modapi_about(E_Module *m)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
e_modapi_config(E_Module *m)
|
||||||
|
{
|
||||||
|
Dropshadow *ds;
|
||||||
|
E_Container *con;
|
||||||
|
|
||||||
|
ds = m->data;
|
||||||
|
if (!ds) return 0;
|
||||||
|
con = e_container_current_get(e_manager_current_get());
|
||||||
|
_config_dropshadow_module(con, ds);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/* module private routines */
|
/* module private routines */
|
||||||
static Dropshadow *
|
static Dropshadow *
|
||||||
_ds_init(E_Module *m)
|
_ds_init(E_Module *m)
|
||||||
|
@ -285,6 +274,7 @@ _ds_shutdown(Dropshadow *ds)
|
||||||
free(ds);
|
free(ds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
static E_Menu *
|
static E_Menu *
|
||||||
_ds_config_menu_new(Dropshadow *ds)
|
_ds_config_menu_new(Dropshadow *ds)
|
||||||
{
|
{
|
||||||
|
@ -294,150 +284,6 @@ _ds_config_menu_new(Dropshadow *ds)
|
||||||
|
|
||||||
mn = e_menu_new();
|
mn = e_menu_new();
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Very Fuzzy"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_very_fuzzy.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 1);
|
|
||||||
if (ds->conf->blur_size == 80) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_very_fuzzy, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Fuzzy"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_fuzzy.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 1);
|
|
||||||
if (ds->conf->blur_size == 40) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_fuzzy, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Medium"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_medium.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 1);
|
|
||||||
if (ds->conf->blur_size == 20) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_medium, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Sharp"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_sharp.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 1);
|
|
||||||
if (ds->conf->blur_size == 10) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_sharp, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Very Sharp"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_very_sharp.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 1);
|
|
||||||
if (ds->conf->blur_size == 5) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_very_sharp, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_separator_set(mi, 1);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Very Dark"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_very_dark.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 2);
|
|
||||||
if (ds->conf->shadow_darkness == 1.0) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_very_dark, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Dark"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_dark.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 2);
|
|
||||||
if (ds->conf->shadow_darkness == 0.75) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_dark, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Light"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_light.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 2);
|
|
||||||
if (ds->conf->shadow_darkness == 0.5) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_light, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Very Light"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_very_light.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 2);
|
|
||||||
if (ds->conf->shadow_darkness == 0.25) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_very_light, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_separator_set(mi, 1);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Very Far"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_very_far.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 3);
|
|
||||||
if (ds->conf->shadow_x == 32) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_very_far, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Far"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_very_far.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 3);
|
|
||||||
if (ds->conf->shadow_x == 16) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_far, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Near"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_far.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 3);
|
|
||||||
if (ds->conf->shadow_x == 8) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_close, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Very Near"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_close.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 3);
|
|
||||||
if (ds->conf->shadow_x == 4) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_very_close, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Extremely Near"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_underneath.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 3);
|
|
||||||
if (ds->conf->shadow_x == 2) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_extremely_close, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_label_set(mi, _("Immediately Underneath"));
|
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_underneath.png", e_module_dir_get(ds->module));
|
|
||||||
e_menu_item_icon_file_set(mi, buf);
|
|
||||||
e_menu_item_radio_set(mi, 1);
|
|
||||||
e_menu_item_radio_group_set(mi, 3);
|
|
||||||
if (ds->conf->shadow_x == 0) e_menu_item_toggle_set(mi, 1);
|
|
||||||
e_menu_item_callback_set(mi, _ds_menu_under, ds);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
|
||||||
e_menu_item_separator_set(mi, 1);
|
|
||||||
|
|
||||||
mi = e_menu_item_new(mn);
|
mi = e_menu_item_new(mn);
|
||||||
e_menu_item_label_set(mi, _("High Quality"));
|
e_menu_item_label_set(mi, _("High Quality"));
|
||||||
snprintf(buf, sizeof(buf), "%s/menu_icon_hi_quality.png", e_module_dir_get(ds->module));
|
snprintf(buf, sizeof(buf), "%s/menu_icon_hi_quality.png", e_module_dir_get(ds->module));
|
||||||
|
@ -467,145 +313,9 @@ _ds_config_menu_new(Dropshadow *ds)
|
||||||
if (ds->conf->quality == 4) e_menu_item_toggle_set(mi, 1);
|
if (ds->conf->quality == 4) e_menu_item_toggle_set(mi, 1);
|
||||||
else e_menu_item_toggle_set(mi, 0);
|
else e_menu_item_toggle_set(mi, 0);
|
||||||
e_menu_item_callback_set(mi, _ds_menu_low_quality, ds);
|
e_menu_item_callback_set(mi, _ds_menu_low_quality, ds);
|
||||||
|
|
||||||
return mn;
|
return mn;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_very_fuzzy(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_blur_set(ds, 80);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_fuzzy(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_blur_set(ds, 40);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_medium(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_blur_set(ds, 20);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_sharp(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_blur_set(ds, 10);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_very_sharp(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_blur_set(ds, 5);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_very_dark(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_darkness_set(ds, 1.0);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_dark(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_darkness_set(ds, 0.75);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_light(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_darkness_set(ds, 0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_very_light(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_darkness_set(ds, 0.25);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_very_far(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_shadow_xy_set(ds, 32, 32);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_far(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_shadow_xy_set(ds, 16, 16);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_close(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_shadow_xy_set(ds, 8, 8);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_very_close(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_shadow_xy_set(ds, 4, 4);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_extremely_close(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_shadow_xy_set(ds, 2, 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
_ds_menu_under(void *data, E_Menu *m, E_Menu_Item *mi)
|
|
||||||
{
|
|
||||||
Dropshadow *ds;
|
|
||||||
|
|
||||||
ds = data;
|
|
||||||
_ds_config_shadow_xy_set(ds, 0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_ds_menu_high_quality(void *data, E_Menu *m, E_Menu_Item *mi)
|
_ds_menu_high_quality(void *data, E_Menu *m, E_Menu_Item *mi)
|
||||||
{
|
{
|
||||||
|
@ -632,6 +342,7 @@ _ds_menu_low_quality(void *data, E_Menu *m, E_Menu_Item *mi)
|
||||||
ds = data;
|
ds = data;
|
||||||
_ds_config_quality_set(ds, 4);
|
_ds_config_quality_set(ds, 4);
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_ds_container_shapes_add(Dropshadow *ds, E_Container *con)
|
_ds_container_shapes_add(Dropshadow *ds, E_Container *con)
|
||||||
|
@ -1406,8 +1117,8 @@ _ds_config_darkness_set(Dropshadow *ds, double v)
|
||||||
|
|
||||||
if (v < 0.0) v = 0.0;
|
if (v < 0.0) v = 0.0;
|
||||||
else if (v > 1.0) v = 1.0;
|
else if (v > 1.0) v = 1.0;
|
||||||
if (ds->conf->shadow_darkness == v) return;
|
//if (ds->conf->shadow_darkness == v) return;
|
||||||
ds->conf->shadow_darkness = v;
|
//ds->conf->shadow_darkness = v;
|
||||||
for (l = ds->shadows; l; l = l->next)
|
for (l = ds->shadows; l; l = l->next)
|
||||||
{
|
{
|
||||||
Shadow *sh;
|
Shadow *sh;
|
||||||
|
@ -1434,7 +1145,7 @@ _ds_config_darkness_set(Dropshadow *ds, double v)
|
||||||
255 * ds->conf->shadow_darkness);
|
255 * ds->conf->shadow_darkness);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
e_config_save_queue();
|
//e_config_save_queue();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1442,9 +1153,9 @@ _ds_config_shadow_xy_set(Dropshadow *ds, int x, int y)
|
||||||
{
|
{
|
||||||
Evas_List *l;
|
Evas_List *l;
|
||||||
|
|
||||||
if ((ds->conf->shadow_x == x) && (ds->conf->shadow_y == y)) return;
|
//if ((ds->conf->shadow_x == x) && (ds->conf->shadow_y == y)) return;
|
||||||
ds->conf->shadow_x = x;
|
//ds->conf->shadow_x = x;
|
||||||
ds->conf->shadow_y = y;
|
//ds->conf->shadow_y = y;
|
||||||
if (ds->conf->shadow_x >= ds->conf->blur_size)
|
if (ds->conf->shadow_x >= ds->conf->blur_size)
|
||||||
ds->conf->shadow_x = ds->conf->blur_size - 1;
|
ds->conf->shadow_x = ds->conf->blur_size - 1;
|
||||||
if (ds->conf->shadow_y >= ds->conf->blur_size)
|
if (ds->conf->shadow_y >= ds->conf->blur_size)
|
||||||
|
@ -1466,8 +1177,8 @@ _ds_config_blur_set(Dropshadow *ds, int blur)
|
||||||
Evas_List *l;
|
Evas_List *l;
|
||||||
|
|
||||||
if (blur < 0) blur = 0;
|
if (blur < 0) blur = 0;
|
||||||
if (ds->conf->blur_size == blur) return;
|
//if (ds->conf->blur_size == blur) return;
|
||||||
ds->conf->blur_size = blur;
|
//ds->conf->blur_size = blur;
|
||||||
|
|
||||||
if (ds->conf->shadow_x >= ds->conf->blur_size)
|
if (ds->conf->shadow_x >= ds->conf->blur_size)
|
||||||
ds->conf->shadow_x = ds->conf->blur_size - 1;
|
ds->conf->shadow_x = ds->conf->blur_size - 1;
|
||||||
|
@ -2579,3 +2290,17 @@ _tilebuf_free_render_rects(Evas_List *rects)
|
||||||
free(r);
|
free(r);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
_dropshadow_cb_config_updated(void *data)
|
||||||
|
{
|
||||||
|
Dropshadow *ds;
|
||||||
|
|
||||||
|
ds = data;
|
||||||
|
if (!ds) return;
|
||||||
|
|
||||||
|
_ds_config_quality_set(ds, ds->conf->quality);
|
||||||
|
_ds_config_darkness_set(ds, ds->conf->shadow_darkness);
|
||||||
|
_ds_config_shadow_xy_set(ds, ds->conf->shadow_x, ds->conf->shadow_y);
|
||||||
|
_ds_config_blur_set(ds, ds->conf->blur_size);
|
||||||
|
}
|
||||||
|
|
|
@ -105,4 +105,6 @@ EAPI int e_modapi_save (E_Module *m);
|
||||||
EAPI int e_modapi_info (E_Module *m);
|
EAPI int e_modapi_info (E_Module *m);
|
||||||
EAPI int e_modapi_about (E_Module *m);
|
EAPI int e_modapi_about (E_Module *m);
|
||||||
|
|
||||||
|
EAPI void _dropshadow_cb_config_updated(void *data);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue