jamulussoftware / jamulussoftware/jamulus
Adding global messagebox and commandline parameter parsing classes.
- Dominant language
- C
- Stars
- 1.1k
- Forks
- 248
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 9
Description
**What is the current behaviour and why should it be changed?**
Currently messageboxes for errors, warnings and info are created all over the code. Disadvantage is that they don't have a parent dialog and are inconsistent in message title.
Also commandline parameters are now parsed by several functions in main and passed via-via through several constructor parameters. A class accessible anywhere in the code would be more efficient and more versatile.
**Describe possible approaches**
All this is in preparation of the "sound-redesign"
A static messagebox class will provide messageboxes that can be opened anywhere in the code, but are always child of CClientdlg and will have a consistant title (including any clientname).
The commandline parsing functions in main will be moved to a (static) class that is accessible anywhere in the code so commandline parameters can be retrieved anywhere in the code, no need to pass then via-via through constructors.
Also we will be able to use "special" commandline parameters (normally rejected) for debugging and testing purposes.
**Has this feature been discussed and generally agreed?**
The commandline parsing class was already suggested in the comments in the code.
Contributor guide
Research direction
Start by reading the command-line parsing functions in main and the existing messagebox uses around CClientdlg, including the comments that suggested a parsing class. Done means messageboxes consistently use CClientdlg as their parent and title, while command-line parameters can be retrieved throughout the code, including special parameters for debugging and testing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- cli, desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100