What's your favorite GUI API and why?

What's your favorite GUI API and why?
Gtk+? Qt? Fltk? Tk?

Other urls found in this thread:

sourceforge.net/projects/tvision/
sourceforge.net/projects/twin/
sourceforge.net/projects/vwm/
wiki.gnome.org/Valgrind
doc.qt.io/qt-5/qtmodules.html
github.com/vurtun/nuklear
github.com/vurtun/nuklear/tree/master/demo
github.com/vurtun/nuklear/blob/master/demo/x11_rawfb/main.c
github.com/vurtun/nuklear/blob/master/demo/sdl_opengl2/main.c
twitter.com/AnonBabble

ncurses

...

Because I'm a 1337 h4x0r and do everything in the terminal

Me too but sometimes I need more graphix and pixels than a 24x80 terminal can afford.

For when you want a GUI but at really really shit resolution. Ncurses is just for larping.

ed is underrated tbh

Standard Input because shit thread

/thread

I use ECMA-48 with libraries I wrote myself, because everything else is too damn complicated.

I never even gave Ncurses more than a short glance. There's too many strange quirks there as well. I don't need support for terminals that no longer exist.

The only unfortunate aspect is testing programs across many terminals to make certain they all support the subset of ECMA-48 you use.

I don't understand. stdin is not an API. It's a read-only FILE* wrapper around file descriptor 0. Being read-only there's no way to do output using only standard input.

obv he also means stderr stdout faggot

exec file, faggot

DRM-KMS framebuffer. all those "widget tooklits" are fuckin aids. everything should be rewritten

Electron
datamine thread

The Borland TUI is my favorite, but not very well supported in modern OS. There's a couple old related projects on sourceforge, but no idea if they even build anymore.
sourceforge.net/projects/tvision/
sourceforge.net/projects/twin/
sourceforge.net/projects/vwm/

Attached: tvQNX-pterm-photon.jpg (654x435, 133.92K)

python3 with tk feels bloated in terms of how much ram is required to run a simple GUI. Anyone know if it is python3 or the tk modules/library sponging up the ram?

Would reprogramming the gui process in C & Qt be the easiest on ram usage? Or maybe some other combination?
C & Gtk maybe? Not enough personal experience to know which language & GUI API will request in a minimal process using tiny ram and low cpu.

Advice appreciated.

GTK+3. Qt and KDE are bloats.

Not knowing what your program is doing I can't say.
If you go C then Gtk+ is about your only option.
If you're using C++ or Python then either is about the same and mostly depends on preference and licensing. I have trouble picking between them myself usually. I'd suggest gtkmm over Gtk+ if you're using C++.
If all you need is a simple light functional GUI in C++ then maybe FLTK. It can look like butt sometimes but it's not as bad as tk imo.
I'd say that FLTK is the lighter and easiest to learn. fliud (the UI designer) is well made and spurts out regular C++. glade and designer generate xml that has to be processed at runtime but it's portable to whatever language you're using.


I used to think that too, but then I started writing Qt when GTK+3 came out and it later started doing things that annoy me.
I'll agree that KDE is just bloaty garbage but so is GNOME (every version). But Qt != KDE && Gtk+ != GNOME.
I still write Gtk mostly though but that may change.

Thoughts on wxWidgets?

rio

GTK is Gnome. QT is bloated as fuck you need like 2GB of space to install it.

Because it's as much GUI as can be needed, and no more. Anything more is therefore pure bloat, and even curses can be bloat for many applications.

Kek'd
Btw, CIA thread

Attached: 1539161720552.png (354x504, 61.94K)

It's always hilarious when dilettantes claim that ncurses is minimal. Eat a shoe nigger.

I have written a library in C and I want a GUI that's just a thin wrapper around the library. The library does all the heavy lifting, the new code would just be writing the GUI and hooking it up to the library.

What is my best choice for a GUI framework. I want something that supports drag&dropping a file into the GUI to get its file path, and dragging&dropping a file out of the gui onto the desktop or into a file manager.

your going to get fucked into using Gtk, just get used to it
also enjoy rewriting all your code from C to GTK/C

in reality though use gtk but keep your library completely seperate from anything that is infected with gtk

if you want to test with valgrind/memcheck or whatever you'll have fun with gtk
wiki.gnome.org/Valgrind

gtk throws constant memory leak errors and gnome's response is just suppress the errors, but the suppression garbage they give you only suppresses 25% so have fun digging through a sea of gnome memory leak errors to find yours.

TBH because of shit like this QT is the only viable native GUI API around these days. And that's only because they have commercial licenses bringing in a shit ton of money.

Qt is 10x as much bloat as Gtk is (and Gtk loves the bloat) and it's only C++, you can't use it from C.

Is ncurses still the best for text interface programming?

Attached: 1539589737248.jpg (900x820, 139.26K)

If by bloat you mean works then yes it does. Don't mix the 350 pound body builder for the 350 pound land whale. You faggots think byte count is what bloat is.

