Advice on GUI toolkits

Programming applications for making music on Linux.

Moderators: khz, MattKingUSA

User avatar
CrocoDuck
Established Member
Posts: 1022
Joined: Sat May 05, 2012 6:12 pm
Contact:

Advice on GUI toolkits

Postby CrocoDuck » Mon Nov 13, 2017 9:15 am

Hi there!

I realize that this is one of those awfully open questions over an entire universe... but I would like to know if any of you guys is able to point me towards something to start looking at.

I am interested in programming some C++ standalone audio program and in my mind the GUI would have this feeling:

Image

There are few more examples in this google search.

However, I would also appreciate the ability to make good scientific data visualization, as I have in mind mostly measurement programs.

I never did any GUI programming outside visual basic (more than 10 years ago) and Matlab, so I guess my questions are:

  • How reasonable is for a beginner to get to a program with the feeling above?
  • GTK, TK, QT, wxWidgets all look pretty different "out of the box" from that. Are there toolkits that can make easier to get to that result?
  • What do you think is the best thing do to for a beginner (in terms of learning, regardless of this particular GUI look 'n' feel goal)?
Last edited by CrocoDuck on Mon Nov 13, 2017 9:54 am, edited 1 time in total.
Check my Linux audio experiments on my SoundCloud.
Browse my AUR packages.
Fancying a swim in the pond?

Lyberta
Established Member
Posts: 681
Joined: Sat Nov 01, 2014 8:15 pm
Location: The Internet

Re: Advise on GUI toolkits

Postby Lyberta » Mon Nov 13, 2017 9:49 am

Qt seems to be the easiest to pick up. Qt Creator has nice WYSIWYG designer where you can draw forms.

I personally really hate programs that force their colors, it makes them unsuitable for visually impaired.

User avatar
CrocoDuck
Established Member
Posts: 1022
Joined: Sat May 05, 2012 6:12 pm
Contact:

Re: Advise on GUI toolkits

Postby CrocoDuck » Mon Nov 13, 2017 9:53 am

Lyberta wrote:it makes them unsuitable for visually impaired


Good point.
Check my Linux audio experiments on my SoundCloud.
Browse my AUR packages.
Fancying a swim in the pond?

tramp
Established Member
Posts: 1360
Joined: Mon Jul 01, 2013 8:13 am

Re: Advise on GUI toolkits

Postby tramp » Mon Nov 13, 2017 9:56 am

while you could do a UI like this with nearly any toolkit you mentioned, Nanogui comes in mind:
https://github.com/dalerank/nanogui-sdl

It's cross-platform, so learning it will give you the ability to create UI's for ALL platforms.
And there is a fork from drobilla which is based on plugl instead of sdl, which may be used, for the case, you decide to do some LV2 plugs.
https://github.com/drobilla/nanogui
For that case you may be then already on the right track, instead start new from scratch.

As you may know, I'm using gtk/mm, a UI like you show above could surly be done with gtk and some self made widgets. At least, you'll need to create your on widgets for special purpose anyway.

regards
hermann
On the road again.

tramp
Established Member
Posts: 1360
Joined: Mon Jul 01, 2013 8:13 am

Re: Advise on GUI toolkits

Postby tramp » Mon Nov 13, 2017 9:57 am

Lyberta wrote:I personally really hate programs that force their colors, it makes them unsuitable for visually impaired.


Not necessary, if you force colours you should have a lock here before:
http://dasplankton.de/ContrastA/
On the road again.

User avatar
sadko4u
Established Member
Posts: 633
Joined: Mon Sep 28, 2015 9:03 pm

Re: Advice on GUI toolkits

Postby sadko4u » Mon Nov 13, 2017 1:55 pm

NEVER GTK. I'm very-very disappointed with this toolkit.
LSP (Linux Studio Plugins) Developer and Maintainer.

User avatar
CrocoDuck
Established Member
Posts: 1022
Joined: Sat May 05, 2012 6:12 pm
Contact:

Re: Advice on GUI toolkits

Postby CrocoDuck » Mon Nov 13, 2017 4:22 pm

tramp wrote:while you could do a UI like this with nearly any toolkit you mentioned, Nanogui comes in mind:


That seems interesting, thank you! I will have a look at this.
Check my Linux audio experiments on my SoundCloud.
Browse my AUR packages.
Fancying a swim in the pond?

tramp
Established Member
Posts: 1360
Joined: Mon Jul 01, 2013 8:13 am

Re: Advice on GUI toolkits

Postby tramp » Tue Nov 14, 2017 5:30 am

sadko4u wrote:NEVER GTK. I'm very-very disappointed with this toolkit.


I wonder if you ever have developed a stand-alone GTK application.
On the road again.

Lyberta
Established Member
Posts: 681
Joined: Sat Nov 01, 2014 8:15 pm
Location: The Internet

Re: Advise on GUI toolkits

Postby Lyberta » Tue Nov 14, 2017 12:41 pm

