rhx / SwiftGtk

A Swift wrapper around gtk-3.x and gtk-4.x that is largely auto-generated from gobject-introspection
https://rhx.github.io/SwiftGtk/
BSD 2-Clause "Simplified" License
317 stars 26 forks source link

Implementation of type safe signal wrapper functions #35

Closed mikolasstuchlik closed 2 years ago

mikolasstuchlik commented 3 years ago

There is an ongoing effort to implement type safe wrappers around signals. The implementation is in its early stages. Once the implementation will produce functional code, PRs will be opened at related repositories.

The PR to gir2swift can be found here at the moment.

Any suggestion or advice is welcomed.

mikolasstuchlik commented 3 years ago

I would like to provide status update of the ongoing effort into providing type-safe signal generation.

There is a PR opened inside of my fork of the gir2swift repository. The requires modified implementation of GLib and SwiftGtk due to name conflicts.

The current implementation in the time of writing is able to generate most of the required signals and appropriate strings for those, which could not be generated.

The gir2swift project was somewhat refactored (files were renamed and splitted) because my mac had a hard time keeping the IDE interactive and doing so greatly improved my computers ability to keep the xcode interactive.

What IS implemented

The implementation is able to generated most of the signals. There are still 9 different checks which prohibit signal generation because it would require unimplemented features. Those unimplemented features consists mainly of:

I will publish a demo project in the near future.

I plan on merging my forks into main repositories, but at this time, my main focus is to have working implementation for Swift 5.3 @ Ubuntu 20.04.

rhx commented 2 years ago

This has been merged into main now.