It's not even standard C++. A precompilation step is required.

okay bud

If you're going to compare evils I'd say C macro abuse is way more evil than machine generated code.


That's like saying NSPR is Firefox.
Where are you getting that number. I'm seeing nothing close to that.


Sure you can. I've called C++/Qt from Go using C wrappers as a go-between. I mostly wanted to see what would be involved

bootstrap and jquery
the future is web everywhere
"native" apps can just be web apps in wrappers like electron
I unironically like web frontend development over boomer shit like Qt or GTK+ because it's much easier to make what you want
the only issue is performance

That's a pretty big fucking issue

some things require really high performance (games, 3D graphics, video rendering, etc)

some things do not, because they aren't very computationally-intensive to begin with, so slight performance degradation doesn't matter that much, especially when processors continue to get faster

at this point, it's important to save developer time, not just CPU time

You are a cancer. You are the reason why everything is slowing down. 1 hour of developer time "saved" could mean months of user time wasted, directly or indirectly.

Attached: tmp_3311-c0175aef8c0cf917635381648a17195037c8bfe71d343747831c7ff4752dd8ca1425695352.png (923x767, 338.49K)

Users don't give a fuck. Developer time is expensive as hell. If users actually cared they would use non bloated shit (that has no features).

By bloat I mean feature bloat. Qt is more than GUI, it's fucking everything. Look at retroshare, and look at retroshare's shitty performance and memory leaks.

It's because they went balls deep into Qt.
I mean look at this shit
doc.qt.io/qt-5/qtmodules.html
networking, 3d, bluetooth, dbus, gamepad, nfc, javascript, webengine, SQL, threads

I guess it's cool to just use one mega library that does everything you could ever need ever, but i doubt it's the most efficient thing.

retroshare does this and it runs like shit.

...

nuklear
Pure ANSI C. Just one header file. Beautiful results.

QT, wxWidgets and all the others can go suck a big fat dick.

glorious it looks perfect, now if only a single program used it

BGI, only I can program it at the company. Everyone has to come to me for help and nobody has really much documentation for it because I stole it all early on and keep it all at home.

...

looks awesome thanks for the suggestion
github.com/vurtun/nuklear

the screenshot's they are presenting seem to suggest some call of duty game used it for the menu (3rd pic)

Attached: gaymes.png (1800x600 105.6 KB, 170.04K)

Have only good experiences with it.
Stop tripping. That's a demo screenshot to show how UI customizing might mimic games, it didn't get used by any call of duty.

lol dropped

The reason I'm not using imGUI,
nuklear is pure ANSI C

I'm on the JVM for a lot of things and use Swing for a ton of stuff. It's rather annoying that it can never quite look consistent on different platforms, even when you tweak it like crazy. I'll be trying JavaFX in future projects.

I was going to use Nuklear and as I was inspecting it I learned it doesn't do any actual drawing. It's just a useless event manager.

IT DOES draw things for you. You just have to give it a way to push the triangles to your screen. This makes it generic over many different rendering frameworks. It's like rendering to a jpg and then displaying rendering.

In the demofiles is a .h file for many backends.
You can let opengl render you desktop app, directx, GDI or whatever.

That's the point. it doesn't lock you into a way to render.
You can use many different backends, which are all included

i'm looking through these
github.com/vurtun/nuklear/tree/master/demo
none of these seem to be unified at all. it's like your doing it all from scratch
it's cool that it's all included but it's definitely not "just pick a renderer" and include a header. you need to know what your doing with all of these different renderers
look at
github.com/vurtun/nuklear/blob/master/demo/x11_rawfb/main.c
and then look at
github.com/vurtun/nuklear/blob/master/demo/sdl_opengl2/main.c

i guess once you get one going it's not that big of a deal. it's not like you need to be able to switch between all of these.

electron

I realize that was probably bait, but just in case. There are legitimate arguments for and against desktop-ifying web apps, but Electron is a pre-alpha-quality jokeware.


Please consider suicide

I never heard of that toolkit he's talking about, but X doesn't even have any native widgets unless you count Athena. Everything else is an add-on, and frankly I don't like most of them, and especially not the bloated Gtk/Qt shits that got shoved everywhere by desktop environment shits.

I like JavaFX

If the choise scares you, there is nuklear+ (spoken as nuklear cross),
that's a simple wrapper to get the same code running on *nix, macos or windows.
That abstracts all the boilerplate away

We ever going to see a resurgence of non-rectangular guis?

Attached: 18-11-05_04-30-23.jpg (901x785 48.95 KB, 426.28K)

blobby GUIs were a thing as a novelty to show off a sort of sense of artistic liberty with regards to window design "look guys we're not just for boring office guys anymore!"
Now it just looks dated because the novelty wore off after a decade.

So what happens when the guy who set his bios splash screen to furry porn gives away his old computer to a relative and forgot about that customization feature?

Why would anybody even set their splash screen to anything other than default? What a useless feature

only on non-rectangular screens, such as smart watches

Xlib