tramp wrote:Not necessary, if you force colours you should have a lock here before:
http://dasplankton.de/ContrastA/


All I see is empty gray page.

And it's not only about color but fonts too. You should use GUI toolkit that allows to completely override colors and fonts on OS level.

tramp
Established Member
Posts: 1360
Joined: Mon Jul 01, 2013 8:13 am

Re: Advice on GUI toolkits

Postby tramp » Tue Nov 14, 2017 12:59 pm

Lyberta wrote:All I see is empty gray page.


Maybe you can get this one:
https://webaim.org/resources/contrastchecker/

Lyberta wrote:And it's not only about color but fonts too. You should use GUI toolkit that allows to completely override colors and fonts on OS level.


For the record, GTK allow this. (In guitarix all colours and fonts been set in a gtkrc file).
On the road again.

User avatar
falkTX
Established Member
Posts: 6646
Joined: Sat Jan 09, 2010 3:04 pm

Re: Advise on GUI toolkits

Postby falkTX » Tue Nov 14, 2017 10:24 pm

Lyberta wrote:
tramp wrote:Not necessary, if you force colours you should have a lock here before:
http://dasplankton.de/ContrastA/


All I see is empty gray page.

same here, seems that page requires flash.

tramp
Established Member
Posts: 1360
Joined: Mon Jul 01, 2013 8:13 am

Re: Advice on GUI toolkits

Postby tramp » Wed Nov 15, 2017 3:59 am

Yes, it requires flash.
It just does the same as the other link I gave, it just looks a little nicer :o :
https://webaim.org/resources/contrastchecker/

It check if given colours have a sufficient contrast ratio to satisfy the WCAG 2.0 (Web Content Accessibility Guidelines)
On the road again.

Lyberta
Established Member
Posts: 681
Joined: Sat Nov 01, 2014 8:15 pm
Location: The Internet

Re: Advice on GUI toolkits

Postby Lyberta » Wed Nov 15, 2017 4:11 pm

tramp wrote:Yes, it requires flash.
It just does the same as the other link I gave, it just looks a little nicer :o :
https://webaim.org/resources/contrastchecker/

It check if given colours have a sufficient contrast ratio to satisfy the WCAG 2.0 (Web Content Accessibility Guidelines)


It is still not reliable. My dad for example can't read black text on white background. I'm currently messing with Octave trying to make it readable for my dad. He currently uses MATLAB and can't read most of the UI because it is on gray background. He also can't read help because it forces white background.

Here is what I have so far:
Screenshot at 2017-11-15 19-03-50.png


This is a test VM and fonts on his PC are at least twice as big. I can't seem to force Qt to use white text on black background so this will still be unreadable for him.
You do not have the required permissions to view the files attached to this post.

folderol
Established Member
Posts: 869
Joined: Mon Sep 28, 2015 8:06 pm
Location: Here, of course!
Contact:

Re: Advice on GUI toolkits

Postby folderol » Wed Nov 15, 2017 6:20 pm

The whole issue surrounding text on monitors is much more complex that most people realise (especially UI designers).

There is a classic demo of the effect of a white disc on a black background and vice-versa. Although they are drawn the same size, the white disc always looks bigger. This is because in your eye the image 'bleeds' to neighboring receptors - some people call it 'light crushing'. It is much worse with a light source like a monitor than it is with reflected light from a sheet of paper. As you get older it also becomes more of a problem - I say that from direct experience, speaking as a man of some {cough}maturity{cough}.

When you consider text it fairly obvious that the difficulty gets more pronounced. Black on white - and bits of the text disappear and your brain struggles to work out what you are seeing. White on black - and the text looks blurred and you think you've put the wrong glasses on!

Somewhat counter-intuitively you can improve things sometimes by reducing the contrast, and generally lowering the light intensity.

Unless a person is severely colour blind, another trick is to use colour differences as much (if not more) than contrast. The eye is far better at distinguishing colour than contrast. Beware, red/green colour blindness is more common in men that in women.

tramp
Established Member
Posts: 1360
Joined: Mon Jul 01, 2013 8:13 am

Re: Advice on GUI toolkits

Postby tramp » Thu Nov 16, 2017 5:15 am

Lyberta wrote:It is still not reliable. My dad for example can't read black text on white background. I'm currently messing with Octave trying to make it readable for my dad. He currently uses MATLAB and can't read most of the UI because it is on gray background. He also can't read help because it forces white background.


I agree, that sucks. But, to be honest this is the system settings colour (Theme), not the one set by the application, which you wont to edit here.
I've no idea how to do it for Qt apps, as pointed out I'm using GTK, and for those I know it's easy to choose the colours I like in the desired config files (css or rc).

However, when you "design" a UI you cant be anyone's darling, as not only preferences differ, as well, as you point out here, people may have different stages of accessibility problems.
On the road again.


Return to “Developer's Section”

Who is online

Users browsing this forum: No registered users and 1 guest