On Sun, 16 Aug 2009 21:11:51 +0200, Cédric wrote:
Hi,
answering your mails is hard the way you quote.
About your initial question abut including sciwrappers.h: the order of header includes is important, I think I already told you that in another thread. First include geany.h, then other Geany includes like document.c or sciwrappers.h, then include pluginmacros.h and geanyfunctions.h. You can't include headers randomly. See other plugins how they do it.
All stuff Colomban explained with PLAT_GTK and ScintillaObject declaration is not true as long as you include geany.h. That does all the necessary stuff for you. Check this file to get a clue.
And last but not least, since Geany 0.18 it's recommended to *only* include geanyplugin.h which does everything for you. But obviously you need Geany 0.18 for this and you need to adjust the required plugin API version in your plugin accordingly (that is set it to 150).
Okay thanks it compiles now :) But I still have a problem with a function which is into sciwrapper.h. When I launch geany and open the Can't load plugin: /usr/local/lib/geany/pretty-print.so: undefined symbol: sci_scroll_columns
sci_scroll_columns() is not part of the plugin API. If you can't find a function in the plugin API docs (http://www.geany.org/manual/reference/), you can't use it in your plugin. Either we add the function to the API but then you would require Geany 0.19 which is not yet released or you simply call the corresponding Scintilla message directly:
scintilla_send_message(sci, SCI_LINESCROLL, columns, 0)
Regards, Enrico