Live data from Hacker News

Photon Micro GUI

cycfi.com

11–20 of 127 posts

Re: Photon Micro GUI

#11
post #6

Earlier quoted context omitted.

True, you could write a new Qt control. Then you hit the second requirement: complete bitmap theming, many times of a skeuomorphic kind. This is extremely difficult to do in something like Gtk/Qt.

Behold, in all its skeuomorphic glory, the Qt styles example: https://doc.qt.io/qt-5/qtwidgets-widgets-styles-example.html

That looks almost exactly like Motif from 1991, but superimposed with a wood grain pattern.

Re: Photon Micro GUI

#12

Funny how there are a few domains where the same problem is solved over and over again. Probably an indication that a good solution is truly missing. A long time ago I wrote a tiny audio synth. And yep, I wrote my own minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. Now I'm working on a non-audio webapp, and I have a problem where a knob would be the ide…

> minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide.

They don't provide knobs because they're a bad idea for input. Holding mousedown while drawing an invisible arc with the cursor is an awkward way to change a value. Sliders are generally better but still not great on interfaces with cursors (they're better on touchscreens). Skeuomorphism can be a useful visual design cue but it needs to be secondary to the input capabilities of the device.

Up and down arrow buttons(or plus/minus, or whatever makes sense for the value) are very compact and operable with a variety of input methods. Buttons need a way display the value but there are many options including putting them in the center of a ring of numbers like a knob would use.

Re: Photon Micro GUI

#14
post #12

Funny how there are a few domains where the same problem is solved over and over again. Probably an indication that a good solution is truly missing. A long time ago I wrote a tiny audio synth. And yep, I wrote my own minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. Now I'm working on a non-audio webapp, and I have a problem where a knob would be the ide…

> minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. They don't provide knobs because they're a bad idea for input. Holding mousedown while drawing an invisible arc with the cursor is an awkward way to change a value. Sliders are generally better but still not great on interfaces with cursors (they're better on touchscreens). Skeuomorphism can be a useful…

In a good knob it’s not an arc but just clicking and dragging straight up or down that makes it move. A lot of VST audio plugins work like this and they get a lot of controls into a small area like this.

Re: Photon Micro GUI

#15
post #13

Nice screenshots; but doesn't seem "FFI friendly", unfortunately.

what does that mean? a google search proved fruitless

I assume they mean "Foreign Function Interface" this is a modern C++ code base, and hence can not be easily wrapped in a C function pointer for consumption by non-C++ languages.

Re: Photon Micro GUI

#16
post #13

Nice screenshots; but doesn't seem "FFI friendly", unfortunately.

what does that mean? a google search proved fruitless

FFI = foreign function interface[0], a way to call functions written in one language (generally C) from another. By "FFI friendly" I think the parent meant that Photon Micro GUI isn't something you can easily use from languages other than C++.

[0]: https://en.wikipedia.org/wiki/Foreign_function_interface

Re: Photon Micro GUI

#17
post #12

Funny how there are a few domains where the same problem is solved over and over again. Probably an indication that a good solution is truly missing. A long time ago I wrote a tiny audio synth. And yep, I wrote my own minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. Now I'm working on a non-audio webapp, and I have a problem where a knob would be the ide…

> minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. They don't provide knobs because they're a bad idea for input. Holding mousedown while drawing an invisible arc with the cursor is an awkward way to change a value. Sliders are generally better but still not great on interfaces with cursors (they're better on touchscreens). Skeuomorphism can be a useful…

> They don't provide knobs because they're a bad idea for input

I like knobs because the distance from the center of that control (radius of your arc movement) can be a “fineness” or “coarseness” control. I think sliders don’t usually offer this.

Re: Photon Micro GUI

#18
post #8

From the author "Photon has its own HTML5 inspired canvas drawing engine using Cairo underneath". That means it should render nicely at any resolution, the author says, "resolution independent and allows for HDPI displays". But using Cairo means it should not have a good performance at high resolutions. I have yet to find a fork of Cairo GPU accelerated that supports all the API. So it may fit the bill if you are cod…

I'm curious if you have come across (and recommend) any framework which lie in between Photon (Cairo) and Dear ImGui.

I'm trying to follow all thr efforts in native desktop GUI tools and am currently using Dear ImGui for something which will only be used internally.

Re: Photon Micro GUI

#19
post #17
post #12

Earlier quoted context omitted.

> minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. They don't provide knobs because they're a bad idea for input. Holding mousedown while drawing an invisible arc with the cursor is an awkward way to change a value. Sliders are generally better but still not great on interfaces with cursors (they're better on touchscreens). Skeuomorphism can be a useful…

> They don't provide knobs because they're a bad idea for input I like knobs because the distance from the center of that control (radius of your arc movement) can be a “fineness” or “coarseness” control. I think sliders don’t usually offer this.

Some iPhone apps provide this for the time slider (I believe via the native media player control, although I could be wrong). It is very nice.

Re: Photon Micro GUI

#20
post #12

Funny how there are a few domains where the same problem is solved over and over again. Probably an indication that a good solution is truly missing. A long time ago I wrote a tiny audio synth. And yep, I wrote my own minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. Now I'm working on a non-audio webapp, and I have a problem where a knob would be the ide…

> minimal GUI which had stuff like sliders, and most importantly knobs which general GUIs typically don't provide. They don't provide knobs because they're a bad idea for input. Holding mousedown while drawing an invisible arc with the cursor is an awkward way to change a value. Sliders are generally better but still not great on interfaces with cursors (they're better on touchscreens). Skeuomorphism can be a useful…

That's why you don't use circular dragging for a knob, you use vertical/horizontal drags (or a combination of both, JUCE supports those for reference, I forget what it defaults to). I've only seen rotary dragging in a handful of products and it always sucks.

Arrow buttons are pointless when you're trying to dial in a value - which is the whole point of using knobs in audio software. They don't give you adjustable granularity or an easy way to continuously adjust - and if you do give it those functions, you've made a knob without the visual feedback of knob position. Or like you say, put it in the center of a ring of numbers, but again, you've just made a knob!

Post reply on HN