sebescudie / GammaLauncher

A simple launcher for VVVV Gamma
GNU General Public License v3.0
48 stars 7 forks source link

Ordered by Topic #52

Open gregsn opened 1 year ago

gregsn commented 1 year ago

I tried to reorganize things so that everything is ordered by topic. If this is done with collapsable headers we can fit everything onto the first tab. We would be able to get rid of the 3rd tab and also most of the menu items, as the commands are now buttons at those places where it's about a certain topic.

Main Tab:

vvvv version [Launch] 
[ ] Start new vvvv instance
[ ] Start stopped

> Installed vvvv versions
Installations Folder 
________________________ ... [Rescan]
[Uninstall Current] 

> Packages
[ ] ________________________ ... X
[Show] [Create Empty Folder]

> Source packages
[ ] [Show] ________________________ ... X 
+

> Editable packages
[ ] ________________________ X
+

> Debugging / Advanced
[ ] Extra commandline arguments 
    ___________________________
[ ] Debuggable target code
[x] Package compiler
[x] Package compiler may cache
[x] Editor extensions

remarks: > Packages if checkbox isn't checked: Show button shows the default Appdata folder.

Create Empty Folder creates a new temp folder in AppData\Local\Temp, writes that into the textbox, and checks the checkbox. This allows you to quickly try vvvv without any cached packages.

> Source packages Use repos isn't necessary anymore as you can quickly uncheck the individual repositories.

> Editable packages Compile source packages isn't necessary anymore as you can quickly uncheck the editable packages. Often only one or two are checked - those that you currently work on.

[x] Package compiler may cache is greyed out if the [ ] Package compiler is turned off. Both boolean flags could be substituted by an enum with 3 entries, but maybe it's even more cryptic than having two checkboxes.


Meta: Do we want a new UI / Is this necessary?

I think we might gain clarity, but I also liked the launch Tab as it is now, just by the fact that I can tell a new user: Normally you just don't check anything. With my sketch above I got rid of the one or other negation meaning that also some of those checkboxes would be on by default. And ordering by topic means that sometimes you need to search a bit longer for the option to not load source packages...

Technical details: The old user settings would be lost most probably if we want to have clean code base. Can we get rid of the Tab-based organization of settings, so that after the next cleanup we can still stick with the model?

sebescudie commented 1 year ago

Hey there, thanks for these and sorry for the late reply :-)

I'm trying to figure out how this could look like and came up with this dummy patch. It's just a rough sketch that gives an idea of how this would eventually look like (wordings and all tbd). The (long) text descriptions are also there to help me reason about this, in the end they should end up in a tooltip.

A few questions though :

Let me know what you think!

Cheers

PS : change the extension of this to .vl, github goes brrrr with those LauncherProto.txt

gregsn commented 1 year ago

Hey! Thanks a lot!

Completely open in all directions. That was just my train of thought. Thanks again!

PS: I think it would be cool to also have the Nuget Package folder somewhere and show buttons for all folder related inputs opening an explorer window. In case you forgot those.