News for hackers. Stuff that matters.
Re:IUP – Cross platform C GUI library by unwind on Thursday May 25, 2023 @03:39AM (#36068036)
This seems to be like the classic wxWidgets [1], i.e. it's an API that wraps the underlying platform's default toolkit. So on Windows it uses Windows' native controls, in Linux it seems to use GTK, and so on.

That means that the advantage is being able to write against one API, and get cross-platform compatibility, which can be nice. It also means (typically) being limited in what you can do to the least common denominator, or you (=the toolkit author) end up having to re-implement features from one platform that you want to expose but that are missing on some supported target(s). Or, of course, have an API with non-portable parts in it.

In any case, it means the "look and feel" is not the core feature of the API since that is going to be "like the target platform" and that is the point.

Given the origin, I guess Lua support is important too, here.

[1]: https://www.wxwidgets.org/

Re:IUP – Cross platform C GUI library by tored on Thursday May 25, 2023 @04:19AM (#36068258)
One big plus for IUP over wxWidgets is that API of IUP is very clean & easy to use compared to the complex C++ API of wxWidgets.
Re:IUP – Cross platform C GUI library by rhdunn on Thursday May 25, 2023 @04:29AM (#36068316)
wxWidgets feels heavily inspired by Microsoft's MFC framework. That always felt clunky to me, compared to GUI toolkits like Qt and GTK.
Re:IUP – Cross platform C GUI library by VZ on Thursday May 25, 2023 @07:46AM (#36069510)
This was indeed the case. In 1995. Since then just about everything has changed, but the idea that wxWidgets is MFC-like still refuses to die... Another common related opinion is that you have to use macros when using wxWidgets, which couldn't be further from truth since ~15 years (see https://wxwidgets.org/blog/2023/05/are-macros-required-to-us...) but, again, old impressions linger.
Re:IUP – Cross platform C GUI library by sirwhinesalot on Thursday May 25, 2023 @10:40AM (#36071313)
I still find examples using the macros all over the place. It is unfortunate that is still the case...
Re:IUP – Cross platform C GUI library by rhdunn on Friday May 26, 2023 @03:03AM (#36080963)
Macros aren't the only thing that make wxWidgets like MFC. Things like using new but not delete on objects. The method and event names. The use of DCs in paint events. Etc.
Re:IUP – Cross platform C GUI library by VZ on Friday May 26, 2023 @08:05AM (#36083005)
Well, there is only so much latitude for naming the event (or message, callback, whatever) sent when a window needs to repaint itself. Qt has `paintEvent()` too and nobody calls it MFC-like AFAIK. IME people mostly think about event table macros when they say it.
Re:IUP – Cross platform C GUI library by kaba0 on Thursday May 25, 2023 @09:00AM (#36070165)
What’s people’s opinion on Eclipse’s SWT? It is probably the most commonly used API that just wraps native controls.
Re:IUP – Cross platform C GUI library by antihero on Thursday May 25, 2023 @10:53AM (#36071471)
Thing is, each OS has its own design language and conventions. Trying to make one UI look and feel great in all of them is doomed to fail and feel awkward in all of them.

So either make a UI for each OS or go your own way and have your own design language.