/* a nice easy setup function that does the dirty work */ E_API void e_int_client_locks(E_Client *ec) { E_Config_Dialog *cfd; E_Config_Dialog_View *v; v = E_NEW(E_Config_Dialog_View, 1); if (v) { /* 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->advanced.apply_cfdata = _advanced_apply_data; v->advanced.create_widgets = _advanced_create_widgets; v->override_auto_apply = 1; /* create config diaolg for bd object/data */ cfd = e_config_dialog_new(NULL, _("Window Locks"), "E", "_border_locks_dialog", NULL, 0, v, ec); ec->border_locks_dialog = cfd; evas_object_layer_set(e_win_client_get(cfd->dia->win)->frame, ec->layer); } }
E_API void e_int_client_prop(E_Client *ec) { E_Dialog *dia; if (ec->border_prop_dialog) return; dia = e_dialog_new(NULL, "E", "_window_props"); e_object_del_attach_func_set(E_OBJECT(dia), _ec_cb_dialog_del); _create_data(dia, ec); _ec_go(dia, (void *)0); e_dialog_button_add(dia, _("Close"), NULL, _ec_cb_dialog_close, dia); elm_win_center(dia->win, 1, 1); e_dialog_show(dia); e_dialog_border_icon_set(dia, "preferences-system-windows"); evas_object_layer_set(e_win_client_get(dia->win)->frame, ec->layer); }
E_API void e_util_win_auto_resize_fill(Evas_Object *win) { E_Zone *zone = NULL; E_Client *ec; ec = e_win_client_get(win); if (ec) zone = ec->zone; if (!zone) zone = e_zone_current_get(); if (zone) { int w, h, mw, mh; e_zone_useful_geometry_get(zone, NULL, NULL, &w, &h); evas_object_size_hint_min_get(win, &mw, &mh); w = _win_auto_size_calc(w, mw); h = _win_auto_size_calc(h, mh); evas_object_resize(win, w, h); } }