forked from enlightenment/enlightenment
Remove Evas_Object as reference from conf_randr. Use data structure instead.
SVN revision: 70504
This commit is contained in:
parent
8384f04ad4
commit
c0752cccb5
|
@ -18,7 +18,7 @@ struct _E_Config_Dialog_Data
|
||||||
E_Manager *manager;
|
E_Manager *manager;
|
||||||
struct {
|
struct {
|
||||||
Evas *canvas;
|
Evas *canvas;
|
||||||
Evas_Object *dialog, *widget_list, *selected_eo;
|
Evas_Object *dialog, *widget_list;
|
||||||
E_Config_Randr_Dialog_Output_Dialog_Data *selected_output_dd;
|
E_Config_Randr_Dialog_Output_Dialog_Data *selected_output_dd;
|
||||||
E_Config_Randr_Dialog_Confirmation_Dialog_Data *confirmation_dialog;
|
E_Config_Randr_Dialog_Confirmation_Dialog_Data *confirmation_dialog;
|
||||||
struct {
|
struct {
|
||||||
|
@ -95,7 +95,7 @@ Eina_Bool policy_widget_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialo
|
||||||
void policy_widget_free_cfdata(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
void policy_widget_free_cfdata(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||||
void policy_widget_keep_changes(E_Config_Dialog_Data *cfdata);
|
void policy_widget_keep_changes(E_Config_Dialog_Data *cfdata);
|
||||||
void policy_widget_discard_changes(E_Config_Dialog_Data *cfdata);
|
void policy_widget_discard_changes(E_Config_Dialog_Data *cfdata);
|
||||||
void policy_widget_update_radio_buttons(Evas_Object *crtc);
|
void policy_widget_update_radio_buttons(E_Config_Randr_Dialog_Output_Dialog_Data *odd);
|
||||||
|
|
||||||
// Functions for the resolutions widget interaction
|
// Functions for the resolutions widget interaction
|
||||||
Eina_Bool resolution_widget_create_data(E_Config_Dialog_Data *cfdata);
|
Eina_Bool resolution_widget_create_data(E_Config_Dialog_Data *cfdata);
|
||||||
|
@ -105,7 +105,7 @@ Eina_Bool resolution_widget_basic_apply_data(E_Config_Dialog *cfd, E_Config_D
|
||||||
void resolution_widget_free_cfdata(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
void resolution_widget_free_cfdata(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||||
void resolution_widget_keep_changes(E_Config_Dialog_Data *cfdata);
|
void resolution_widget_keep_changes(E_Config_Dialog_Data *cfdata);
|
||||||
void resolution_widget_discard_changes(E_Config_Dialog_Data *cfdata);
|
void resolution_widget_discard_changes(E_Config_Dialog_Data *cfdata);
|
||||||
void resolution_widget_update_list(Evas_Object *crtc);
|
void resolution_widget_update_list(E_Config_Randr_Dialog_Output_Dialog_Data *odd);
|
||||||
|
|
||||||
// Functions for the orientation widget interaction
|
// Functions for the orientation widget interaction
|
||||||
Eina_Bool orientation_widget_create_data(E_Config_Dialog_Data *cfdata);
|
Eina_Bool orientation_widget_create_data(E_Config_Dialog_Data *cfdata);
|
||||||
|
@ -113,8 +113,8 @@ Evas_Object *orientation_widget_basic_create_widgets(Evas *canvas);
|
||||||
Eina_Bool orientation_widget_basic_check_changed(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
Eina_Bool orientation_widget_basic_check_changed(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||||
Eina_Bool orientation_widget_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
Eina_Bool orientation_widget_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||||
void orientation_widget_free_cfdata(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
void orientation_widget_free_cfdata(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||||
void orientation_widget_update_radio_buttons(Evas_Object *crtc);
|
void orientation_widget_update_radio_buttons(E_Config_Randr_Dialog_Output_Dialog_Data *odd);
|
||||||
void orientation_widget_update_edje(Evas_Object *crtc);
|
void orientation_widget_update_edje(E_Config_Randr_Dialog_Output_Dialog_Data *odd);
|
||||||
void orientation_widget_keep_changes(E_Config_Dialog_Data *cfdata);
|
void orientation_widget_keep_changes(E_Config_Dialog_Data *cfdata);
|
||||||
void orientation_widget_discard_changes(E_Config_Dialog_Data *cfdata);
|
void orientation_widget_discard_changes(E_Config_Dialog_Data *cfdata);
|
||||||
|
|
||||||
|
|
|
@ -407,17 +407,16 @@ _arrangement_widget_rep_mouse_down_cb(void *data __UNUSED__, Evas *e __UNUSED__,
|
||||||
|
|
||||||
e_layout_child_geometry_get(obj, &e_config_runtime_info->gui.widgets.arrangement.sel_rep_previous_pos.x, &e_config_runtime_info->gui.widgets.arrangement.sel_rep_previous_pos.y, NULL, NULL);
|
e_layout_child_geometry_get(obj, &e_config_runtime_info->gui.widgets.arrangement.sel_rep_previous_pos.x, &e_config_runtime_info->gui.widgets.arrangement.sel_rep_previous_pos.y, NULL, NULL);
|
||||||
//update data for other logs
|
//update data for other logs
|
||||||
e_config_runtime_info->gui.selected_eo = obj;
|
|
||||||
e_config_runtime_info->gui.selected_output_dd = (E_Config_Randr_Dialog_Output_Dialog_Data*)evas_object_data_get(obj, "rep_info");
|
e_config_runtime_info->gui.selected_output_dd = (E_Config_Randr_Dialog_Output_Dialog_Data*)evas_object_data_get(obj, "rep_info");
|
||||||
|
|
||||||
//update resolutions list
|
//update resolutions list
|
||||||
resolution_widget_update_list(obj);
|
resolution_widget_update_list(e_config_runtime_info->gui.selected_output_dd);
|
||||||
|
|
||||||
//update orientation radio buttons
|
//update orientation radio buttons
|
||||||
orientation_widget_update_radio_buttons(obj);
|
orientation_widget_update_radio_buttons(e_config_runtime_info->gui.selected_output_dd);
|
||||||
|
|
||||||
//update policy radio buttons
|
//update policy radio buttons
|
||||||
policy_widget_update_radio_buttons(obj);
|
policy_widget_update_radio_buttons(e_config_runtime_info->gui.selected_output_dd);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -31,7 +31,7 @@ orientation_widget_create_data(E_Config_Dialog_Data *cfdata)
|
||||||
EINA_LIST_FOREACH(cfdata->output_dialog_data_list, iter, odd)
|
EINA_LIST_FOREACH(cfdata->output_dialog_data_list, iter, odd)
|
||||||
{
|
{
|
||||||
odd->new_orientation = Ecore_X_Randr_Unset;
|
odd->new_orientation = Ecore_X_Randr_Unset;
|
||||||
odd->previous_orientation = odd->crtc ? odd->crtc->current_orientation : Ecore_X_Randr_Unset;
|
odd->previous_orientation = odd->crtc ? odd->crtc->current_orientation : Ecore_X_Randr_Unset;
|
||||||
}
|
}
|
||||||
|
|
||||||
return EINA_TRUE;
|
return EINA_TRUE;
|
||||||
|
@ -95,7 +95,7 @@ orientation_widget_basic_create_widgets(Evas *canvas)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//disable widgets, if no CRTC is selected
|
//disable widgets, if no CRTC is selected
|
||||||
orientation_widget_update_radio_buttons(e_config_runtime_info->gui.selected_eo);
|
orientation_widget_update_radio_buttons(e_config_runtime_info->gui.selected_output_dd);
|
||||||
|
|
||||||
//evas_object_show(e_config_runtime_info->gui.widgets.orientation.swallowing_edje);
|
//evas_object_show(e_config_runtime_info->gui.widgets.orientation.swallowing_edje);
|
||||||
|
|
||||||
|
@ -149,13 +149,12 @@ _orientation_widget_mouse_up_cb(void *data __UNUSED__, Evas *e __UNUSED__, Evas_
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
orientation_widget_update_radio_buttons(Evas_Object *crtc)
|
orientation_widget_update_radio_buttons(E_Config_Randr_Dialog_Output_Dialog_Data *odd)
|
||||||
{
|
{
|
||||||
E_Config_Randr_Dialog_Output_Dialog_Data *output_dialog_data;
|
|
||||||
Ecore_X_Randr_Orientation supported_oris, ori;
|
Ecore_X_Randr_Orientation supported_oris, ori;
|
||||||
|
|
||||||
//disable widgets, if no crtc is selected
|
//disable widgets, if no crtc is selected
|
||||||
if (!crtc)
|
if (!odd)
|
||||||
{
|
{
|
||||||
e_widget_disabled_set(e_config_runtime_info->gui.widgets.orientation.radio_normal, EINA_TRUE);
|
e_widget_disabled_set(e_config_runtime_info->gui.widgets.orientation.radio_normal, EINA_TRUE);
|
||||||
e_widget_disabled_set(e_config_runtime_info->gui.widgets.orientation.radio_rot90, EINA_TRUE);
|
e_widget_disabled_set(e_config_runtime_info->gui.widgets.orientation.radio_rot90, EINA_TRUE);
|
||||||
|
@ -166,13 +165,11 @@ orientation_widget_update_radio_buttons(Evas_Object *crtc)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(output_dialog_data = evas_object_data_get(crtc, "rep_info"))) return;
|
if (odd->crtc)
|
||||||
|
|
||||||
if (output_dialog_data->crtc)
|
|
||||||
{
|
{
|
||||||
//enabled monitor
|
//enabled monitor
|
||||||
supported_oris = output_dialog_data->crtc->orientations;
|
supported_oris = odd->crtc->orientations;
|
||||||
ori = (output_dialog_data->new_orientation != Ecore_X_Randr_Unset) ? output_dialog_data->new_orientation : output_dialog_data->crtc->current_orientation;
|
ori = (odd->new_orientation != Ecore_X_Randr_Unset) ? odd->new_orientation : odd->crtc->current_orientation;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -246,19 +243,19 @@ orientation_widget_update_radio_buttons(Evas_Object *crtc)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
void
|
void
|
||||||
orientation_widget_update_edje(Evas_Object *crtc)
|
orientation_widget_update_edje(E_Config_Randr_Dialog_Output_Dialog_Data *odd)
|
||||||
{
|
{
|
||||||
E_Config_Randr_Dialog_Output_Dialog_Data *output_dialog_data;
|
|
||||||
Ecore_X_Randr_Orientation supported_oris, ori;
|
Ecore_X_Randr_Orientation supported_oris, ori;
|
||||||
char signal[40];
|
char signal[40];
|
||||||
|
|
||||||
if (!e_config_runtime_info->gui.selected_eo || !(output_dialog_data = evas_object_data_get(crtc, "rep_info"))) return;
|
if (!odd)
|
||||||
|
return;
|
||||||
|
|
||||||
if (output_dialog_data->crtc)
|
if (odd->crtc)
|
||||||
{
|
{
|
||||||
//enabled monitor
|
//enabled monitor
|
||||||
supported_oris = output_dialog_data->crtc->orientations;
|
supported_oris = odd->crtc->orientations;
|
||||||
ori = output_dialog_data->crtc->current_orientation;
|
ori = odd->crtc->current_orientation;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -250,13 +250,12 @@ policy_widget_basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Dial
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
policy_widget_update_radio_buttons(Evas_Object *rep)
|
policy_widget_update_radio_buttons(E_Config_Randr_Dialog_Output_Dialog_Data *odd)
|
||||||
{
|
{
|
||||||
E_Config_Randr_Dialog_Output_Dialog_Data *output_dialog_data;
|
|
||||||
Ecore_X_Randr_Output_Policy policy;
|
Ecore_X_Randr_Output_Policy policy;
|
||||||
|
|
||||||
//disable widgets, if no rep is selected
|
//disable widgets, if no rep is selected
|
||||||
if (!rep || !(output_dialog_data = evas_object_data_get(rep, "rep_info")))
|
if (!odd)
|
||||||
{
|
{
|
||||||
//Evas_Object *radio_above, *radio_right, *radio_below, *radio_left, *radio_clone, *radio_none;
|
//Evas_Object *radio_above, *radio_right, *radio_below, *radio_left, *radio_clone, *radio_none;
|
||||||
e_widget_disabled_set(e_config_runtime_info->gui.widgets.policy.radio_above, EINA_TRUE);
|
e_widget_disabled_set(e_config_runtime_info->gui.widgets.policy.radio_above, EINA_TRUE);
|
||||||
|
@ -277,7 +276,7 @@ policy_widget_update_radio_buttons(Evas_Object *rep)
|
||||||
e_widget_disabled_set(e_config_runtime_info->gui.widgets.policy.radio_none, EINA_FALSE);
|
e_widget_disabled_set(e_config_runtime_info->gui.widgets.policy.radio_none, EINA_FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
policy = (output_dialog_data->new_policy != Ecore_X_Randr_Unset) ? output_dialog_data->new_policy : output_dialog_data->previous_policy;
|
policy = (odd->new_policy != Ecore_X_Randr_Unset) ? odd->new_policy : odd->previous_policy;
|
||||||
//toggle the switch of the currently used policies
|
//toggle the switch of the currently used policies
|
||||||
switch (policy)
|
switch (policy)
|
||||||
{
|
{
|
||||||
|
|
|
@ -161,10 +161,9 @@ resolution_widget_basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
resolution_widget_update_list(Evas_Object *rep)
|
resolution_widget_update_list(E_Config_Randr_Dialog_Output_Dialog_Data *odd)
|
||||||
{
|
{
|
||||||
Eina_List *iter, *modelist = NULL;
|
Eina_List *iter, *modelist = NULL;
|
||||||
E_Config_Randr_Dialog_Output_Dialog_Data *odd;
|
|
||||||
Ecore_X_Randr_Mode_Info *mode_info, *current_mode = NULL;
|
Ecore_X_Randr_Mode_Info *mode_info, *current_mode = NULL;
|
||||||
char resolution_text[RESOLUTION_TXT_MAX_LENGTH];
|
char resolution_text[RESOLUTION_TXT_MAX_LENGTH];
|
||||||
float rate;
|
float rate;
|
||||||
|
@ -174,7 +173,7 @@ resolution_widget_update_list(Evas_Object *rep)
|
||||||
e_widget_ilist_freeze(e_config_runtime_info->gui.widgets.resolution.widget);
|
e_widget_ilist_freeze(e_config_runtime_info->gui.widgets.resolution.widget);
|
||||||
e_widget_ilist_clear(e_config_runtime_info->gui.widgets.resolution.widget);
|
e_widget_ilist_clear(e_config_runtime_info->gui.widgets.resolution.widget);
|
||||||
|
|
||||||
if (!rep || !(odd = evas_object_data_get(rep, "rep_info")))
|
if (!odd)
|
||||||
goto _go_and_return;
|
goto _go_and_return;
|
||||||
|
|
||||||
//select correct mode list
|
//select correct mode list
|
||||||
|
|
Loading…
Reference in New Issue