From b3e5363aa181f8bcfe0e9e51cde1567f47471e50 Mon Sep 17 00:00:00 2001 From: Christopher Michael Date: Fri, 1 Sep 2006 17:38:25 +0000 Subject: [PATCH] Add function to set window border icon so that Import dialogs and such can have same icon as their parent. SVN revision: 25303 --- src/bin/e_int_config_theme_import.c | 1 + src/bin/e_int_config_wallpaper_gradient.c | 2 ++ src/bin/e_int_config_wallpaper_import.c | 3 ++- src/bin/e_win.c | 11 +++++++++++ src/bin/e_win.h | 1 + 5 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/bin/e_int_config_theme_import.c b/src/bin/e_int_config_theme_import.c index 08b645368..fa855f591 100644 --- a/src/bin/e_int_config_theme_import.c +++ b/src/bin/e_int_config_theme_import.c @@ -134,6 +134,7 @@ e_int_config_theme_import(E_Config_Dialog *parent) e_win_size_min_set(win, w, h); e_win_size_max_set(win, 99999, 99999); e_win_show(win); + e_win_border_icon_set(win, "enlightenment/themes"); win->data = import; diff --git a/src/bin/e_int_config_wallpaper_gradient.c b/src/bin/e_int_config_wallpaper_gradient.c index 198a5726e..74b258355 100644 --- a/src/bin/e_int_config_wallpaper_gradient.c +++ b/src/bin/e_int_config_wallpaper_gradient.c @@ -187,6 +187,8 @@ e_int_config_wallpaper_gradient(E_Config_Dialog *parent) _import_opt_disabled_set(import, 1); e_dialog_resizable_set(dia, 0); e_dialog_show(dia); + + e_dialog_border_icon_set(dia, "enlightenment/background"); return dia; } diff --git a/src/bin/e_int_config_wallpaper_import.c b/src/bin/e_int_config_wallpaper_import.c index a9612c78d..27eacdafb 100644 --- a/src/bin/e_int_config_wallpaper_import.c +++ b/src/bin/e_int_config_wallpaper_import.c @@ -99,7 +99,7 @@ e_int_config_wallpaper_import(E_Config_Dialog *parent) e_win_resize_callback_set(win, _import_cb_resize); e_win_dialog_set(win, 1); e_win_name_class_set(win, "E", "_wallpaper_import_dialog"); - + o = edje_object_add(evas); import->bg_obj = o; e_theme_edje_object_set(o, "base/theme/dialog", "e/widgets/dialog/main"); @@ -198,6 +198,7 @@ e_int_config_wallpaper_import(E_Config_Dialog *parent) e_win_size_min_set(win, w, h); e_win_size_max_set(win, 99999, 99999); e_win_show(win); + e_win_border_icon_set(win, "enlightenment/background"); if (!e_widget_focus_get(import->bg_obj)) e_widget_focus_set(import->box_obj, 1); diff --git a/src/bin/e_win.c b/src/bin/e_win.c index 668d6af31..e0eb4323f 100644 --- a/src/bin/e_win.c +++ b/src/bin/e_win.c @@ -365,6 +365,17 @@ e_win_evas_object_win_get(Evas_Object *obj) return win; } +EAPI void +e_win_border_icon_set(E_Win *win, const char *icon) +{ + E_Border *border; + + if (!icon) return; + border = win->border; + if (!border) return; + border->internal_icon = evas_stringshare_add(icon); +} + /* local subsystem functions */ static void _e_win_free(E_Win *win) diff --git a/src/bin/e_win.h b/src/bin/e_win.h index d9bdc1d85..7ad65a5dd 100644 --- a/src/bin/e_win.h +++ b/src/bin/e_win.h @@ -65,6 +65,7 @@ EAPI void e_win_size_base_set (E_Win *win, int w, int h); EAPI void e_win_step_set (E_Win *win, int x, int y); EAPI void e_win_name_class_set (E_Win *win, const char *name, const char *class); EAPI void e_win_title_set (E_Win *win, const char *title); +EAPI void e_win_border_icon_set (E_Win *win, const char *icon); EAPI void e_win_centered_set (E_Win *win, int centered); EAPI void e_win_dialog_set (E_Win *win, int dialog);