Am 24.10.2013 16:25, schrieb Matthew Brush:

I agree with that.

I also agree with your general idea of per-document data lists. However,
I'm not seeing the point of the new code you added because each doc has
already a ScintillaObject, which is a GObject. I would suggest that the
document_set_data() and friends wrap around
g_object_set_data(doc->editor->sci). This way things are prepared for
when GeanyDocument becomes a GObject but without the need to duplicate
the glib interface in Geany.

Unless I missed anything that requires the datalist in GeanyDocument
directly?


There isn't (or rather shouldn't be) a 1:1 correspondence between a GeanyDocument and the view that's showing it. Consider say a split view where the same document is shown in multiple views, or in two windows or whatever. But you're right, with the way the code is currently, you could just wrap the Scintilla data list, it's just not very future-proof (at least this was my thinking).

Yes, but that's an implementation detail (contained in ~15 lines of code in document.c). For plugins and core it's the API you proposed either way. Then, once GeanyDocument is a GObject, we can switch to its datalist with little changes. Until then we use the ScintillaObjects. Then we don't have to duplicate the glib code now.

Best regards.

Best regards.
_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel

Reply via email to