[HN Gopher] Microui+fenster=Small GUI
       ___________________________________________________________________
        
       Microui+fenster=Small GUI
        
       Author : surprisetalk
       Score  : 188 points
       Date   : 2024-09-08 00:55 UTC (22 hours ago)
        
 (HTM) web link (bernsteinbear.com)
 (TXT) w3m dump (bernsteinbear.com)
        
       | ezekielmudd wrote:
       | I like it! Bravo!
        
       | rwbt wrote:
       | It uses Microui lib written by rxi. Checkout other single header
       | only C libs written by rxi[0]. They're really elegant C in my
       | view. [0] - https://github.com/rxi
        
         | 01HNNWZ0MV43FF wrote:
         | Oh I knew him from ludum dare
        
       | zamadatix wrote:
       | This is great, particular the fenster side which is truly about
       | as "If you remember Borland BGI or drawing things in QBASIC or
       | INT 10h- you know what I mean" as I've ever seen for cross
       | platform C.
       | 
       | Microui seems very cool as well but not in a "the comments
       | section is very often longer than this code" sense. Still, I'll
       | definitely be poking around with this a bit more for the novelty.
        
       | strlenf wrote:
       | You probably want to use simd-optimized pixman[1] for rendering
       | rectangles and glyphs. There is also luigi[2] which draws without
       | opengl and written in C.
       | 
       | [1] https://github.com/freedesktop/pixman [2]
       | https://github.com/nakst/luigi
        
         | freeCandy wrote:
         | the pixman link isn't working
        
           | sp1rit wrote:
           | Upstream is https://gitlab.freedesktop.org/pixman/pixman
        
           | rys wrote:
           | https://gitlab.freedesktop.org/pixman/pixman
        
       | zem wrote:
       | love it :) next step, some tiny scripting language bindings? s7
       | would fit in well e.g.
       | https://ccrma.stanford.edu/software/snd/snd/s7.html
        
         | HexDecOctBin wrote:
         | Does s7 allows for REPL-driven programming? That's the only
         | thing missing from the Lua VM that can't be implemented as a
         | library. An embedded Lisp that supports a true REPL would be a
         | god-send.
        
           | danbreuer wrote:
           | Yes, it seems to be possible to use it in Emacs like any
           | other Scheme [0].
           | 
           | Not sure how these facilities compare to Slime + Common Lisp.
           | 
           | [0]: https://ccrma.stanford.edu/software/snd/snd/s7.html#repl
        
           | npsimons wrote:
           | > An embedded Lisp that supports a true REPL would be a god-
           | send.
           | 
           | I might be misunderstanding your requirements; "embedded" can
           | mean so many things these days. But what do you think of ECL
           | (https://ecl.common-lisp.dev/main.html)?
        
         | tekknolagi wrote:
         | Or PocketPy Or fe
        
       | jll29 wrote:
       | Such boilerfree graphics is important, for example for
       | educational purpose where you don't want to be distracted by
       | having to explain what an "allocator" or a "handle" are.
       | 
       | Also, to keep the core drawing code short so that it can be fully
       | listed on a blog post or in a print magazine.
       | 
       | What I liked is is a self-sufficient set of files that compile
       | immediately without any dependency issues (even on the Mac).
       | There should be more work like that:
       | 
       | - making it even easier to use
       | 
       | - making it simpler and simpler
       | 
       | - making it faster
       | 
       | - making the library footprint smaller
       | 
       | Thanks!
        
       | a1o wrote:
       | This is great for some things, is there something small like
       | fenster but written in C?
       | 
       | Or is it just the header there? I see there is both a Cpp and a
       | Go file there too, so I am a bit unsure which does what.
        
         | tekknolagi wrote:
         | Fenster is written in C and has an optional C++ wrapper (it's
         | all in the file)
        
       | mark_l_watson wrote:
       | Very cool project. I followed some link's to Max's personal web
       | site: a renaissance man!
       | 
       | Many decades ago when I worked on a C++ team we hired very smart
       | but not C++ guru employees. I wrote a portable graphics library
       | so team members could write X11 apps without learning details
       | that domain experts really didn't need to learn. With my
       | company's permission, I rewrote that code on my own time and
       | added support for Mac, and Windows. That code became the two
       | editions of my Portable GUIs with C++ books for McGraw-Hill.
       | 
       | Sorry to rant so much off topic, but mostly being retired now I
       | have been thinking of getting back into C++ (I usually use Lisp
       | languages and Python now). I think this very cool project will be
       | the start of a few very fun days of playing with C++ again.
        
         | tomcam wrote:
         | I loved your books. Very clearly written with complete, usable
         | examples. Models of their kind. I remember very well going into
         | Barnes & Noble and sitting there with the books for a couple of
         | hours before buying them, because it was on my own nickel and
         | books have never been cheap.
        
       | Esras wrote:
       | Cool project! Graphics programming is _hard_ and anything to make
       | it easier is welcome.
       | 
       | Maybe a dumb question, but why not Dear ImGui
       | (https://github.com/ocornut/imgui). "It's way too big and
       | complex" is a completely reasonable answer, but I found it
       | fantastic for debug menus, and there are a few applications that
       | have used it as their _main_ GUI (Ship of Harkinian as an
       | example).
       | 
       | (Edit for fixing the name of the project)
        
         | tekknolagi wrote:
         | I originally wanted to port dear imgui to fenster but that
         | looked difficult and microui already had a _very_
         | straightforward little bytecode to implement
        
       | icar wrote:
       | I wonder if they could add Wayland...
        
         | tekknolagi wrote:
         | Probably yes, but it wouldn't be upstreamable into fenster. A
         | Wayland impl would at least double the size. I'm vaguely
         | looking into it anyway. Feel free to file an issue
        
       ___________________________________________________________________
       (page generated 2024-09-08 23:01 UTC)