Add Fileman config to Configuration Panel when module loaded.

SVN revision: 31280
This commit is contained in:
Christopher Michael 2007-08-13 00:00:13 +00:00
parent 80d85dea05
commit a37cff5148
3 changed files with 20 additions and 5 deletions

View File

@ -68,13 +68,13 @@ static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static int _basic_apply(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
static Evas_Object *_basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata);
void
_config_fileman_module(E_Container *con)
EAPI E_Config_Dialog *
e_int_config_fileman(E_Container *con, const char *params __UNUSED__)
{
E_Config_Dialog *cfd;
E_Config_Dialog_View *v;
if (e_config_dialog_find("E", "_config_fileman_dialog")) return;
if (e_config_dialog_find("E", "_config_fileman_dialog")) return NULL;
v = E_NEW(E_Config_Dialog_View, 1);
v->create_cfdata = _create_data;
v->free_cfdata = _free_data;
@ -83,6 +83,7 @@ _config_fileman_module(E_Container *con)
cfd = e_config_dialog_new(con, _("Fileman Settings"), "E",
"_config_fileman_dialog",
"enlightenment/fileman", 0, v, NULL);
return cfd;
}
static void *
@ -91,6 +92,8 @@ _create_data(E_Config_Dialog *cfd)
E_Config_Dialog_Data *cfdata;
cfdata = E_NEW(E_Config_Dialog_Data, 1);
cfd->cfdata = cfdata;
cfdata->cfd = cfd;
_fill_data(cfdata);
return cfdata;
}
@ -112,6 +115,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
static void
_free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
{
E_FREE(cfd->data);
E_FREE(cfdata);
}

View File

@ -4,7 +4,7 @@
#ifndef E_MOD_CONFIG_H
#define E_MOD_CONFIG_H
void _config_fileman_module(E_Container *con);
EAPI E_Config_Dialog *e_int_config_fileman(E_Container *con, const char *params __UNUSED__);
#endif
#endif

View File

@ -3,6 +3,7 @@
*/
#include "e.h"
#include "e_mod_main.h"
#include "e_mod_config.h"
/* actual module specifics */
static void _e_mod_action_fileman_cb(E_Object *obj, const char *params);
@ -34,6 +35,13 @@ e_modapi_init(E_Module *m)
conf_module = m;
/* Setup Entry in Config Panel */
e_configure_registry_category_add("fileman", 100, _("File Manager"),
NULL, "enlightenment/fileman");
e_configure_registry_item_add("fileman/fileman", 10, _("File Manager"),
NULL, "enlightenment/fileman",
e_int_config_fileman);
/* Setup Config edd */
_e_mod_fileman_config_load();
@ -118,6 +126,9 @@ e_modapi_shutdown(E_Module *m)
e_action_del("fileman");
act = NULL;
}
/* remove fileman category from config panel */
e_configure_registry_item_del("fileman/fileman");
e_configure_registry_category_del("fileman");
E_FREE(fileman_config);
E_CONFIG_DD_FREE(conf_edd);
@ -147,7 +158,7 @@ e_modapi_config(E_Module *m)
E_Container *con;
con = e_container_current_get(e_manager_current_get());
_config_fileman_module(con);
e_int_config_fileman(con, NULL);
return 1;
}