- Add and use new icons
- Make some labels more explicit
- Properly document copyright of both the new icons, and the icons used to make them
- Note that the Cartoon icons fall under the same copyright as all other Cartoon icons, so no licenses.txt update is needed
In UX, back/cancel/etc buttons usually go on the left, while forward/confirm/etc go on the right. (Note that even the icon for "Back" is a leftwards-pointing arrow.) STK put the Back arrow button on general screens in the upper left corner, but before this commit, put back/cancel/etc on the right in dialogs and such. This commit fixes things to be in line with standard UX conventions, and also in line with the pre-existing upper-left corner Back button placement on screens in STK.
https://ux.stackexchange.com/a/63239
Fixes most of the occurrences of these warnings in the terminal/log:
[warn ] LayoutManager: Statically sized widgets took all the place!!
Removing these spacers did not make a difference in actual layout/spacing according to my testing.
`text_align="top"` isn't even valid, `top` is only valid for `text_valign`. Not sure how this got messed up in the first place, but this finally fixes it.
* Add more functionality to the debug menu
Includes:
* Front of kart view
* Inverse side of kart view
* Change to kart #9 or #10
* Attachments for AI karts
* Fix enumeration value not handled in switch for debug camera
* More enhancements to the debug menu, part 2
Includes:
* Restore access to the anchor/anvil powerup
* Clear the current powerup or attachment
* Change to kart #11 or #12
* Flatten karts as if they were hit by a swatter
* Block most of the view with plungers
* Enable executing some keypress actions from the debug menu in a new sub-menu
Includes:
* Rescuing karts from menu
* Pausing the game from menu (but keypresses will cause the game to crash)
* Moved "To next kart" menu entry to be right below "To previous kart" for easier reach
* Change print kart positions to info level, better labeling of side kart views
* Prevent crashes when trying to use 'Behind wheel view' on a ghost kart
* Add close button to the debug slider dialog, and a function to enable/disable spinners
* Make it easier to read and select kart camera targets from the debug menu
* Add another dialog (reusing the debug slider code) to allow the user to select
from a slider the kart number to change to
* The 11th and 12th target slots have been removed to make the submenu cleaner,
but the 9th and 10th slots have been left in place
* The predefined slots (1st place to 10th place) actually use numbers
* Improve the appearance of the FPS (frames per second) counter
* Shift the position closer to the center, so that in-race kart icons are not obscured
* The box and text position adapt based on the screen resolution
* Use a thin black border for the font, and make the font white-colored
* Decrease the font scaling to 0.7, so that other UI elements can be seen more easily
* Improve debug keyboard shortcuts handling, rearrange some shortcuts
Most shortcuts are now handled by Debug instead of InputManager directly
Other changes include:
* Fix moving right in 1st-person view not working
* Change the 1st-person view shortcuts to work more like in Blender
* Add more keyboard shortcuts for quickly seeing the top and sides of a kart
* The key to show player list in soccer mode no longer needs to be held down
* Rearrange some shortcuts to flow more naturally
New list of debug keyboard shortcuts:
* F1 - Normal view
* F2 - Top view
* F3 - Right side of kart view
* F4 - Left side of kart view
* F5 - 1st-person view
* F6 - Reload SP textures
* F7 - Next kart
* F8 - Previous kart
* F9 - Show player list in soccer mode
* Q - Move 1st-person view camera down
* E - Move 1st-person view camera up
* R - Rotate 1st-person view camera right
* F - Rotate 1st-person view camera left
* Exit demo mode when there also are no dialogs active; fixes related crashes
* Improve the debug menu, various fixes to some menu items, and mouse-accessible actions
Includes:
* Debug menu opens at the cursor position, but not at off-screen places
* Ensure that the debug menu stays (almost) within the actual window
* Middle mouse button can also be used to access the debug menu
* Move all items into submenus, rearrange most submenus to keep a compact size
* Add ability to set powerup and nitro amount by debug slider dialog
* Label the some commands with the new keyboard shortcuts
* Screenshots can now be saved via the debug menu
* Texture reloading can now be done via the debug menu
* Add more debug shortcut keys, change many of the existing ones
The full shortcuts list will be explained later
Includes:
* Use Control and Shift keys to fit more shortcuts onto fewer keys
* Label the debug menu items with the keys that can be used to activate them
* Fix more debug menu items causing game crashes in certain situations
* Add help message dialog to tell users the list of static/debug shortcuts; incomplete
* Slightly alter the free margins that the debug menu can appear in
* Render target textures (RTT) can now be dumped via the debug menu
* Replace the 10th kart camera target with the last kart camera target
* Switch the shortcuts used for activating history save and manual replay saving
* Finish labelling the remaining debug actions, complete the debug keys help dialog
Unfortunately, the now unused tutorial message dialog has been repurposed for this use,
and the font sizes greater than 'Large' will cause some text to draw outside the dialog
* Document the remaining command-line parameters, clean up some of them
This adds another method that will print out the previously undocumented debug options
Rename --gamepad-visuali[s,z]ation to --gamepad-visuals
Also fix some comments related to the user config, including the game mode numbers
* The AI cannot handle the anvil powerup anymore, but it won't spam logs anymore
* Add in-game high score selection screens, based on the ghost replay screens
Its functionality is basic for now, mainly to let players have a central place to view
their high scores
Other things to improve:
* Allow sorting the high score entries by criteria
* Allow deleting high score nodes and possibly entries
* Use better icons
* The string for the high scores title in the track info screen can now be translated
* Refine in-game high score selection screens
Includes:
* High score info dialog now shows track and setup information
* A race can be started with the displayed setup, using the current player and kart
* Icon to access the screen now placed between the tutorial and achievements buttons
* It is possible to delete a specific high score group or all of the high score groups
* Change the order of some columns to make them easier to hide for non-linear modes
* The list will now filter out enpty high score groups
* Replace bomb icon (as used in the help menu) with the full object version from STK 0.8
It has been edited to remove most of the transparency in the object itself
* Implement column clicking in the high score selection screen, and minor GUI fixes
Note that high score entry sorting is not yet working properly
Includes:
* Top right buttons replaced by button bar containing them; fixes unreliable clicking
* High score manager has some one-line functions moved into its header file
* High scores can be sorted by some criteria
* Sorting is done before every time high scores are saved
* Fix header define names for the high score info dialog
* Fix high score sorting, reorganize its associated code
* More refinements to the high score selection screen
Includes:
* Clearing high scores no longer causes memory leaks
* The manual refresh button has been removed, as it has been deemed useless
* Remove unused header files for the high scores information dialog header
* The high scores box in the track information screen no longer has '='
* Fix pressing escape key in the high score information dialog crashing the game
Also remove unused widget variables and unnecessary function overrides
* Do not write high scores for races that have 0 laps and/or have no real karts
* Allow passing a parameter to prevent high scores from temporarily being written
This setting lasts only as long as the game runs; it is useful during track and
kart animation testing, where unwanted high score entries should not be written
* Force update sources.cmake, as new source files are being added for high scores screens
* Fix memory leak and strings
Co-authored-by: Benau <Benau@users.noreply.github.com>