On Dec 24, 2007 4:15 PM, Bo Lorentsen bl@lue.dk wrote:
While getting my cmake plugin working I got this strange error while compiling.
cmakeprj.c:256: error: 'GeanyApp' has no member named 'geany_data'
I think this is because there is already a macro named "project" in the pluginmacros.h file: #define project app->project
So when you say app->project, the preprocessor expands it to app->app->project, which causes the error you are seeing.
Maybe try this instead:
256 : if( project != NULL ) 257 : base_path = project->base_path;
Also, how do I get noted if the project is changed or saved ?
Your callbacks will be automatically registered if you do something like this:
void my_proj_open(GObject *obj, GKeyFile *config, gpointer user_data) { g_print("Project opened!") }
void my_proj_saved(GObject *obj, GKeyFile *config, gpointer user_data) { g_print("Project saved!") }
void my_proj_close(GObject *obj, GKeyFile *config, gpointer user_data) { g_print("Project closed!") }
GeanyCallback geany_callbacks[] = { {"project-open", (GCallback) &my_proj_open, TRUE, NULL}, {"project-save", (GCallback) &my_proj_save, TRUE, NULL}, {"project-close", (GCallback) &my_proj_close, TRUE, NULL}, {NULL, NULL, FALSE, NULL} };
Hope this helps,
- Jeff