add option for disabling fileman tooltips

SVN revision: 75212
This commit is contained in:
Mike Blumenkrantz 2012-08-13 14:12:45 +00:00
parent 2727a43b3c
commit bad47f3189
4 changed files with 31 additions and 3 deletions

View File

@ -721,6 +721,8 @@ _e_fwin_icon_mouse_in(void *data, Evas_Object *obj __UNUSED__, void *event_info)
E_Fm2_Icon_Info *ici = event_info;
if (fwin->popup_timer) ecore_timer_del(fwin->popup_timer);
fwin->popup_timer = NULL;
if (!fileman_config->tooltip.enable) return;
fwin->popup_timer = ecore_timer_add(fileman_config->tooltip.delay, _e_fwin_icon_popup, fwin);
fwin->popup_icon = ici;
}

View File

@ -28,6 +28,9 @@ struct _E_Config_Dialog_Data
{
double delay;
double size;
Eina_Bool enable;
Evas_Object *delay_slider;
Evas_Object *size_slider;
} tooltip;
/* display of icons */
struct
@ -140,6 +143,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
cfdata->icon.icon.h = fileman_config->icon.icon.h;
cfdata->tooltip.delay = fileman_config->tooltip.delay;
cfdata->tooltip.size = fileman_config->tooltip.size;
cfdata->tooltip.enable = fileman_config->tooltip.enable;
cfdata->icon.extension.show = fileman_config->icon.extension.show;
cfdata->selection.windows_modifiers = fileman_config->selection.windows_modifiers;
cfdata->list.sort.dirs.first = fileman_config->list.sort.dirs.first;
@ -180,6 +184,7 @@ _basic_apply(E_Config_Dialog *cfd __UNUSED__,
fileman_config->tooltip.delay = cfdata->tooltip.delay;
fileman_config->tooltip.size = cfdata->tooltip.size;
fileman_config->tooltip.enable = cfdata->tooltip.enable;
fileman_config->list.sort.dirs.first = cfdata->list.sort.dirs.first;
fileman_config->list.sort.dirs.last = !(cfdata->list.sort.dirs.first);
@ -223,11 +228,21 @@ _basic_check_changed(E_Config_Dialog *cfd __UNUSED__,
(fileman_config->list.sort.no_case != !(cfdata->list.sort.case_sen)) ||
(fileman_config->tooltip.delay != !(cfdata->tooltip.delay)) ||
(fileman_config->tooltip.size != !(cfdata->tooltip.size)) ||
(fileman_config->tooltip.enable != !(cfdata->tooltip.enable)) ||
(e_config->device_desktop != cfdata->dbus.desktop) ||
(e_config->device_auto_mount != cfdata->dbus.auto_mount) ||
(e_config->device_auto_open != cfdata->dbus.auto_open);
}
static void
_tooltip_changed(void *data, Evas_Object *obj __UNUSED__)
{
E_Config_Dialog_Data *cfdata = data;
e_widget_disabled_set(cfdata->tooltip.delay_slider, !cfdata->tooltip.enable);
e_widget_disabled_set(cfdata->tooltip.size_slider, !cfdata->tooltip.enable);
}
static Evas_Object *
_basic_create(E_Config_Dialog *cfd __UNUSED__,
Evas *evas,
@ -346,17 +361,22 @@ _basic_create(E_Config_Dialog *cfd __UNUSED__,
/////////////////////////////////////////////////////////////
o = e_widget_list_add(evas, 1, 0);
ob = e_widget_label_add(evas, _("Tooltip delay"));
ob = e_widget_check_add(evas, _("Show tooltip"),
(int*)&(cfdata->tooltip.enable));
e_widget_on_change_hook_set(ob, _tooltip_changed, cfdata);
e_widget_list_object_append(o, ob, 1, 1, 0.5);
cfdata->tooltip.delay_slider = ob = e_widget_label_add(evas, _("Tooltip delay"));
e_widget_list_object_append(o, ob, 1, 1, 0.5);
ob = e_widget_slider_add(evas, 1, 0, _("%1.1f"), 0.0, 5.0, 0.5, 0,
&cfdata->tooltip.delay, NULL, 150);
e_widget_list_object_append(o, ob, 1, 1, 0.5);
ob = e_widget_label_add(evas, _("Tooltip size (Screen percentage)"));
cfdata->tooltip.size_slider = ob = e_widget_label_add(evas, _("Tooltip size (Screen percentage)"));
e_widget_list_object_append(o, ob, 1, 1, 0.5);
ob = e_widget_slider_add(evas, 1, 0, _("%2.0f"), 10.0, 75.0, 5.0, 0,
&cfdata->tooltip.size, NULL, 150);
e_widget_list_object_append(o, ob, 1, 1, 0.5);
_tooltip_changed(cfdata, NULL);
e_widget_toolbook_page_append(otb, NULL, _("Tooltips"), o, 0, 0, 0, 0, 0.5, 0.0);
e_widget_toolbook_page_show(otb, 0);
return otb;

View File

@ -701,6 +701,7 @@ _e_mod_fileman_config_load(void)
E_CONFIG_VAL(D, T, theme.fixed, UCHAR);
E_CONFIG_VAL(D, T, tooltip.delay, DOUBLE);
E_CONFIG_VAL(D, T, tooltip.size, DOUBLE);
E_CONFIG_VAL(D, T, tooltip.enable, UCHAR);
fileman_config = e_config_domain_load("module.fileman", conf_edd);
if (fileman_config)
@ -790,6 +791,10 @@ _e_mod_fileman_config_load(void)
fileman_config->view.desktop_navigation = 0;
IFMODCFGEND;
IFMODCFG(0x0110);
fileman_config->tooltip.enable = 1;
IFMODCFGEND;
fileman_config->config_version = MOD_CONFIG_FILE_VERSION;
/* UCHAR's give nasty compile warnings about comparisons so not gonna limit those */

View File

@ -4,7 +4,7 @@
/* Increment for Major Changes */
#define MOD_CONFIG_FILE_EPOCH 0x0001
/* Increment for Minor Changes (ie: user doesn't need a new config) */
#define MOD_CONFIG_FILE_GENERATION 0x0109
#define MOD_CONFIG_FILE_GENERATION 0x0110
#define MOD_CONFIG_FILE_VERSION ((MOD_CONFIG_FILE_EPOCH << 16) | MOD_CONFIG_FILE_GENERATION)
typedef struct _Config Config;
@ -46,6 +46,7 @@ struct _Config
{
double delay;
double size;
Eina_Bool enable;
} tooltip;
/* display of icons */
struct