PyMODINIT_FUNC initgwy(void) { gchar *settings_file; PyObject *mod, *dict; if (!reload_libraries()) return; /* gwybatch.c */ /* This requires a display. */ gtk_init(NULL, NULL); gwy_widgets_type_init(); gwy_undo_set_enabled(FALSE); gwy_resource_class_load(g_type_class_peek(GWY_TYPE_GRADIENT)); gwy_resource_class_load(g_type_class_peek(GWY_TYPE_GL_MATERIAL)); gwy_resource_class_load(g_type_class_peek(GWY_TYPE_GRAIN_VALUE)); gwy_resource_class_load(g_type_class_peek(GWY_TYPE_CALIBRATION)); settings_file = gwy_app_settings_get_settings_filename(); gwy_app_settings_load(settings_file, NULL); g_free(settings_file); /* This requires a display. */ gwy_stock_register_stock_items(); load_modules(); /* pygwy.c */ init_pygobject(); mod = Py_InitModule("gwy", (PyMethodDef*)pygwy_functions); dict = PyModule_GetDict(mod); /* This does "import gtk" so display is required. */ pygwy_register_classes(dict); pygwy_add_constants(mod, "GWY_"); }
initpygwy(GwyContainer *container) { PyObject *m, *d; PyObject *py_container; init_pygobject (); m = Py_InitModule ("gwy", (PyMethodDef*) pygwy_functions); d = PyModule_GetDict (m); pygwy_register_classes (d); /* pyatk_add_constants(m, "ATK_"); */ /* Create accessible object GwyContainer (gwy.data) */ py_container = pygobject_new((GObject*)container); PyDict_SetItemString(d, "data", py_container); }