diff options
Diffstat (limited to 'plugins/pychrysalide/core-ui.c')
-rw-r--r-- | plugins/pychrysalide/core-ui.c | 52 |
1 files changed, 47 insertions, 5 deletions
diff --git a/plugins/pychrysalide/core-ui.c b/plugins/pychrysalide/core-ui.c index ebc32cb..0ea15df 100644 --- a/plugins/pychrysalide/core-ui.c +++ b/plugins/pychrysalide/core-ui.c @@ -36,6 +36,8 @@ #include "core-ui-int.h" #include "arch/module-ui.h" #include "glibext/module-ui.h" +#include "gtkext/module.h" +//#include "gui/module.h" @@ -83,8 +85,11 @@ static void g_pychrysalide_plugin_ui_handle_native_plugins_loaded_event(GPluginM /* --------------------------- POINT D'ENTREE POUR PYTHON --------------------------- */ +/*Ajoute des modules UI aux extensions Python. */ +static bool add_python_ui_modules(PyObject *); + /* Inscrit les défintions des objets UI Python de Chrysalide. */ -static bool populate_python_modules_ui(void); +static bool populate_python_modules_ui(bool); @@ -401,7 +406,32 @@ static void g_pychrysalide_plugin_ui_handle_native_plugins_loaded_event(GPluginM /****************************************************************************** * * -* Paramètres : - * +* Paramètres : super = module dont la définition est à compléter. * +* * +* Description : Ajoute des modules UI aux extensions Python. * +* * +* Retour : Bilan de l'opération. * +* * +* Remarques : - * +* * +******************************************************************************/ + +static bool add_python_ui_modules(PyObject *super) +{ + bool result; /* Bilan à retourner */ + + result = true; + + if (result) result = add_gtkext_module(super); + + return result; + +} + + +/****************************************************************************** +* * +* Paramètres : modify = autorisation de motification du type GObject. * * * * Description : Inscrit les défintions des objets UI Python de Chrysalide. * * * @@ -411,14 +441,25 @@ static void g_pychrysalide_plugin_ui_handle_native_plugins_loaded_event(GPluginM * * ******************************************************************************/ -static bool populate_python_modules_ui(void) +static bool populate_python_modules_ui(bool modify) { bool result; /* Bilan à retourner */ result = true; - if (result) result = populate_arch_module_ui(); - if (result) result = populate_glibext_module_ui(); + if (!modify) + { + if (result) result = populate_arch_module_ui(); + if (result) result = populate_glibext_module_ui(); + + } + + else + { + if (result) result = populate_gtkext_module(); + //if (result) result = populate_gui_module(); + + } return result; @@ -444,6 +485,7 @@ PyMODINIT_FUNC PyInit_pychrysalideui(void) details.standalone = _standalone; + details.add_extra = add_python_ui_modules; details.populate_extra = populate_python_modules_ui; details.create_self = g_pychrysalide_plugin_ui_new; |