Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Idea, just as impetus, don't worry about implementing it and feel free to close it at any moment in time] "Automatic glimmer" or "Automated glimmer" - automatically generating a GUI for commandline applications #27

Open
rubyFeedback opened this issue Aug 24, 2022 · 1 comment

Comments

@rubyFeedback
Copy link

Hey there Andy,

I am currently re-writing one of my largest gem, the one I use to compile everything from source. I use
that on linux, but I want to be able to compile on windows too via msys2 and/or cl.exe or whatever the
name of the commandline binary was from Visual Studio.

In the process I am also building a GUI in libui - right now I go the hackish approach and have not
yet added glimmer-dsl-libui. (That's kind of one reason why I would like to "combine" the DSL of
glimmer via "traditional" OOP. My hope is that I can offer both variants, the glimmer-libui variant
for more feature "goodies" and what not eventually, but in a non-exclusive manner.)

As I am writing both commandline and GUI right now, I wondered why I am actually writing or
specifying the GUI. What if the information contained via the commandline class that I use
here could be used as basis for an AUTOMATICALLY generated GUI, in glimmer? Or
glimmer-libui for that matter.

So for instance, let's take rubio radio. Say we have the:

--backend [vlc/mpv/mplayer/mpg123] # or something like that.

Ok. So ... this could be translated automatically into a combo-box, and the default
is inferred by glimmer correctly (in this case vlc).

We could apply this for ALL commandline options IF they make sense and if they
can be exposed via a GUI. I guess this is the hard part - to have glimmer try to
figure out which parts of the commandline are GUI-like. But this could be specified
in the commandline perhaps, aka attach meta-data that does not hurt if it is
specified, but could be used for an automatic glimmer GUI.

Anyway, this is just another loose, semi-random idea. While this may not be
as good as a human being fine-tuning a GUI, it could be of benefit for
those users who write predominantly linux scripts, but would like to have
a simple GUI, without wanting to write a GUI for all these .rb files. Kind
of like "write commandline, get a GUI for free" as a motto and slogan
for glimmer. I am great at coining slogans! :D

@AndyObtiva
Copy link
Owner

Before I answer your questions, I’d like to mention that you should NEVER use LibUI directly. It’s just a binding that does things the C way. Glimmer DSL for LibUI’s code is so simple it’s much simpler than using LibUI, so you should start with it right away, ALWAYS. Not as an option. As the default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants