Libui: GUI library in C
61–70 of 186 posts
Re: Libui: GUI library in C
#62Earlier quoted context omitted.
> I was recently thinking that operating systems should ditch their custom desktops in favor of a browser based UI. Why? > it still seems to me that a browser based OS UI would be far more effective than things like Gnome and KDE and all that stuff. How so? My needs haven't changed. I still need a UI that provides a searchable launch menu, some quick-launch buttons, window management, etc. Rendering a bunch of things…
>>Why? Because somehow websites end up (can end up) looking great, but all those Linux desktops look shit. Things don't line up, the margins and spacing are wrong. It looks like it's made from a set of ill fitting phony knockoff lego bits that don't fit together. If web browsers make it possible to design slick interfaces then the Linux desktop folks should get onto that quick smart. Having said that, I guess that's…
Re: Libui: GUI library in C
#63Very interesting indeed. It supports MacOS X which is a nice addition to my other favorite, the IUP. http://webserver2.tecgraf.puc-rio.br/iup/
Yes, IUP would have been the killer toolkit if it only supported OSX. I love the IUP API in both C and Lua.
The best hope so far is probably what's described in this email: http://lua-users.org/lists/lua-l/2016-03/msg00019.html
Re: Libui: GUI library in C
#64Earlier quoted context omitted.
> I was recently thinking that operating systems should ditch their custom desktops in favor of a browser based UI. Why? > it still seems to me that a browser based OS UI would be far more effective than things like Gnome and KDE and all that stuff. How so? My needs haven't changed. I still need a UI that provides a searchable launch menu, some quick-launch buttons, window management, etc. Rendering a bunch of things…
>>Why? Because somehow websites end up (can end up) looking great, but all those Linux desktops look shit. Things don't line up, the margins and spacing are wrong. It looks like it's made from a set of ill fitting phony knockoff lego bits that don't fit together. If web browsers make it possible to design slick interfaces then the Linux desktop folks should get onto that quick smart. Having said that, I guess that's…
To me, the web is for goofing off. It's where I'll read an article, post some comments somewhere, and leave. The desktop's where I get things done. I like Mate's interface (ditched Gnome at 3.x because I didn't like the new direction). KDE isn't terrible, but I feel like it gets in my way a little bit more.
> It looks like it's made from a set of ill fitting phony knockoff lego bits that don't fit together.
I remember when I would've described Linux desktops like that (about 15 years ago). You can still replicate that if you get too creative with your choice of themes and such, but I haven't found it distracting to what I use my computers for in....well, close to the last decade. Then again, I'm not a designer, so I tend not to notice or be bothered by some things that'd throw others into fits.
> Having said that, I guess that's what ChromeOS is eh?
It's neutered Linux. It's pretty enough, I suppose.
Re: Libui: GUI library in C
#65In addition to all the standard controls, it's also got OpenGL and browser embedding since before Electron was cool.
Using it on the JVM is very easy, but there was a short-lived attempt to maintain a C++ API.
- How it looks: https://www.eclipse.org/swt/
- From Jython: https://github.com/danathughes/jythonSWT
- From JRuby: https://github.com/neelance/swt4ruby
- From C++ (defunct): http://www.pure-native.com/
It's built out of small chunks of C code: https://github.com/eclipse/eclipse.platform.swt/search?p=1&q... that are wrapped in a Java API with a straightforward coding style that seems amenable to automatic source translation. And it doesn't need GC - it actually requires the Java programmer to manually dispose resources, which is easy because it always requires objects to have a parent, so everything goes away when the pane / window / whatever gets disposed.
Re: Libui: GUI library in C
#66I was recently thinking that operating systems should ditch their custom desktops in favor of a browser based UI. Microsoft tried this idea out and it didn't work a few years back but it still seems to me that a browser based OS UI would be far more effective than things like Gnome and KDE and all that stuff. Edit: well I guess Google had the same idea long ago and called it ChromeOS - browser as OS interface.
Here's the really funny thing though, if you just think about it for a second:
Whether browsers become as powerful as operating systems, or operating systems become as convenient (for users and developers) as browsers,
The end result will be exactly the same.
Yep. Consider how we use browsers vs. native apps right now:
- I can open a browser and say type twitter.com and get the exact same experience on ANY device, right away, along with all my data. This is good.
or
- IF a native app is available, I have to download it first, and then, I just have to launch that app directly every time I want to use it. I get a far more responsive UI, better integration into the rest of the operating system, and the native app can support more offline capability than it could if it was running in a browser. This is good too.
Now obviously what browsers are missing is the UI responsiveness, efficient hardware performance, and OS integration.
What native apps are missing is the convenience of typing in a web address, and they're more difficult for developers to provide the same experience on every OS.
Where we stand right now, it will take WAY more work to get web apps on the same level as native apps. Lots of wheels to reinvent.
It will take far less work to make the discoverability and acquisition of native apps as convenient as typing in a web address. So why not work towards that instead?
Re: Libui: GUI library in C
#67Earlier quoted context omitted.
> I was recently thinking that operating systems should ditch their custom desktops in favor of a browser based UI. Why? > it still seems to me that a browser based OS UI would be far more effective than things like Gnome and KDE and all that stuff. How so? My needs haven't changed. I still need a UI that provides a searchable launch menu, some quick-launch buttons, window management, etc. Rendering a bunch of things…
because we're on the topic of cross-platform UI frameworks.
Still, taken as a given: Linux desktop design could use some work. Or at least the themes and icon sets.
Re: Libui: GUI library in C
#68Earlier quoted context omitted.
How so? The likely reason is that a C lib is usable from many other environments. Look at ncurses for example. Heavily used from many languages, and written in C. Another reason is that the underlying tools used by this library are likely in C as well, so it's probably the easiest language to use for the task.
Ok, but my question was not about FFI, but writing a GUI app...
Re: Libui: GUI library in C
#69This is a very good approach for the current times! As far as I understand from the source code, libui is a thin C wrapper that makes calls to each platform native ui framework. For instance, to create a window on OSX it calls the corresponding Cocoa function, for Linux the corresponding GTK function, etc. So, unlike Qt and GTK which are heavy cross-platform libraries because they can "draw" their own widgets themsel…
Re: Libui: GUI library in C
#70Earlier quoted context omitted.
This is not the same approach. Wxwidget is C++ which makes binding to other languages cumbersome. The same applies also to TK which is binded trough an embedded TCL interpreter.
Also TK doesn't offer native looks. Wx tries, though I'm not sure how good taking into account all platforms.