forked from enlightenment/enlightenment
standardize the macros used in desktop editor, fix some null check failures
SVN revision: 83601
This commit is contained in:
parent
62ae68b344
commit
e6c16299bc
|
@ -56,12 +56,8 @@ static void _e_desktop_editor_exec_update(E_Config_Dialog_Data *cfdata);
|
||||||
static void _e_desktop_edit_select_cb(void *data, Evas_Object *obj);
|
static void _e_desktop_edit_select_cb(void *data, Evas_Object *obj);
|
||||||
static void _e_desktop_editor_icon_entry_changed(void *data, Evas_Object *obj);
|
static void _e_desktop_editor_icon_entry_changed(void *data, Evas_Object *obj);
|
||||||
|
|
||||||
#define IFADD(src, dst) if (src) dst = eina_stringshare_add(src); else \
|
|
||||||
dst = NULL
|
|
||||||
#define IFDEL(src) if (src) eina_stringshare_del(src); src = NULL;
|
|
||||||
#define IFDUP(src, dst) if (src) dst = strdup(src); else \
|
#define IFDUP(src, dst) if (src) dst = strdup(src); else \
|
||||||
dst = NULL
|
dst = NULL
|
||||||
#define IFFREE(src) if (src) free(src); src = NULL;
|
|
||||||
|
|
||||||
/* externally accessible functions */
|
/* externally accessible functions */
|
||||||
|
|
||||||
|
@ -204,7 +200,6 @@ e_desktop_edit(E_Container *con, Efreet_Desktop *desktop)
|
||||||
{
|
{
|
||||||
E_Desktop_Edit *editor;
|
E_Desktop_Edit *editor;
|
||||||
|
|
||||||
if (!con) return NULL;
|
|
||||||
editor = E_OBJECT_ALLOC(E_Desktop_Edit, E_DESKTOP_EDIT_TYPE, _e_desktop_edit_free);
|
editor = E_OBJECT_ALLOC(E_Desktop_Edit, E_DESKTOP_EDIT_TYPE, _e_desktop_edit_free);
|
||||||
if (!editor) return NULL;
|
if (!editor) return NULL;
|
||||||
if (desktop) editor->desktop = desktop;
|
if (desktop) editor->desktop = desktop;
|
||||||
|
@ -253,7 +248,7 @@ _e_desktop_edit_free(E_Desktop_Edit *editor)
|
||||||
E_OBJECT_CHECK(editor);
|
E_OBJECT_CHECK(editor);
|
||||||
E_OBJECT_TYPE_CHECK(editor, E_EAP_EDIT_TYPE);
|
E_OBJECT_TYPE_CHECK(editor, E_EAP_EDIT_TYPE);
|
||||||
|
|
||||||
IFFREE(editor->tmp_image_path);
|
E_FREE(editor->tmp_image_path);
|
||||||
E_FREE(editor);
|
E_FREE(editor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -364,17 +359,17 @@ _e_desktop_edit_free_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data
|
||||||
}
|
}
|
||||||
if (cfdata->desktop) efreet_desktop_free(cfdata->desktop);
|
if (cfdata->desktop) efreet_desktop_free(cfdata->desktop);
|
||||||
|
|
||||||
IFFREE(cfdata->name);
|
E_FREE(cfdata->name);
|
||||||
IFFREE(cfdata->generic_name);
|
E_FREE(cfdata->generic_name);
|
||||||
IFFREE(cfdata->comment);
|
E_FREE(cfdata->comment);
|
||||||
IFFREE(cfdata->exec);
|
E_FREE(cfdata->exec);
|
||||||
IFFREE(cfdata->try_exec);
|
E_FREE(cfdata->try_exec);
|
||||||
IFFREE(cfdata->url);
|
E_FREE(cfdata->url);
|
||||||
IFFREE(cfdata->startup_wm_class);
|
E_FREE(cfdata->startup_wm_class);
|
||||||
IFFREE(cfdata->categories);
|
E_FREE(cfdata->categories);
|
||||||
IFFREE(cfdata->icon);
|
E_FREE(cfdata->icon);
|
||||||
IFFREE(cfdata->mimes);
|
E_FREE(cfdata->mimes);
|
||||||
IFFREE(cfdata->orig_path);
|
E_FREE(cfdata->orig_path);
|
||||||
|
|
||||||
if (cfdata->editor->icon_fsel_dia)
|
if (cfdata->editor->icon_fsel_dia)
|
||||||
e_object_del(E_OBJECT(cfdata->editor->icon_fsel_dia));
|
e_object_del(E_OBJECT(cfdata->editor->icon_fsel_dia));
|
||||||
|
@ -451,42 +446,41 @@ _e_desktop_edit_update_orig_path(E_Config_Dialog_Data *cfdata)
|
||||||
static int
|
static int
|
||||||
_e_desktop_edit_basic_apply_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
|
_e_desktop_edit_basic_apply_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
|
||||||
{
|
{
|
||||||
char *str;
|
E_FREE(cfdata->desktop->name);
|
||||||
|
|
||||||
IFFREE(cfdata->desktop->name);
|
|
||||||
IFDUP(cfdata->name, cfdata->desktop->name);
|
IFDUP(cfdata->name, cfdata->desktop->name);
|
||||||
IFFREE(cfdata->desktop->comment);
|
E_FREE(cfdata->desktop->comment);
|
||||||
IFDUP(cfdata->comment, cfdata->desktop->comment);
|
IFDUP(cfdata->comment, cfdata->desktop->comment);
|
||||||
|
|
||||||
switch (cfdata->type)
|
switch (cfdata->type)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
IFFREE(cfdata->desktop->url);
|
E_FREE(cfdata->desktop->url);
|
||||||
IFDUP(cfdata->url, cfdata->desktop->url);
|
IFDUP(cfdata->url, cfdata->desktop->url);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
IFFREE(cfdata->desktop->exec);
|
E_FREE(cfdata->desktop->exec);
|
||||||
IFDUP(cfdata->exec, cfdata->desktop->exec);
|
IFDUP(cfdata->exec, cfdata->desktop->exec);
|
||||||
IFFREE(cfdata->desktop->try_exec);
|
E_FREE(cfdata->desktop->try_exec);
|
||||||
IFDUP(cfdata->try_exec, cfdata->desktop->try_exec);
|
IFDUP(cfdata->try_exec, cfdata->desktop->try_exec);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
IFFREE(cfdata->desktop->generic_name);
|
E_FREE(cfdata->desktop->generic_name);
|
||||||
IFDUP(cfdata->generic_name, cfdata->desktop->generic_name);
|
IFDUP(cfdata->generic_name, cfdata->desktop->generic_name);
|
||||||
IFFREE(cfdata->desktop->startup_wm_class);
|
E_FREE(cfdata->desktop->startup_wm_class);
|
||||||
IFDUP(cfdata->startup_wm_class, cfdata->desktop->startup_wm_class);
|
IFDUP(cfdata->startup_wm_class, cfdata->desktop->startup_wm_class);
|
||||||
|
|
||||||
EINA_LIST_FREE(cfdata->desktop->categories, str)
|
|
||||||
eina_stringshare_del(str);
|
|
||||||
cfdata->desktop->categories = efreet_desktop_string_list_parse(cfdata->categories);
|
|
||||||
|
|
||||||
EINA_LIST_FREE(cfdata->desktop->mime_types, str)
|
E_FREE_LIST(cfdata->desktop->categories, eina_stringshare_del);
|
||||||
eina_stringshare_del(str);
|
if (cfdata->categories)
|
||||||
cfdata->desktop->mime_types = efreet_desktop_string_list_parse(cfdata->mimes);
|
cfdata->desktop->categories = efreet_desktop_string_list_parse(cfdata->categories);
|
||||||
|
|
||||||
IFFREE(cfdata->desktop->icon);
|
E_FREE_LIST(cfdata->desktop->mime_types, eina_stringshare_del);
|
||||||
|
if (cfdata->mimes)
|
||||||
|
cfdata->desktop->mime_types = efreet_desktop_string_list_parse(cfdata->mimes);
|
||||||
|
|
||||||
|
E_FREE(cfdata->desktop->icon);
|
||||||
IFDUP(cfdata->icon, cfdata->desktop->icon);
|
IFDUP(cfdata->icon, cfdata->desktop->icon);
|
||||||
|
|
||||||
cfdata->desktop->startup_notify = cfdata->startup_notify;
|
cfdata->desktop->startup_notify = cfdata->startup_notify;
|
||||||
|
@ -545,7 +539,7 @@ _e_desktop_edit_basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Di
|
||||||
if (cfdata->edited_categories)
|
if (cfdata->edited_categories)
|
||||||
{
|
{
|
||||||
const char *str;
|
const char *str;
|
||||||
Eina_List *lst, *old_lst;
|
Eina_List *lst = NULL, *old_lst;
|
||||||
|
|
||||||
cfdata->edited_categories = EINA_FALSE;
|
cfdata->edited_categories = EINA_FALSE;
|
||||||
cfdata->changed_categories = EINA_FALSE;
|
cfdata->changed_categories = EINA_FALSE;
|
||||||
|
@ -557,7 +551,8 @@ _e_desktop_edit_basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Di
|
||||||
else
|
else
|
||||||
old_lst = NULL;
|
old_lst = NULL;
|
||||||
|
|
||||||
lst = efreet_desktop_string_list_parse(cfdata->categories);
|
if (cfdata->categories)
|
||||||
|
lst = efreet_desktop_string_list_parse(cfdata->categories);
|
||||||
if (eina_list_count(lst) != eina_list_count(old_lst))
|
if (eina_list_count(lst) != eina_list_count(old_lst))
|
||||||
cfdata->changed_categories = EINA_TRUE;
|
cfdata->changed_categories = EINA_TRUE;
|
||||||
|
|
||||||
|
@ -589,7 +584,7 @@ _e_desktop_edit_basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Di
|
||||||
if (cfdata->edited_mimes)
|
if (cfdata->edited_mimes)
|
||||||
{
|
{
|
||||||
const char *str;
|
const char *str;
|
||||||
Eina_List *lst, *old_lst;
|
Eina_List *lst = NULL, *old_lst;
|
||||||
|
|
||||||
cfdata->edited_mimes = EINA_FALSE;
|
cfdata->edited_mimes = EINA_FALSE;
|
||||||
cfdata->changed_mimes = EINA_FALSE;
|
cfdata->changed_mimes = EINA_FALSE;
|
||||||
|
@ -601,7 +596,8 @@ _e_desktop_edit_basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Di
|
||||||
else
|
else
|
||||||
old_lst = NULL;
|
old_lst = NULL;
|
||||||
|
|
||||||
lst = efreet_desktop_string_list_parse(cfdata->mimes);
|
if (cfdata->mimes)
|
||||||
|
lst = efreet_desktop_string_list_parse(cfdata->mimes);
|
||||||
if (eina_list_count(lst) != eina_list_count(old_lst))
|
if (eina_list_count(lst) != eina_list_count(old_lst))
|
||||||
cfdata->changed_mimes = EINA_TRUE;
|
cfdata->changed_mimes = EINA_TRUE;
|
||||||
|
|
||||||
|
@ -957,7 +953,7 @@ _e_desktop_edit_cb_icon_select_ok(void *data, E_Dialog *dia)
|
||||||
file = e_widget_fsel_selection_path_get(cfdata->editor->icon_fsel);
|
file = e_widget_fsel_selection_path_get(cfdata->editor->icon_fsel);
|
||||||
dir = ecore_file_dir_get(file);
|
dir = ecore_file_dir_get(file);
|
||||||
|
|
||||||
IFFREE(cfdata->icon);
|
E_FREE(cfdata->icon);
|
||||||
|
|
||||||
/* TODO: Check for theme icon */
|
/* TODO: Check for theme icon */
|
||||||
icon_dir = e_user_icon_dir_get();
|
icon_dir = e_user_icon_dir_get();
|
||||||
|
@ -1048,7 +1044,7 @@ _e_desktop_edit_cb_exec_select_ok(void *data, E_Dialog *dia)
|
||||||
cfdata = data;
|
cfdata = data;
|
||||||
file = e_widget_fsel_selection_path_get(cfdata->editor->exec_fsel);
|
file = e_widget_fsel_selection_path_get(cfdata->editor->exec_fsel);
|
||||||
|
|
||||||
IFFREE(cfdata->exec);
|
E_FREE(cfdata->exec);
|
||||||
IFDUP(file, cfdata->exec);
|
IFDUP(file, cfdata->exec);
|
||||||
|
|
||||||
_e_desktop_edit_cb_exec_select_cancel(data, dia);
|
_e_desktop_edit_cb_exec_select_cancel(data, dia);
|
||||||
|
|
Loading…
Reference in New Issue