Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Progress #2

Open
35 of 46 tasks
diamondburned opened this issue May 6, 2021 · 4 comments
Open
35 of 46 tasks

Progress #2

diamondburned opened this issue May 6, 2021 · 4 comments
Assignees
Labels
tracking Progress tracking issues

Comments

@diamondburned
Copy link
Owner

diamondburned commented May 6, 2021

This issue keeps track of what's accomplished in the repository.

  • Types and signatures
    • Arrays
    • Enums
    • Functions
      • Signatures
        • No missing types
        • Boxed pointer types with interface{}
      • Implementation (see "Type resolver and converter")
    • Callback
    • Structs (records)
      • Type
      • Methods
    • Classes
      • Methods
    • Interfaces
      • Methods (as functions)
      • Virtual methods (as the interface body)
    • Add all missing types (as PRs to gotk3/glib)
      • glib.Parameter
      • glib.ParamSpec
      • glib.Callback
  • Type resolver and converter
    • Type resolver
      • Array type resolver
    • Type converter
      • Arrays
        • 1-level deep
        • Infinite recursion
        • GArray (can preallocate)
        • Null-terminated
      • Types
        • Custom GLib types
          • GType
          • GValue
          • GObject
          • GInitiallyUnowned
          • GCallback
        • Enums and Bitfields
        • Aliases
        • Callbacks and Functions
          • CGo signature headers (extern)
          • Base wraps
          • Destroy notifiers
        • Classes and Records
          • Base conversions (glib.Take and copying record fields)
          • Wrap function and parent wrap resolver
          • Memory management (ownership)

Current package list:

  • atk
  • gdk
  • gdkpixbuf
  • gdkpixdata
  • gdkwayland
  • gdkx11
  • gio
  • glib
  • gobject
  • graphene
  • gsk
  • gtk
  • pango
  • pangocairo
@firelizzard18
Copy link

Is this something you'd like help with?

@diamondburned
Copy link
Owner Author

diamondburned commented Jun 5, 2021

Is this something you'd like help with?

Oh definitely, though the code is kind of all over the place right now, and priority isn't clearly defined enough for collaboration, but the code base is far from being done.

Right now, I'm working on adding proper allocation support into the code and then build it, then see how far that takes me.

As far as missing things go, when you go generate the root directory, there will be lots of logs printing what is skipped and why, so I think that's a good place to start.

P/S: the type conversion routine is incomplete; I commented them out because I wanted to properly reuse the conversion process for the destination type, but that would require some extra tinkering. I'll leave it commented out for now (so the code that needs them are skipped) because they're low priority, but you're more than welcomed to give it a shot.

@diamondburned
Copy link
Owner Author

As a sidenote, I've went ahead and made a contributing guideline over at CONTRIBUTING.md.

@firelizzard18
Copy link

I was thinking of using Vulcan, which was the primary driver for my interest in GTK4. I've since decided to stick with OpenGL, though I am still interested in helping with this, if I have the time.

@diamondburned diamondburned added the tracking Progress tracking issues label Jun 20, 2021
@diamondburned diamondburned unpinned this issue Oct 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tracking Progress tracking issues
Projects
None yet
Development

No branches or pull requests

2 participants