Play nice wrt smaller resolutions.

(Labels for toolbook may need changing).



SVN revision: 50615
This commit is contained in:
Christopher Michael 2010-07-28 21:40:58 +00:00
parent 0b0c5607f2
commit ff210af221
1 changed files with 66 additions and 62 deletions

View File

@ -6,9 +6,9 @@
/* PROTOTYPES - same all the time */
static void *_create_data(E_Config_Dialog *cfd);
static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static int _basic_apply(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static int _basic_check_changed(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata);
static Evas_Object *_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata);
static void _cb_disable_check_list(void *data, Evas_Object *obj);
/* Actual config data we will be playing with whil the dialog is active */
@ -48,8 +48,8 @@ e_int_config_window_geometry(E_Container *con, const char *params __UNUSED__)
/* methods */
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->basic.apply_cfdata = _basic_apply;
v->basic.create_widgets = _basic_create;
v->basic.check_changed = _basic_check_changed;
/* create config diaolg for NULL object/data */
@ -86,7 +86,7 @@ _free_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
}
static int
_basic_apply_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
_basic_apply(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
{
e_config->use_resist = cfdata->use_resist;
e_config->desk_resist = cfdata->desk_resist;
@ -122,78 +122,82 @@ _basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfda
}
static Evas_Object *
_basic_create_widgets(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dialog_Data *cfdata)
_basic_create(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dialog_Data *cfdata)
{
Evas_Object *o, *ob, *of;
Evas_Object *resistance_check;
Evas_Object *otb, *ol, *ow, *oc;
o = e_widget_list_add(evas, 0, 0);
otb = e_widget_toolbook_add(evas, (24 * e_scale), (24 * e_scale));
of = e_widget_framelist_add(evas, _("Resistance"), 0);
resistance_check = e_widget_check_add(evas, _("Resist obstacles"),
&(cfdata->use_resist));
e_widget_framelist_object_append(of, resistance_check);
ob = e_widget_label_add(evas, _("Other windows"));
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ob);
e_widget_disabled_set(ob, !cfdata->use_resist); // set state from saved config
e_widget_framelist_object_append(of, ob);
ob = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 0, 64.0, 1.0, 0,
/* Resistance */
ol = e_widget_list_add(evas, 0, 0);
oc = e_widget_check_add(evas, _("Resist obstacles"), &(cfdata->use_resist));
e_widget_list_object_append(ol, oc, 1, 0, 0.5);
ow = e_widget_label_add(evas, _("Other windows"));
e_widget_disabled_set(ow, !cfdata->use_resist);
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ow);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 0, 64.0, 1.0, 0,
NULL, &(cfdata->window_resist), 100);
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ob);
e_widget_disabled_set(ob, !cfdata->use_resist); // set state from saved config
e_widget_framelist_object_append(of, ob);
ob = e_widget_label_add(evas, _("Edge of the screen"));
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ob);
e_widget_disabled_set(ob, !cfdata->use_resist); // set state from saved config
e_widget_framelist_object_append(of, ob);
ob = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 0, 64.0, 1.0, 0,
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ow);
e_widget_disabled_set(ow, !cfdata->use_resist);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_label_add(evas, _("Edge of the screen"));
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ow);
e_widget_disabled_set(ow, !cfdata->use_resist);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 0, 64.0, 1.0, 0,
NULL, &(cfdata->desk_resist), 100);
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ob);
e_widget_disabled_set(ob, !cfdata->use_resist); // set state from saved config
e_widget_framelist_object_append(of, ob);
ob = e_widget_label_add(evas, _("Desktop gadgets"));
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ob);
e_widget_disabled_set(ob, !cfdata->use_resist); // set state from saved config
e_widget_framelist_object_append(of, ob);
ob = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 0, 64.0, 1.0, 0,
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ow);
e_widget_disabled_set(ow, !cfdata->use_resist);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_label_add(evas, _("Desktop gadgets"));
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ow);
e_widget_disabled_set(ow, !cfdata->use_resist);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 0, 64.0, 1.0, 0,
NULL, &(cfdata->gadget_resist), 100);
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ob);
e_widget_disabled_set(ob, !cfdata->use_resist); // set state from saved config
e_widget_framelist_object_append(of, ob);
e_widget_list_object_append(o, of, 1, 0, 0.5);
// handler for enable/disable widget array
e_widget_on_change_hook_set(resistance_check, _cb_disable_check_list,
cfdata->resistance_list = eina_list_append (cfdata->resistance_list, ow);
e_widget_disabled_set(ow, !cfdata->use_resist);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
e_widget_on_change_hook_set(oc, _cb_disable_check_list,
cfdata->resistance_list);
e_widget_toolbook_page_append(otb, NULL, _("Resistance"), ol,
1, 0, 1, 0, 0.5, 0.0);
of = e_widget_framelist_add(evas, _("Keyboard move and resize"), 0);
ob = e_widget_label_add(evas, _("Automatically accept changes after:"));
e_widget_framelist_object_append(of, ob);
ob = e_widget_slider_add(evas, 1, 0, _("%1.1f sec"), 0.0, 9.9, 0.1, 0,
/* Keyboard Move and resize */
ol = e_widget_list_add(evas, 0, 0);
ow = e_widget_label_add(evas, _("Automatically accept changes after:"));
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_slider_add(evas, 1, 0, _("%1.1f sec"), 0.0, 9.9, 0.1, 0,
&(cfdata->border_keyboard.timeout), NULL, 100);
e_widget_framelist_object_append(of, ob);
ob = e_widget_label_add(evas, _("Move by"));
e_widget_framelist_object_append(of, ob);
ob = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 1, 255, 1, 0, NULL,
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_label_add(evas, _("Move by"));
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 1, 255, 1, 0, NULL,
&(cfdata->border_keyboard.move.dx), 100);
e_widget_framelist_object_append(of, ob);
ob = e_widget_label_add(evas, _("Resize by"));
e_widget_framelist_object_append(of, ob);
ob = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 1, 255, 1, 0, NULL,
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_label_add(evas, _("Resize by"));
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_slider_add(evas, 1, 0, _("%2.0f pixels"), 1, 255, 1, 0, NULL,
&(cfdata->border_keyboard.resize.dx), 100);
e_widget_framelist_object_append(of, ob);
e_widget_list_object_append(o, of, 1, 0, 0.5);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
e_widget_toolbook_page_append(otb, NULL, _("Keyboard"), ol,
1, 0, 1, 0, 0.5, 0.0);
of = e_widget_framelist_add(evas, _("Automatic move and resize"), 0);
ob = e_widget_check_add(evas, _("Limit resize on window configure request to useful geometry"),
/* Automatic Move and resize */
ol = e_widget_list_add(evas, 0, 0);
ow = e_widget_check_add(evas, _("Limit resize to useful geometry"),
&(cfdata->geometry_auto_resize_limit));
e_widget_framelist_object_append(of, ob);
ob = e_widget_check_add(evas, _("Move after resize on window configure request"),
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
ow = e_widget_check_add(evas, _("Move after resize"),
&(cfdata->geometry_auto_move));
e_widget_framelist_object_append(of, ob);
e_widget_list_object_append(o, of, 1, 0, 0.5);
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
e_widget_toolbook_page_append(otb, NULL, _("Automatic"), ol,
1, 0, 1, 0, 0.5, 0.0);
return o;
e_widget_toolbook_page_show(otb, 0);
return otb;
}
static void