Commit graph

48 commits

Author SHA1 Message Date
Leon Styhre eb3729a5fb Fixed a few crashes related to GameSelectorComponent. 2022-02-13 23:15:43 +01:00
Leon Styhre d414c3b845 Removed some unnecessary functions in SystemData. 2022-01-30 21:53:22 +01:00
Leon Styhre 87ace0b8cb Changed some shared_ptr return values to use values instead of references. 2022-01-04 22:36:15 +01:00
Leon Styhre 7c07c0d5cf Added a 'winregistryvalue' find rule and a %RUNINBACKGROUND% variable. 2021-11-22 20:03:05 +01:00
Leon Styhre 3e12fcb420 General refactoring and minor optimizations throughout the codebase. 2021-11-09 22:40:08 +01:00
Leon Styhre 966d2616be Added support for defining custom system sorting using the <systemsortname> tag. 2021-09-25 11:02:27 +02:00
Leon Styhre 0c3a7d7d94 Alternative emulators now work correctly when games are launched from collection systems. 2021-09-23 17:07:27 +02:00
Leon Styhre fad326c3bd Miscellaneous code cleanup. 2021-09-19 19:46:59 +02:00
Leon Styhre 0b6d987263 Fixed lots of compiler warnings reported by the -Wall and -Wpedantic flags. 2021-09-18 09:53:26 +02:00
Leon Styhre 8a51919f31 Added the ability to make complementary game systems customizations. 2021-09-05 17:39:11 +02:00
Leon Styhre 5942b2815e Added support for selecting alternative emulators per game.
Also made some changes to the system-wide alternative emulators logic.
2021-09-04 11:21:55 +02:00
Leon Styhre 5381f38231 Added support for defining and choosing between alternative emulators. 2021-08-22 15:26:38 +02:00
Leon Styhre af5e32e121 Formatted the es-app source tree using clang-format. 2021-07-07 20:03:42 +02:00
Leon Styhre 4160732ab0 (Windows) Added a find rule to search the Windows Registry for the emulator. 2021-06-26 12:00:09 +02:00
Leon Styhre 183cdddfa0 Implemented a new mechanism for finding emulators and cores. 2021-06-19 14:09:14 +02:00
Leon Styhre fa624f9f2c Changed the logic for the systems configuration file, it now loads from the resources directory.
Also renamed the file from es_systems.cfg to es_systems.xml
2021-06-16 18:54:04 +02:00
Leon Styhre 90e3fe0fac Fixed a memory leak related to the gamelist placeholders. 2021-03-19 18:47:49 +01:00
Leon Styhre 2432e118a7 Added the ability to automatically generate the game systems directory structure. 2021-03-10 18:21:49 +01:00
Leon Styhre 1a6bec2e3b Overhaul of settings code. 2020-11-05 18:18:11 +01:00
Leon Styhre 07efcd19d0 Simplified the detection of grouped custom collections. 2020-10-30 10:12:15 +01:00
Leon Styhre 1a0b2f8bb7 Multiple improvements to the handling of custom collections.
Also improved the random game and random system functions.
2020-10-21 21:56:31 +02:00
Leon Styhre 707850b339 Added a system sorting function to SystemData. 2020-09-26 13:03:14 +02:00
Leon Styhre 8db04c5fcb Added SPDX license identifiers to all source files. 2020-09-21 19:17:34 +02:00
Leon Styhre 1c831249da Moved game counting to the sort function and improved the custom collection handling. 2020-09-21 18:13:27 +02:00
Leon Styhre ea59d9f9c4 Fixed multiple issues with random selection of systems and games. 2020-07-28 15:19:54 +02:00
Leon Styhre 40be69cd64 Deletion of a game now removes its media files and its entry in the gamelist.xml file. 2020-07-13 20:13:48 +02:00
Leon Styhre 31da561695 Complete UTF-16 (Unicode) support added for Windows.
ROM names with Unicode characters are supported, as well as running ES from a directory that has Unicode characters in its name.
2020-07-10 18:32:23 +02:00
Leon Styhre adb5cb6664 Made the es_systems.cfg template install to the home directory during the first application startup. 2020-07-09 19:26:48 +02:00
Leon Styhre 672026632d Code cleanup and code documentation 2020-06-22 17:27:53 +02:00
Leon Styhre ac91da6995 Removed unnecessary processing steps during startup by skipping systems with no games.
This seems to decrease the (non-optimized) loading time by about 6,5% with a large es_systems.cfg configuration file.
2020-06-21 22:11:29 +02:00
Leon Styhre 67aa6b3dbd Huge code cleanup and code documentation update.
Includes lots of conversions from tabs to spaces. Only cosmetic code changes in this commit.
2020-06-21 14:25:28 +02:00
Leon Styhre 90735d44e3 Major update to scraper including support for new media handling logic, ability to download more media file types (screenshot, cover, marquee, 3D box) and an improved scraper GUI. As well a rewrite of the navigation sound code. 2020-06-06 13:10:33 +02:00
Leon Styhre f2f7d34bb6 Monster commit. Rewrote gamelist sorting logic and made per-gamelist sort settings session-permanent. Cleaned up a lot of code and started to reformat for 100 characters line length. 2020-05-24 10:29:29 +02:00
Jools Wills 46047894f3
Merge pull request #578 from verybadsoldier/feature/save_metadata_on_change
Added an option to save meta data instantly when changed.
2019-12-18 04:06:23 +00:00
verybadsoldier a136179fc9 save also metadata that have default values. they might not had default values on start so they have to be saved 2019-12-13 21:38:01 +01:00
Tomas Jakobsson 9de16045c9 whitespace cleanup
fix faulty line endings
silence warnings on windows
2019-08-25 17:23:02 +02:00
pjft c80d30493b Fix empty collections not showing up in Carousel for Full mode
Also fixed empty favorites collection in Kiosk mode not initializing as intended after adding the first game, if empty at start.
2018-03-02 11:56:14 +00:00
Tomas Jakobsson 9fbe95daa3 iterator -> const_iterator 2017-11-12 00:05:19 +01:00
Tomas Jakobsson 92a3286fc8 Add SystemData::indexAllGameFilters that loops through all added games and add's their tags to the filter indexes
This fixes the hidden filtering in Kiosk mode when not using gamelist.xml
2017-11-04 17:32:22 +01:00
D. Polders 189eb05fee * Introduce KidMode: Prevent collection editing
* Introduce FileData Filtering for Kiosk and  Kid Modes to:
1. In Kiosk mode: Hide items with metadata tag `<hidden>true</hidden>`
2. In Kid mode: only show items with metadata tag `<kidgame>true</kidgame>`
* ES will auto-revert UI mode back to Full  when there is nothing at all to show.
* Changing the setting hideQuitMenuOnKidUI to true will hide this menu.
2017-11-02 21:22:41 +01:00
Tomas Jakobsson a8fc560749 Header inclusion cleanup 2017-11-02 19:16:01 +01:00
Tomas Jakobsson 44e3e39083 Add pragma once and ifndef header guards to all headers 2017-10-31 18:12:50 +01:00
pjft d0cdbf2159 Adding support for Virtual Systems
- Refactoring System Environment data
- Added Virtual System Manager class
- Added "all", "favorites" and "last played" systems
- Added GuiInfoPopup class for notifications
- Added Favorites to metadata, as well as a shortcut to toggle favorites
- Added warning if enabling systems but themes don't support it
- Added "filter by favorites" per system
- Adjusted "Go to Random Game" behavior to account for the fact that we now have an "All Games" system
- Added "sort by system name" for the collections
2017-07-07 20:16:21 +01:00
pjft 80526c777e Fixing whitespaces and indentation (tabs) 2017-05-18 12:51:45 +01:00
pjft 7f84eeea94 Adding generic gamelist filter funcionality for ES, specifically genre, players, ratings and publisher/developer 2017-04-28 12:05:20 +01:00
Jools Wills 1becb41508 Revert "Add direct launch option for systems that don't need a game list" 2016-03-29 05:03:39 +01:00
taalas 5be78e9c53 add direct launch tag and corresponding data structures 2015-06-07 18:56:02 +02:00
Aloshi bc72990f39 Changed 'emulationstation' folder to 'es-app' because I forgot executables don't have extensions on Linux
Half of the ES code has been missing for 5 days because I am incompetent
2014-06-25 12:02:36 -05:00