GTK+ Developers Call For Help To Finish Cross-Platform OpenGL Support 89
jones_supa writes OpenGL support under GTK is getting into good shape for providing a nice, out-of-the-box experience by default on key platforms for the GTK+ 3.16 / GNOME 3.16 release in March. For a few weeks now within mainline GTK+ has been native OpenGL support and as part of that a new GtkGLArea widget for allowing OpenGL drawing within GTK applications. Since that initial work landed, there's been more GTK+ OpenGL code progressing that right now primarily benefits Linux X11 and Wayland users. While good progress is being made and improvements still ongoing to the GNOME toolkit, GNOME developers are requesting help in ensuring other GTK+ backends can benefit from this OpenGL support. If you are using or planning to use GTK+ 3 on Windows or OS X, and you know how to use OpenGL on those two platforms, please consider helping out the GTK+ developers by implementing the GdkGLContext API using WGL and AppleGL.
Re: (Score:3)
Its good to have choice. If there is none, things like heartbleed or winshock can happen.
Re: (Score:3)
Why would someone back the Qt stuff instead of GTK?
Let's face it. Some of us prefer GTK over Qt. Get over yourself and your One True Way, Holier Than Thou attitude. You're free to do it how you like, and I'm free to use what I like. Choice is good. And in this instance, it was appropriate.
Re: (Score:1)
Some of us prefer GTK over Qt.
So then *you* help them out.
I'm a OpenGL/Linux/kernel/lib developer, and there is no way on God's green earth that I will contribute anything to Gnome.
Re: (Score:2)
Get over yourself and your One True Way, Holier Than Thou attitude
Funny, that's my boilerplate response to GNOME these days.
Re: (Score:1)
Bring out the Krita (Score:1)
Re: (Score:2)
Well, I haven't tried it in a few years, but the last time I found it intensely horrible, to the extent that it was unusable. OTOH, for most of what I do I prefer Inkscape over the GIMP.
Re: (Score:2)
Re: (Score:1)
Re: (Score:2)
Because both are in use, and benefiting either is valuable.
This is true even if Qt is better than GTK in all respects.
Re: (Score:2)
Agreed. At least pyGTK is very straight-forward to use, even for someone like me with little GUI programming experience. I can't really speak for QT tough.
Re: (Score:2)
GTK's answer to the Qt's 'MOC' preprocessor is Vala: a whole C#-like language, just for GObject [gnome.org], which compiles to C.
Re: (Score:2)
How about 23 [wikipedia.org]? Look at the gallery for just a sampling.
Re: (Score:1)
The "Name 2" was to "That's not to mention that a lot of people do like Gnome3, but those who don't tend to not acknowledge that they exist." It wasn't saying to Name 2 other DEs.
Re: (Score:2)
Re: (Score:2)
Re:help them (Score:5, Insightful)
Re:help them (Score:5, Insightful)
I fully agree. I like the GTK+ API and I still continue to use it because shifting to another toolkit for my apps would be costly. But I'm loosing patience:
GTK+ development has become an unprofessional mess. Functions get deprecated even with minor version changes: you develop your app with version 3.xx and distribute it. Then people move to 3.yy (where yy>xx) and bang your app does not work anymore because someone decided to *remove* a function from GTK+ without any consideration for existing apps out there. Sometimes the fix involves a new function that does not exist in the previous version of the library, so you can't even find a real fix that would work with all versions from 3.xx and above. You just add some ugly preprocessor macros in your code to deal with different versions of GTK+ at source level...
Re: (Score:3)
An API is not removed just because it's deprecated. It just means that you are discouraged to use that function in new code, and that it *might* be removed in a later version. This is not uncommon in minor versions and you typically wait for a major version until you actually remove them, to preserve ABI compaitibility.
Re: (Score:2)
Yeah. Ususally the only bad thing is some warnings in the terminal that "XX is depreciated"
Re: (Score:2)
Why not use GTK2. That'll teach them lol. At this point it won't go away like Motif and other toolkits?
Re: (Score:2)
I used to professionally develop GTK+ applications in the mid-2000s. It wasn't excellently maintained even then, but nowadays it's woeful. While it's nominally cross-platform the reality is it's always been in a state of partial brokenness on MacOS and Windows. You couldn't ever truly rely on it for cross-platform work.
I moved completely to Qt over the last couple of years. I still prefer the container model of GTK+, but the quality of the Qt toolkit is so much greater that a minor design difference is
Re: (Score:2)
I'm curious about what would be above GTK+3 on the list. Tcl/tk, FLTK 1.3 maybe?
Re: (Score:3)
Difficult to say, it really depends upon the project, language and portability requirements.
Most of my projects are currently in C++ and/or Python. Qt 4.x and 5.x work well here for both on all current platforms (FreeBSD, Linux, MacOSX, Windows) including OpenGL support for all.
GTK+ 3.x is a non-starter. Its repeated breakage and dropping of functionality make it unsuitable for non-GNOME work (and even for GNOME developers it must be painful, as several of them have commented).
GTK+ 2.x might be a possibil
Re: (Score:2)
How abou Swing/Java or JavaFx?
IMHO it beats all the C/C++ stuff, is cross-platform and have a bunch of open and commercial widget libraries. And, with Eclipse or Netbeans, and maven you have much better developing tools that are free, and you don't have to compile anything.
With jogl or JMoneyEngline you can access OpenGL if you need.
Re: (Score:2)
He uses C++ and Python. Why in hell would he stoop to Java? You don't meet many experienced C++ programmers who want to spend their days using Java instead, now, do you?
Re: (Score:2)
You don't meet many people who want to work with tools other than what they're used to, in any field.
Re: (Score:2)
Touche. If I was a web developer working with all those nifty Java class libraries for doing webby things, I wouldn't want to use C++ either.
Re: (Score:2)
They completely passed my mind while writing my reply. While I do have quite a lot of exposure to Java and Swing at work, I'm afraid to say my experience is not hugely positive. For the applications I maintain, the default (metal) look and feel on Linux is awful, though some distributions do replace this. While it certainly does work on all supported platforms, I'd have to say that I do prefer Qt by far, since its native look and feel is almost perfect on all platforms in my experience, and performance a
Re: (Score:2)
I have a very positive opinion of Metal L&F, I use VisualParadigm and FreeMind, both are Java applications. I don't think that the L&F matters as much as people always say. The performance of Java apps is on par with C/C++ and Maven is a huge win, because I can use just any lib that I want and the dependencies are automatically resolved. Much like the package manager on Linux. And that I don't have to compile anything is also a huge win, it's was always a pain to compile C/C++ applications.
Any OpenG
Ob (Score:2, Funny)
Would love to, but I'm busy writing a combined init system, web server & tic-tac-toe engine.
Re: (Score:2)
The only winning move is not to boot.
Re: (Score:2)
Just use SystemD (Score:1)
It does everything
Re: (Score:1)
Not everything. SystemD still lacks a good, stable and easy to use init system.
Re: (Score:3)
WGL and AGL are the Windows and Apple (respectively) are the glue APIs that allow you to setup and work with an OpenGL context and surfaces.
You can't render OpenGL commands using the native drivers without first setting up an OpenGL context with these APIs.
The ignorance here is that you know so little about programming, and OpenGL in particular that you don't realize that AS PART OF THE SPECIFICATION, EVERY OS HAS THESE LAYERS between native windowing system and platform independent OpenGL API.
For X11, you
Re: (Score:1)
WGL and AGL are the Windows and Apple (respectively) are the glue APIs that allow you to setup and work with an OpenGL context and surfaces.
There is no such thing as "AppleGL". There is AppKit which contains classes to set up the OpenGL contexts and surfaces and GLKit for constructing textures, etc.
GNOME toolki? nope GIMP Toolkit (Score:3)
Re: (Score:2)
Well, except that in this case the entire story is that they want help making it work great on non-Gnome platforms.
Re: (Score:1)
gtk2 did... then gnome devs went on a remove fucking everything spree and now noone except the gnome folk wants to use it.
gtk should rename itself to gnome tk and die with gnome.
Re: (Score:1)
is a multi-platform toolkit
Meaning it once supported GNOME 2 and now supports GNOME 3. There was a nice presentation on one of Linus open source projects migrating to Qt since nobody in the Gtk community gave a shit about support in general and Windows support in specific. They put a C++ UI library on top of a pure C code base because Gtk is just that bad an alternative.
Re: (Score:2)
According to the story you just commented on they apparently care quite a lot about cross-platform support since they want people to help them with it.
Re:GNOME toolki? nope GIMP Toolkit (Score:4, Funny)
Actually, GIMP still uses GTK+2.
Patch in progress for Quartz/Mac OS X (Score:2)
thanks. I can only test (Score:1)
Thanks for your work on that. I'm npt familiar with graphics programming at all since my work always uses either a cli or browser-based GUI, but I do have some Macs around for testing and such.
Help Redhat's hostile takeover of Linux? (Score:2, Troll)
No thanks.
These days: Redhat == Microsoft.
I am surprised that more people don't see that.
Qt... (Score:5, Informative)
Need I point out that QT has had cross platform OpenGL support for many years? In QT, this is mature, reliable, well integrated and easy to use.
Re:Qt... (Score:5, Insightful)
Re: (Score:1)
Re: (Score:2)
Does QT use xlib or xcb under the hood on X11 based systems. I ask because I would like to thread applications without worrying about the finicky nature of xlib when threading is involved.
I'm not 100% sure but I think xlib. xcb is mostly dead these days, or so I get that impression. I really wish xcb had more traction but only a few apps need this type of multi-threaded GUI functionality (my app being one of those few) so it seems to get left behind.
Re: (Score:1)
Qt5 uses xcb. The platform plugin for X11 is even called... drumroll... qxcb.
Qt4 uses Xlib.
Re: (Score:2)
I like your .sig
"Those that start by burning books, will end by burning men."
Where is it from?
Sorry GTK (Score:2)
Re: (Score:2)
GNUStep is very interesting, but every time I've tackled it, I've bounced. Sometimes I literally couldn't figure out how to do things, other times it's just that it was too difficult to bother.
They *REALLY* need better documentation. Probably the toolkit is fine. Every time I worked at it long enough I was able to make it do what I wanted, but the documentation is truely terrible. And it needs to be written by someone who already understands the system.
If the GNUStep documentation had been better, I'd p