jeremyletang / rgtk

GTK+ bindings and wrappers for Rust (DEPRECATED SEE https://github.com/rust-gnome )
GNU Lesser General Public License v3.0
120 stars 22 forks source link

Move the low level bindings into separate crates #199

Closed gkoz closed 9 years ago

gkoz commented 9 years ago

This isn't polished yet and may be buggy but at least it builds.

GuillaumeGomez commented 9 years ago

Very nice work on that. I wait @jeremyletang's confirmation to merge it.

gkoz commented 9 years ago

I'll look it over once more then to try and catch silly mistakes and oversights.

GuillaumeGomez commented 9 years ago

Ok ! Notify us when it's done then.

gkoz commented 9 years ago

I've cleaned it up. Please review.

GuillaumeGomez commented 9 years ago

Fine for me. @jeremyletang ?

gkoz commented 9 years ago

Added two more commits that move higher-level functionality out of the sys crates.

GuillaumeGomez commented 9 years ago

Once again, good job ! @jeremyletang ?

gkoz commented 9 years ago

Maybe glib-sys should as well be glib2-sys...

GuillaumeGomez commented 9 years ago

Well, I didn't find the gtk3-sys that good actually... Why not justkeeping gtk-sys and glib-sys ?

gkoz commented 9 years ago

Because libgtk2 is still a thing and there is software built against it and the GTK docs prominently designate the current version as GTK+ 3. It also seems in a poor taste to put out a crate "xxx" if it only supports a subset of widely available "libxxx" versions. Apparently glib 1.2 is still around too although confusion is less likely.

oakes commented 9 years ago

Is this still on track to be merged? Looks like there are conflicts now. I'm excited for this, because I'd love to add support for libvte as a separate crate.

GuillaumeGomez commented 9 years ago

It is. I was waiting for @jeremyletang's opinion but I guess I'll have to do without it... Can you update your PR @gkoz, please ?

gkoz commented 9 years ago

Rebased. Travis is affected by the broken nightly from yesterday right now.

GuillaumeGomez commented 9 years ago

Weird bug... At least, I'll wait for it to be solved.

oakes commented 9 years ago

It looks like Travis still has the rust version with the broken cargo.

gkoz commented 9 years ago

Travis is probably going to get stuck on *mut cairo::ffi::cairo_rectangle_list_t being !Send now which is unrelated to this change. BTW, why did nobody tell me there needs to be a cairo-sys? ;)

GuillaumeGomez commented 9 years ago

I thought it was. I didn't pay enough attention, my bad.

gkoz commented 9 years ago

I think it's ready.

GuillaumeGomez commented 9 years ago

Very impressive work. I merge it. Thanks !

oakes commented 9 years ago

Great work! It turns out I can't create a separate crate for my vte stuff, because you can't use macros across crate boundaries (I use struct_Widget, check_pointer, etc). So, I'll keep it in my fork until I figure out a solution to that.

gkoz commented 9 years ago

@oakes Here's my current model for moving forward with the wrappers and casts reform if you're interested: https://github.com/gkoz/rgtk/tree/convert/gtk3 There's a half-working basic example (signals aren't there yet). If we managed to add the new stuff to 'upstream' glib it might be possible to build your new crate on top of new abstractions.