Commit graph

1633 commits

Author SHA1 Message Date
Leon Styhre 9e9fa58cd0 Sorted the folder link selection list. 2022-09-08 21:49:57 +02:00
Leon Styhre ed412174e3 The media viewer now always loads all images upfront. 2022-09-08 20:38:47 +02:00
Leon Styhre b3148a7f74 Added a dummy RatingComponent object to SystemView to keep the cached texture entries from expiring. 2022-09-08 18:59:33 +02:00
Leon Styhre c537de51ef Some general code cleanup. 2022-09-07 19:59:27 +02:00
Leon Styhre 5d78412b9d Fixed some pixel alignment issues for the carousel. 2022-09-05 22:39:26 +02:00
Leon Styhre ff0e76332c Added rounding to various translations like camera movements. 2022-09-05 20:13:47 +02:00
Leon Styhre d242c84ea8 Set linear interpolation for the rating component in GuiMetaDataEd and GuiScraperSearch. 2022-09-03 21:43:36 +02:00
Leon Styhre bb68e809f5 Temporarily removed greying out of the menu option 'Legacy transition style'. 2022-09-03 12:48:00 +02:00
Leon Styhre 2a83f616e6 Code cleanup of various GUIs. 2022-09-03 12:44:49 +02:00
Leon Styhre 4ade04d760 Some minor code cleanup. 2022-09-02 20:52:49 +02:00
Leon Styhre ed69e46b42 Fixed some issues where bundled SVG images would not get cached at the correct resolution. 2022-08-30 20:26:48 +02:00
Leon Styhre 077c6abf3e (Unix) Updated the .desktop file parser to handle some non-standard shortcut files. 2022-08-28 12:06:03 +02:00
Leon Styhre 33b52d61b5 If wheel (marquee) images on ScreenScraper falls back to another region, then the wheel-hd image is now used instead if that matches the set region. 2022-08-26 18:00:46 +02:00
Leon Styhre e553f68e90 Greatly improved application startup time by removing a lot of unnecessary splash screen re-rasterizations. 2022-08-23 22:34:56 +02:00
Leon Styhre ebb099de5a Fixed a crash caused by attempting to read data from a deleted object. 2022-08-21 22:56:20 +02:00
Leon Styhre ef2f3f3ba9 Fixed an issue where setting a nonexistent file for the carousel defaultItem property could lead to double gamelist carousel text fallback items. 2022-08-21 18:37:51 +02:00
Leon Styhre 7718e97d29 Renamed the functions updateInfoPanel and legacyUpdateInfoPanel to updateView and legacyUpdateView in GamelistView. 2022-08-19 17:14:20 +02:00
Leon Styhre 12f7e20c95 Fixed a crash when there are no game ROMs present. 2022-08-19 17:02:25 +02:00
Leon Styhre de5a642cf6 Added a metadataElement theme property to the image, video, animation and text element types to control fading and hiding of arbitrary elements. 2022-08-18 22:51:21 +02:00
Leon Styhre 58803fe8f7 Fixed an issue where the theme controlled opacity tag did not have any effect on rating elements. 2022-08-17 17:07:52 +02:00
Leon Styhre 93e0bfab5b Fixed an issue where text elements that had an opacity set to lower than FF via the color tag were faded in during gamelist scrolling. 2022-08-17 17:04:19 +02:00
Leon Styhre ea8aac03f0 Fixed two minor compatibility issues for legacy themes. 2022-08-16 19:12:20 +02:00
Leon Styhre 397f221cda Changed some defaults for unthemed systems. 2022-08-16 19:10:14 +02:00
Leon Styhre 0dfdf1c20c Fixed an issue where reloading using Ctrl+r would sometimes not update modified image files. 2022-08-14 21:31:59 +02:00
Leon Styhre b69706fc35 The currently loaded theme set name is now logged to to es_log.txt on startup, reload and theme change. 2022-08-14 20:24:26 +02:00
Leon Styhre ee0750d273 Added support for substituting the staticpath rule emulator binary with an explicit command. 2022-08-12 12:41:22 +02:00
Leon Styhre d128489ba8 Added a %FILENAME% variable to extract the filename including the file extension when used in es_systems.xml 2022-07-15 22:01:28 +02:00
Leon Styhre 00b6f16136 Added scraper support for the dragon32 platform. 2022-07-13 19:00:30 +02:00
Leon Styhre 749f36fdfe Added a %GAMEENTRYDIR% variable to be used with the %STARTDIR% variable. 2022-07-12 19:57:47 +02:00
Leon Styhre 7c7bae2cd9 Added support for the Adobe Flash (flash) game system. 2022-07-09 20:07:16 +02:00
Leon Styhre aa7d0d7579 Added support for the EasyRPG game engine (easyrpg) game system. 2022-07-07 18:20:58 +02:00
Leon Styhre 834f8bf1d6 Log output is now flushed before game launch. 2022-07-07 18:15:35 +02:00
Leon Styhre b149f0d054 Added support for the Fujitsu FM Towns (fmtowns) game system on Unix and Windows. 2022-07-06 20:10:28 +02:00
Leon Styhre fe30e8241b Added support for the M.U.G.E.N Game Engine (mugen) game system. 2022-07-05 17:05:34 +02:00
Leon Styhre d701f89039 Added scraper support for the megaduck and supervision systems. 2022-07-04 19:50:19 +02:00
Leon Styhre f4e3875952 (Windows) Fixed an issue where the emulator binary path would sometimes not get escaped correctly in es_log.txt on game launch.
Also fixed some other path escape inconsistencies.
2022-07-01 16:42:21 +02:00
Leon Styhre 81268fb11c (Windows) Changed many logging entries to use backslashes instead of forward slashes as directory separators. 2022-07-01 16:39:18 +02:00
Leon Styhre 55d9648795 Merge branch 'hotfix_carousel_firstgame' 2022-06-29 17:31:11 +02:00
Leon Styhre 351daf55a8 OCD update to change cURL to curl in code comments and documentation. 2022-06-29 17:22:50 +02:00
Leon Styhre 3aadc42c28 Added an es_log.txt entry when the 'Only show ROMs from gamelist.xml files' setting is enabled. 2022-06-29 17:19:28 +02:00
Leon Styhre 08d893b119 Fixed an issue where the IgnoreGamelist setting was saved although it shouldn't.
Also made a change so that passing the --ignore-gamelist command line option now immediately disables the ParseGamelistOnly setting.
2022-06-29 17:17:31 +02:00
Joseph Geumlek f7eeabeee0 Avoid nullptr if Gamelist View uses carousel. 2022-06-26 13:17:44 -07:00
Leon Styhre edc804c3b0 (macOS) Fixed an issue where launching alias files would not suspend ES-DE. 2022-06-18 16:19:47 +02:00
Leon Styhre bded2bf31f Added a ScreenScraper option to fallback to additional regions to allow scraping of country-specific games and unofficial releases. 2022-06-16 19:56:41 +02:00
Leon Styhre 4eae72621a Added TheGamesDB support for the oric and ti99 platforms. 2022-06-12 15:41:48 +02:00
Leon Styhre b982ec627a Added ScreenScraper support for the ti99 platform. 2022-06-12 15:40:05 +02:00
Leon Styhre f27de7f860 Added an es_log.txt entry if running in portable mode. 2022-06-12 10:34:17 +02:00
Leon Styhre 65c04bdadb Changed the comment (name) for the pico8 platform. 2022-06-11 19:48:40 +02:00
Leon Styhre 6b24533c0d (Windows) Added support for creating a portable installation in the root of a device, such as E: or F: 2022-06-11 18:59:40 +02:00
Leon Styhre 40bf018aaa Changed theme loading into a populateThemeSets function and created a separate getter function.
Also removed a deprecated theme check in the game directory.
2022-06-11 18:34:53 +02:00
Leon Styhre 0ef6a22248 Removed the 'Enable menu scroll indicators' menu option. 2022-06-10 19:54:29 +02:00
Leon Styhre 9480f125bb Added support for the physicalmedia image type to the image, video and carousel elements. 2022-06-07 17:32:42 +02:00
Leon Styhre 76384d1d34 Added system view support for the 'rating' text metadata type. 2022-06-06 22:44:48 +02:00
Leon Styhre 2e3ac5bf0e Fixed an issue where using a text rating without a rating element in the gamelist view would crash the application. 2022-06-06 22:28:24 +02:00
Leon Styhre 0008e44294 Removed all short enums comments as they're now properly solved by AllowShortEnumsOnASingleLine. 2022-06-05 12:36:55 +02:00
Leon Styhre eb3fb3d953 Added support for placing a noload.txt file in the root of a system/ROM directory to keep it from getting loaded. 2022-06-05 11:52:33 +02:00
Leon Styhre d508a123d2 Fixed a few logoText issues for legacy themes. 2022-06-04 17:31:51 +02:00
Leon Styhre 94a8ef8791 Fixed two issues were thumbnails and game images were not displayed for the Detailed and Video view styles respectively.
Also removed support for the thumbnail game media type and fixed an issue where the logo and logotext were displayed at the same time in the gamelist view.
2022-06-03 19:56:30 +02:00
Leon Styhre 846b0a07ef Fixed an issue with rendering elements above the carousel for legacy theme sets. 2022-06-03 19:34:39 +02:00
Leon Styhre b12d9f4692 Changed the sorting in the Alternative emulators interface to use short system names instead of full system names.
Also increased the window width slightly when displaying long system names.
2022-06-03 18:32:37 +02:00
Leon Styhre 9037f95fd3 Changed to a new API key for TheGamesDB. 2022-06-03 18:23:25 +02:00
Leon Styhre 079f1bc102 (Windows) Fixed a compiler error. 2022-05-31 23:07:24 +02:00
Leon Styhre 7fac3b4a36 Added an %ENABLESHORTCUTS% variable to support launching of .desktop files on Unix and apps and aliases on macOS. 2022-05-31 22:25:36 +02:00
Leon Styhre 765aaeb2df Changed the default quit shortcut to Alt + F4 and Command + Q.
Also renamed the setting 'Exit button combo' to 'Keyboard quit shortcut' and fixed an issue where the application sometimes quit when exiting an emulator using Alt + F4 while running in the background.
2022-05-31 22:06:47 +02:00
Leon Styhre ab1e51a77c Added TheGamesDB scraper support for the atomiswave and naomi platforms. 2022-05-23 18:50:23 +02:00
Leon Styhre 67023f428b Fixed a minor rounding issue which sometimes led to a slight positioning error for the menu scroll indicators. 2022-05-21 19:59:05 +02:00
Leon Styhre c1fe919e4d Fixed an issue with incorrect scroll indicators in the Alternative Emulators screen. 2022-05-21 19:52:05 +02:00
Leon Styhre eb47511bbc Some code cleanup in FileData.cpp 2022-05-21 14:48:29 +02:00
Leon Styhre c66d2ace27 Fixed a very rare bug where games and folders could get mixed up during gamelist.xml parsing. 2022-05-21 14:25:44 +02:00
Leon Styhre bfba994d07 Added an %INJECT% variable for injecting launch arguments from game config files. 2022-05-21 11:43:17 +02:00
Leon Styhre e8e7465935 Added a %GAMEDIR% variable that expands to the game directory.
Also fixed an issue where the %BASENAME% variable would not work with directories interpreted as files.
2022-05-19 23:36:12 +02:00
Leon Styhre d418c05614 Added scraper support for the platforms arcadia (Emerson Arcadia 2001) and crvision (VTech CreatiVision).
Also removed an unnecessary code comment.
2022-05-19 17:32:12 +02:00
Leon Styhre cc004a45f1 Renamed the --create-systemdirs command line option to --create-system-dirs 2022-05-19 17:24:12 +02:00
Leon Styhre 6a0b1bad5b Added custom event script triggers on application startup, screensaver start and screensaver end. 2022-05-18 23:56:51 +02:00
Leon Styhre 09992b5bee Clarified a code comment about directories interpreted as files. 2022-05-18 23:02:53 +02:00
Leon Styhre fdf63a9ad0 Fixed an issue where the 'quit' custom event would not trigger on application shutdown. 2022-05-18 22:57:03 +02:00
Leon Styhre 5b63ecb828 Removed the last remnants of the PowerSaver. 2022-05-18 21:08:55 +02:00
Leon Styhre 9ee56da021 Added experimental support for folder flattening. 2022-05-18 19:47:51 +02:00
Leon Styhre 43191e4005 Added a --create-systemdirs command line option to generate the game system directories. 2022-05-18 18:32:13 +02:00
Leon Styhre 41357ce7f5 Fixed an issue where the game-end event was triggered immediately if running in the background. 2022-05-16 22:34:51 +02:00
Leon Styhre 8b106c8d99 Fixed an issue where the screensaver would include all games when in Kid UI mode. 2022-05-16 19:59:34 +02:00
Leon Styhre dc601a483d Enabled screensaver controls when running in Kid UI mode. 2022-05-16 19:55:08 +02:00
Leon Styhre e9dabf7084 Fixed a compiler warning on NetBSD. 2022-05-15 18:58:39 +02:00
Leon Styhre f27ac9d26b Added a new pcwindows platform for scraping PC (Windows) games. 2022-05-14 12:02:24 +02:00
Leon Styhre b2f70971ef Changed the ScreenScraper system ID from pc to moonlight for the steam and epic systems. 2022-05-14 11:01:01 +02:00
Leon Styhre 46790fc1cb Added a new %GAMEDIR% variable to be used in conjunction with the %STARTDIR% variable. 2022-05-13 19:18:38 +02:00
Leon Styhre 7fb6734feb Added scraper support for the astrocde (Bally Astrocade) system.
Also renamed astrocade to astrocde.
2022-05-12 22:45:52 +02:00
Leon Styhre 7b07ccb44d Fixed an issue where the 'Jump to..' quick selector wouldn't work correctly for multi-byte Unicode characters. 2022-05-09 20:21:39 +02:00
Leon Styhre 0758d799ba (Windows) Added an %ESCAPESPECIALS% variable that escapes some special characters. 2022-05-08 14:25:27 +02:00
Leon Styhre 490868088d (Windows) Fixed an issue where ROM directories could not be created in the root of a device. 2022-05-07 14:11:16 +02:00
Leon Styhre f4c9586eeb Fixed multiple game launching issues. 2022-05-02 17:25:10 +02:00
Leon Styhre 93d74b840c Added a fallback to ScreenScraper's normalized video if no regular video is found. 2022-05-01 09:16:15 +02:00
Leon Styhre 6caf4d193b Added support for a %STARTDIR% es_systems.xml variable. 2022-04-30 20:43:29 +02:00
Leon Styhre b79f6588a4 Added support for using the %ROMPATH% variable in the es_systems.xml command tag. 2022-04-28 19:40:43 +02:00
Leon Styhre c63f34cdad (Linux) The 'flatpak-spawn --host' command is no longer included in the log output on game launch. 2022-04-26 21:30:36 +02:00
Leon Styhre 5d1e9cce7d Added a sandbox breakout on game launch if running as Flatpak. 2022-04-24 11:19:42 +02:00
Leon Styhre da4462c5a6 Made it possible to directly launch files inside directories that are interpreted as files. 2022-04-22 21:01:58 +02:00
Leon Styhre dbfab96e03 Added rudimentary on-demand texture loading to CarouselComponent. 2022-04-20 23:00:53 +02:00
Leon Styhre defbbfd13f Removed the setting 'Preload gamelists on startup'. 2022-04-20 22:39:27 +02:00
Leon Styhre 954f1aa4f8 Added the build date to to main menu for alpha and dev builds. 2022-04-19 17:27:04 +02:00
Leon Styhre a112fc035f Changed the variable names in CarouselComponent to use 'item' instead of 'logo'. 2022-04-17 10:40:18 +02:00
Leon Styhre f463766497 Generalized the carousel property names and added support for setting media types for gamelist carousels. 2022-04-16 21:54:58 +02:00
Leon Styhre 7daf69092f Added theme support for controlling the TextListComponent collection indicators. 2022-04-15 21:20:43 +02:00
Leon Styhre 2001a9f639 Added a collection badge to be shown when editing custom collections.
Also changed the default badge lines value from 2 to 3.
2022-04-15 19:27:38 +02:00
Leon Styhre aa4258a31a Removed the 'Use plain ASCII for special gamelist characters' menu option. 2022-04-15 17:13:51 +02:00
Leon Styhre 254e271392 Added theme support for controlling the TextListComponent indicators. 2022-04-15 17:06:33 +02:00
Leon Styhre 30b02456c0 Added a folder badge including support for a folder link overlay. 2022-04-13 16:53:28 +02:00
Leon Styhre 37e2564ff7 Fixed an issue where the slideshow screensaver with a single custom image would hang the application. 2022-04-12 20:47:25 +02:00
Leon Styhre 963834afec Renamed 'launch file' to 'folder link'. 2022-04-12 18:35:57 +02:00
Leon Styhre 4d4ceae6c9 (Windows) Fixed a MinGW compiler warning. 2022-04-12 00:18:51 +02:00
Leon Styhre 45af7441e9 Added support for launching game files inside folders without having to enter the folder. 2022-04-11 23:28:18 +02:00
Leon Styhre ea2c4444b0 Added platform and scraper support for PICO-8 game engine. 2022-04-10 12:50:03 +02:00
Leon Styhre 65c940f764 Added missing scraper entries for samcoupe and zx81 for TheGamesDB and zmachine for ScreenScraper. 2022-04-10 12:37:04 +02:00
Leon Styhre 4859f0c980 neogeocd is now scraped specifically as 'Neo Geo CD' instead of the more general 'Neo Geo'. 2022-04-10 12:13:35 +02:00
Leon Styhre b987dd9cff Fixed a row positioning issue in GuiAlternativeEmulators. 2022-04-09 20:18:53 +02:00
Leon Styhre 72ce3d33a8 Some code cleanup. 2022-04-09 16:32:47 +02:00
Leon Styhre 16955e5318 Fixed an issue where the theme sets were not always sorted correctly. 2022-04-09 15:57:37 +02:00
Leon Styhre 21f21c20f5 Added a scraper setting to convert underscores _ to spaces when searching. 2022-04-09 15:14:48 +02:00
Leon Styhre 9802538464 Changed a system loading log entry from warning to debug level. 2022-04-05 17:50:47 +02:00
Leon Styhre aed9c4abe5 Made ScreenScraper searches in automatic mode faster and more accurate. 2022-04-05 17:48:47 +02:00
Leon Styhre 90f3f6cb07 Fixed an issue where the folder metadata fields were not loaded correctly. 2022-04-05 17:21:47 +02:00
Leon Styhre f8bd60ceec Fixed an issue where the game systems were not sorted correctly. 2022-04-04 23:18:10 +02:00
Leon Styhre 4a511f3f4a Fixed an issue where the help system would not update properly during scraping. 2022-04-03 17:32:09 +02:00
Leon Styhre c70d2d6368 Added fallback for high resolution wheel image for ScreenScraper if no regular wheel image was found. 2022-04-01 18:07:21 +02:00
Leon Styhre 7e0df9063c Fixed a crash on startup if no games were found. 2022-03-28 17:47:34 +02:00
Leon Styhre b96f6bc131 Fixed an issue where a default primary component was not set in GamelistView. 2022-03-25 21:50:50 +01:00
Leon Styhre 3a1c9d41ce Fully generalized SystemView and GamelistView and rewrote CarouselComponent into a template class.
Also cleaned up some code and fixed an issue where navigation sounds would not play when using the shoulder buttons.
2022-03-24 23:05:23 +01:00
Leon Styhre 07f151d906 Moved TextListComponent and CarouselComponent from es-core to es-app. 2022-03-19 09:55:05 +01:00
Leon Styhre 6f6f388257 Added RatingComponent support to the system view. 2022-03-18 22:16:53 +01:00
Leon Styhre a115b3f941 Added alignment support and separate dimming of gamelist and system views to the help system. 2022-03-18 20:14:51 +01:00
Leon Styhre 7bdce3f4a3 Reverted the dim value for the screensaver. 2022-03-15 00:09:58 +01:00
Leon Styhre 06a037d8cf Shader flags are now sent as bit masks instead of via discreet values.
Also changed the shader flags to enums.
2022-03-14 22:30:24 +01:00
Leon Styhre f0c35d8509 Refactored the rendering code into proper classes. 2022-03-14 19:51:48 +01:00
Leon Styhre a7db474a64 Unified the OpenGL and OpenGL ES renderers and removed the fixed function pipeline.
Also made some other rendering optimizations and cleaned up some code.
2022-03-13 23:52:32 +01:00
Leon Styhre 32251e0264 Fixed multiple issues with the shader post-processing.
Also removed an unnecessary parameter for the createTexture() function.
2022-03-12 14:22:27 +01:00
Leon Styhre ac6cc41059 Added a command line option to rotate the application screen 180 degrees.
Also fixed a shader post-processing bug when rotating the application screen.
2022-03-12 00:40:03 +01:00
Leon Styhre 755b2c9f50 Changed some render variables to more verbose names.
Also fixed an issue with fade transitions for legacy themes.
2022-03-11 23:51:41 +01:00
Leon Styhre 6ffd4b1740 Multiple improvements to the fade transitions in SystemView. 2022-03-11 23:20:27 +01:00
Leon Styhre 63af859618 Modernized the OpenGL renderer and replaced most fixed function pipeline code with shaders.
Also greatly improved the shader post processing performance and added component dimming support.
2022-03-11 23:17:04 +01:00
Leon Styhre 9867c3d595 Fixed an issue where gamelist scroll fade-in animations would continue to play after opening and closing a menu. 2022-03-06 23:31:32 +01:00
Leon Styhre 9e2c24ef79 Fixed an issue where videos would still play if the video theme configuration was broken. 2022-03-06 22:52:13 +01:00
Leon Styhre 60213003b1 (Windows) Fixed some incomprehensible compiler errors. 2022-03-05 22:12:50 +01:00
Leon Styhre ecdbf6d3d5 Added GIF animation support to SystemView.
Also improved some rendering logic in SystemView.
2022-03-05 21:10:40 +01:00
Leon Styhre 46fd4ce5cc Added GIF animation support to GamelistView. 2022-03-05 21:04:22 +01:00
Leon Styhre fec860f5d3 Merge branch 'master' into new-theme-engine-phase-four 2022-02-27 16:44:59 +01:00
Leon Styhre c96ab29e95 Fixed a few GCC compiler warnings. 2022-02-27 15:23:33 +01:00
Leon Styhre 32349dc9a6 Renamed LottieComponent to LottieAnimComponent. 2022-02-23 21:54:57 +01:00
Leon Styhre a6b1a8844d Made the emulator wildcard support work on Windows. 2022-02-21 19:14:41 +01:00
Leon Styhre da802aec61 Added emulator filename wildcard support for es_systems.xml and es_find_rules.xml 2022-02-21 17:23:23 +01:00
Leon Styhre d0b773a8ce The emulator name is now displayed if it's not found during game launch. 2022-02-20 21:28:23 +01:00