Really great tutorial. I was just a beginner and now I have submitted 4-5 patches in just one week because I have watched this video. I got more insight in GObject's working therefore was able submit patches. Will see you at IRC :)
Christian, This tutorial is absolutely amazing. You know your stuff and are in one of the very small percent of really good teachers out there. I have looked at your other uploads which I also find very interesting! It's also great to see who is making the IDE I use :) If you can and want to spend time making GObject tutorials this would be greatly appreciated by me and as it looks by many other people!
Please, could you create another tutorial on how to use GObject in a more up-to-date way because your last video is 8 years old and I'm having a lot of difficulty getting started with classes, how to let them inherit or don't understand in your video you don't use G_TYPE_CHECK_INSTANCE G_TYPE_CHECK_CLASS, I would like I really understand why it became mandatory to put person_set_property since it was built automatically, I really wanted a video, I can't study the documentation, please I need your help, I really want to understand, thank you very much in advance
Nice tutorial. Looking forward for more such tutorial . Its very difficult for newbies to understand GObject and related contents concept and there were very few tutorial for there help. Thanks a lot ...
Could you make a basic tutorial on how to use GObject showing it extending from another class using super() and showing how to use the types of the class created using macros
Hi Cristian! Thanks for your introduction for writing GObjects, great and relaxed introduction! One note I think you mean to write g_strcmp0(name, self->name) != 0 in the function example_person_set_name. Because otherwise you'll only set the name when they are equal, while you intend to reset the name when they aren't equal.
Could the PROP_NAME have been declared as PROP_NAME=1 in the enum to automatically offset the enum values by one or would that break something? (Also any reason why the offset is apparently not necessary for the signal?) Finally a little bug: your name setter only does something if the names are ... in fact, equal (== 0).
+Johan Ouwerkerk You could very well do PROP_MY_FIRST_PARAM = 1. But we tend to just do PROP_0 everywhere as convention. The offset isn't required for signals because they don't have the requirement that id's be non-zero (like properties do). Historical issue, of course. Thanks for catching the setter issue, I didn't catch it until after production :(
Hi, I'm wondering, apart from googling (and youtubing) how can I get started on programming in c/c++ and gtk?? Is there an IRC channel? Or can I maybe contact you directly? I already know a bit more than the basics of programming and familiar with OOP concepts. I really just want to develop me programming knowledge, and want to start contributing back to the opensource community.
Thanks a lot Chris, just one more question, where are most of the people on that channel from? Just want to know so I can better sync up with the timezone.
Hey! Thanks for the lesson! Learned a lot. I have one question. How can i use these GObjects between multiple files for example - What are methods to access ExamplePerson *self from another source file? Waiting for follow up video! Cant find a lot of info and examples on this, so another video with GTK composite widget templates would be very useful.
Thanks for that nice video. It is sad that Gnome have not a good book about that stuff or even written on some wiki, probably somebody would need to step up to do that. Make it simple for us newbies also. Those videos could be a nice step forward for the gnome-university :) And as last, please try to explain things slowly as sometimes we not natively english speakers do not catch every phrase clearly. Thanks again and very well done Christian !!!!
+Sasa Ostrouska Thanks I'll take the suggestions to heart! Also, there is this tutorial, but I think we could do some cool things with video + chapter material. developer.gnome.org/SubclassGObject/
+Christian Hergert , many thanks ! I think I have ot strugle a bit more on the gnome.org wiki :) But yeah count on me if I can help to put together something better :)