PySimpleGUI spells: "Good riddance gtkdialog"
Despite writing many a program (such as Precord) using gtkdialog (with bash), I have been advocating/searching for some other better way to write small utility/apps and yad, for example, is often too limiting. So I wrote some threads about using iup with Lua elsewhere, and that is actually pretty excellent, except the script has to be in Lua or in C language, neither of which probably appeal to most here.
Bash is well known here, but honesty, it is pretty awful as an application program language (ok so we have all become used to it and love it - but it is awful actually outside of its intended usage domain - system admin shell-scripting...).
For user-friendly GUI utility apps what would be really good would be to use Python, since most all distros come with Python installed out-of-the-box, or should. Anyway, all the distros I use do have Python installed since I rely on cherrytree notepad, which is written in Python (ver 3.xx nowadays). But what GUI framework to use???
PySimpleGUI
Python GUI For Humans - Transforms tkinter, Qt, Remi, WxPython into portable people-friendly Pythonic interfaces
Actually, it has been around for a few years now and remains actively developed with many contributors so no need to struggle with pretty much unsupported gtkdialog...
Okay so at last here is a really simply GUI framework that as far as I can see is really simply to code with and is actually multi-GUI-framework capable, the typical tkinter, but also PyQt5 (subset) and others can be used with it. Wow... Okay so you need to learn the basics of Python - but plenty of simple basic Python tutorials out there to get started. Indeed my 9 year old kid is learning Python the past few days (comes from 'Scratch' programming background) and has already mastered most basic syntax including loops and selections and functions - enough to get on with the following:
https://pysimplegui.readthedocs.io/en/l ... ers-manual
https://pysimplegui.readthedocs.io/en/l ... g-the-gist
Wow, isn't that simple!!! So let's move on from old gtkdialog, it has had its day - For a start I may even recode old Precord via PySimpleGUI now... and cross-platform of course (since Python...).
https://pysimplegui.readthedocs.io/en/latest/cookbook/
For WDL_Arch64 you can find PySimpleGUI in the AUR:PySimpleGUI is different than most projects on GitHub. It is licensed using the "Open Source License" LGPL3. However, the coding and development of the project is not "open source".
https://aur.archlinux.org/packages/python-pysimplegui/
And for the Raspberry Pi enthusiasts:
Because PySimpleGUI is compatible back to Python 3.4, it is capable of creating a GUI for your Raspberry Pi projects. It works particularly well when paired with a touchscreen. You can also use PySimpleGUIWeb to control your Pi if it doesn't have a monitor attached.
Furthermore, it is perfect for the sort of things Puppy crowd use gtkdialog for - frontend GUI for commandline programs:
The "GUI Gap" mentioned earlier can be easily solved using PySimpleGUI. You don't even need to have the source code to the program you wish to add a GUI onto. A "front-end" GUI is one that collects information that is then passed to a command-line application.
Front-end GUIs are a fantastic way for a programmer to distribute an application that users were reluctant to use previously because they didn't feel comfortable using a command-line interface. These GUIs are your only choice for command-line programs that you don't have access to the source code for.
This example is a front-end for a program called "Jump Cutter". The parameters are collected via the GUI, a command-line is constructed using those parameters, and then the command is executed with the output from the command-line program being routed to the GUI interface. In this example, you can see in yellow the command that was executed.
Looking forward to the Brave New World where we guys stop wasting our hundreds of hours on bash/gtkdialog/yad... And its but a small step to move on even from PySimpleGUI into more sophisticated PyQt5, WXpython or Tkinter programming later... in fact I think you can create and use functions written that way via PySimpleGUI but I have only just started looking at it so not sure about that yet.
NOTE: Also came across an online programming environment called "Trinket" that I believe you can practice with:
https://pysimplegui.trinket.io/demo-pro ... ui-program
But I found Trinket 'run' a bit slow (and result GUI tiny even if you use Trinket Menu to increase its fonts - alas doesn't effect GUI size...). So best just install PySimpleGUI along with Python and so on on your local system I feel.
LICENSE NOTE:
PySimpleGUI is different than most projects on GitHub. It is licensed using the "Open Source License" LGPL3. However, the coding and development of the project is not "open source".
Well, that's a pity really. But seems to be "open source" really anyway, so I don't quite understand the license qualification as yet: https://github.com/PySimpleGUI/PySimpleGUI On further checking, I think the author just means he does not accept pull requests to his own developments (which is fine) - the code is however open source and you can make forks of it from Github if you wish.