jhx,
@jhx@fosstodon.org avatar

What is your cross platform toolkit of choice?

I target and (10/11)
( )

Saw that would fit the bill 🙂 (From what I read)

Looking for some experiences 🙂

Languages: #C++

Note: For I use or

CGM,
@CGM@mastodon.scot avatar

@jhx My cross platform #GUI toolkit of choice?

Tk of course - https://tkdocs.com/index.html - I use it from Tcl, but other language bindings are available, and Tcl interoperates easily with C. I often also add Tktreectrl - https://tktreectrl.sourceforge.net/ - for tree and tabular data display.

#programming #tcltk

cuddle,
@cuddle@bsd.cafe avatar

@jhx here's the wiki: https://en.wikipedia.org/wiki/List_of_widget_toolkits

It's quite large but comprehensive

mennodeij,

@jhx with #csharp you should check Eto https://github.com/picoe/eto
Works very well in my experience as a platform-agnostic wrapper for WPF, Gtk3 and Cocoa. Also does mobile, but I have not used that.

deadbeefmonster,

@jhx Qt is by far the best portable library for GUI stuff, and their non-GUI stuff is also stellar. It’s a big step above everything else.

trebach,
@trebach@functional.cafe avatar

@jhx This is from about 15 years ago in Java, but GTK via GTKmm.

It did a good job rendering a GUI provided you use the elements they already provide in GTK, but I used it mainly because we all knew C++ already. We used it again later once one member of said team burned us and we realized he didn't know C++ so he was relegated to the other team that was using Java

blaue_Fledermaus,
@blaue_Fledermaus@mstdn.io avatar

@jhx
If you have experience with , I would suggest taking a look at

gnutelephony,

@jhx My primary experience had been with Qt, which has become monstrous and dumb over time. Since it is Qt widgets I care about, and the Qt company constantly seems to very much want to deprecate them, WxWidgets may well be a better long-term choice. That does not do anything for mobile, but I cannot see well enough to use my phone for ui anyway anymore. I do have some Qt projects still in active development, though.

jhx,
@jhx@fosstodon.org avatar

@gnutelephony
Thanks for the input! 🙂

zirias,

@jhx So far I went with #Qt. Even though I kind of hate C++ (and use good old C instead whenever possible), Qt was a good reason to use C++ for the "GUI layer" (and you can easily dodge the IMHO worst missfeature, exceptions).

My experience was, it offers an object model that actually makes sense (to me), it covers a lot more besides only GUI (like e.g. sockets), it's flexible (e.g. leaving you the choice between declarative GUI descriptions or programmatic constructions and both work fine and feel sane), static linking and cross-building (#FreeBSD build machine building both #Linux and #Windows binaries) were doable without too much trouble ...

But, this experience is several years old by now. Gotta try to move one of my projects from #Qt5 to #Qt6 soon 😉

jhx,
@jhx@fosstodon.org avatar

@zirias
Will look into it 😉

zirias,

@jhx It's a bit "special" because it extends the C++ language with its "signals and slots" concept. But IMHO, this is a very nice extension, offering a flexible model for event-driven architectures. You'll need an extra "precompiler" called "moc" (meta-object-compiler) for any class making use of it.

cuddle,
@cuddle@bsd.cafe avatar

@jhx there's plenty, GTK+, Qt, imgui, FLTK etc.

All of them are good for (C++). There are also bindings for them for Go and Python. FLTK is less popular so there's not much out there right now!

For cross-platform, I'll recommend imgui. It's less bloated compared to GTK+, and Qt (and also less hassle to recompile from source).

jhx,
@jhx@fosstodon.org avatar

@cuddle
Thanks for the tips! 🙂

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux
  • DreamBathrooms
  • everett
  • InstantRegret
  • magazineikmin
  • thenastyranch
  • rosin
  • Durango
  • ethstaker
  • Youngstown
  • slotface
  • khanakhh
  • kavyap
  • ngwrru68w68
  • osvaldo12
  • JUstTest
  • tacticalgear
  • cubers
  • cisconetworking
  • anitta
  • provamag3
  • modclub
  • mdbf
  • GTA5RPClips
  • tester
  • megavids
  • normalnudes
  • Leos
  • lostlight
  • All magazines