I would argue that some of the UI toolkits, especially the ones which are cross platform, belong in their own category of abstraction layers. lcl/vcls seem to be switchable to gtk, native, qt, and other, that's very much an abstraction. While goey seems to be more like wxwidgets where it picks on UI library for each platform.